How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Siro Core API

The Core API from Siro — 23 operation(s) for core.

Siro Core API is one of 16 APIs that Siro publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Core. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, a getting-started guide, an API reference, authentication docs, and rate-limit docs.

This API exposes 138 operations across 95 paths, and defines 2 schemas. It is described by OpenAPI 3.2.0, at version 1.0.0.

Requests are made against 2 base URLs: https://functions.siro.ai/api-externalApi, https://api.siro.ai/.

138 operations 95 paths 2 schemas 12 DELETE66 GET18 PATCH32 POST10 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.0.0
Base URL
https://functions.siro.ai/api-externalApi
Authentication
HTTP Bearer, API Key
Resource Areas
1

Authentication & Security 2

Siro Core API declares 2 security schemes for authenticating requests. It accepts HTTP bearer tokens (Organization API token) (bearerAuth). An API key is passed in the header as x-siro-auth-token (SiroAuthToken).

  • bearerAuth — Organization integration token from Siro admin (Person icon → API Tokens). Send Authorization: Bearer . This is not the OAuth access token used with api.siro.a…
  • SiroAuthToken — OAuth access token for user-scoped requests (Authorization Code or machine-to-machine). Send header x-siro-auth-token: . Not an organization API key.

Paths & Operations 138

Across 95 paths, the API surfaces 138 operations — 12 DELETE, 66 GET, 18 PATCH, 32 POST, 10 PUT. Each is listed below with its method, path, parameters, and response codes.

Core 138
GET
/v1/core/recordings/{id}
Get recording
6 params → 200
DELETE
/v1/core/recordings/{id}
Soft-delete a recording
1 param → 200400401403404422500
GET
/v1/core/recordings
Get recordings
16 params → 200
PUT
/v1/core/recordings
Create a new recording
body → 201400401403404422500
PATCH
/v1/core/recordings
Update a recording
body → 200400401403404422500
POST
/v1/core/recordings
Fetch a list of recordings by id
body → 200400401403404422500
GET
/v1/core/recordings/{id}/summaries
Get recording summaries
1 param → 200
GET
/v1/core/users
Get users
3 params → 200
POST
/v1/core/users
Create user
body → 200
GET
/v1/core/users/{id}
Get user
1 param → 200
PUT
/v1/core/users/{id}
Update user
1 param body → 200
GET
/v1/core/mobile-events
Get mobile events for an org
8 params → 200
GET
/v1/core/mobile-events/{id}
Get mobile event by ID
1 param → 200
GET
/v1/core/auth/caller-identity
Get details about your current auth token
→ 200
GET
/v1/core/auth/tokens/{id}
Get a single authentication token by ID
1 param → 200
DELETE
/v1/core/auth/tokens/{id}
Delete a single authentication token by ID
1 param → 200
GET
/v1/core/auth/tokens
List all tokens for a given org.
→ 200
POST
/v1/core/auth/tokens
Create a new authentication token for an organization.
body → 200
GET
/v1/core/oauth/apps/{clientId}
Get a specific OAuth app
1 param → 200400401403404422500
DELETE
/v1/core/oauth/apps/{clientId}
Delete an OAuth application by id.
1 param → 200
GET
/v1/core/oauth/apps
Get all OAuth apps for an organization
9 params → 200400401403404422500
POST
/v1/core/oauth/apps
Create a new OAuth application for an organization
body → 201
GET
/v1/core/oauth/apps/{clientId}/access-token/{tokenId}
Get a specific OAuth access token by id.
2 params → 200400401403404422500
DELETE
/v1/core/oauth/apps/{clientId}/access-token/{tokenId}
Revoke an OAuth access token for a given OAuth app.
2 params body → 200
POST
/v1/core/oauth/apps/{clientId}/access-token
Create a new OAuth access token for a given OAuth app.
1 param body → 201
GET
/v1/core/oauth/apps/{clientId}/access-token
Get all OAuth access tokens for a given OAuth app.
9 params → 200400401403404422500
GET
/v1/core/organizations
Get organizations
→ 200
POST
/v1/core/organizations
Create an organization
body → 200
GET
/v1/core/organizations/{id}
Get an organization
1 param → 200
PATCH
/v1/core/organizations/{id}
Update an organization
1 param body → 200
GET
/v1/core/integrations/connections
Get all integration connections for a single org
1 param → 200
POST
/v1/core/integrations/connections
Create a new integration connection for a given org
body → 201400409
GET
/v1/core/integrations/connections/{id}
Get a single integration connection within a single org
1 param → 200404
PATCH
/v1/core/integrations/connections/{id}
Update a single integration connection within a given org
1 param body → 200404
DELETE
/v1/core/integrations/connections/{id}
Delete a single integration connection within a single org
1 param → 200404
PUT
/v1/core/integrations/salesforce
Upsert Salesforce integration authentication details
body → 200
GET
/v1/core/organizations/{orgId}/teams
Get all teams for an org
3 params → 200
POST
/v1/core/organizations/{orgId}/teams
Create a new team for an org
1 param body → 201
GET
/v1/core/organizations/{orgId}/teams/{teamId}
Get a single team within a given org
2 params → 200404
PATCH
/v1/core/organizations/{orgId}/teams/{teamId}
Update a single team within a single org
2 params body → 200404
DELETE
/v1/core/organizations/{orgId}/teams/{teamId}
Hard-delete a single team within a single org
2 params → 200404
PUT
/v1/core/recordings/{id}/viewed
Mark a recording as viewed
1 param → 200400401403404422500
POST
/v1/core/recordings/{id}/views
Report a recording view duration
1 param body → 200400401403404422500
PUT
/v1/core/recordings/{id}/listen
Report recording listening time
1 param body → 200400401403404422500
GET
/v1/core/recordings/{id}/utterances
Get recording utterances
3 params → 200400401403404422500
POST
/v1/core/recordings/{id}/chats
Ask Siro GPT about a recording
1 param body → 200400401403404422429500
GET
/v1/core/recordings/{id}/chats/available
Check recording chat availability
1 param → 200400401403404422500
GET
/v1/core/recordings/{id}/deep-link/{tenant}
Get deep link for recording
5 params → 200400401403404422500
POST
/v1/core/recordings/search
Search recordings
body → 200400401403404422500
PATCH
/v1/core/recordings/{id}/transcription-language
Update the transcription language for a recording
1 param body → 200400401403404422500
POST
/v1/core/recordings/{id}/signedUrl
Create signed URL for redacted recording audio (download)
1 param → 200400401403404422500
GET
/v1/core/recordings/{id}/summary
Get the summary for the recording provided.
1 param → 200400401403404422500
PUT
/v1/core/recordings/{id}/link
Create or replace the CRM link on a recording
1 param body → 200
DELETE
/v1/core/recordings/{id}/link
Remove the CRM link from a recording
1 param body → 200
GET
/v1/core/folders
Get all folders for a user
1 param → 200400401403404422500
POST
/v1/core/folders
Create a new folder
body → 200400401403404422500
DELETE
/v1/core/folders
Delete a folder
body → 200400401403404422500
GET
/v1/core/folders/{id}/items
Get folder items
2 params → 200400401403404422500
POST
/v1/core/folders/{id}/items
Add item to folder
1 param body → 200400401403404422500
DELETE
/v1/core/folders/{id}/items
Delete folder item
1 param body → 200400401403404422500
PATCH
/v1/core/folders/{id}
Update a folder
1 param body → 200400401403404422500
GET
/v1/core/comments
Get all comments the user is a recipient on
10 params → 200400401403404422500
POST
/v1/core/recordings/{id}/comments
Create a new comment for a recording
1 param body → 201400401403404422500
GET
/v1/core/recordings/{id}/comments
Get all comments for a recording
4 params → 200400401403404422500
GET
/v1/core/recordings/{id}/threads
Get all threads for a recording
1 param → 200400401403404422500
GET
/v1/core/threads
Get all threads for a user
10 params → 200400401403404422500
GET
/v1/core/threads/unread
Get all unread threads for a user
5 params → 200400401403404422500
GET
/v1/core/recordings/{id}/comments/{commentId}
Get a single comment
2 params → 200400401403404422500
PATCH
/v1/core/recordings/{id}/comments/{commentId}
Update a comment
2 params body → 200400401403404422500
DELETE
/v1/core/recordings/{id}/comments/{commentId}
Delete a comment
2 params → 200400401403404422500
POST
/v1/core/recordings/{id}/comments/{commentId}/rating
Rate a Siro bot comment (thumbs up / thumbs down)
2 params body → 200400401403404422500
PATCH
/v1/core/recordings/{recording_id}/threads/{thread_id}
Update thread privacy
2 params body → 200400401403404422500
POST
/v1/core/conversation-configurations
Create a new conversation configuration
body → 200400401403404422500
GET
/v1/core/conversation-configurations
Get conversation configurations
1 param → 200400401403404422500
PATCH
/v1/core/conversation-configurations/{id}
Update conversation configuration
1 param body → 200400401403404422500
GET
/v1/core/summary-prompts/industry
Get summary prompts for the caller organization industries
→ 200400401403404422500
GET
/v1/core/conversation-configurations/{conversationTypeId}/summary-prompts
Get summary prompts for a conversation configuration
1 param → 200400401403404422500
POST
/v1/core/conversation-configurations/{conversationTypeId}/summary-prompts
Create summary prompts for a conversation configuration
1 param body → 200400401403404422500
PUT
/v1/core/conversation-configurations/{conversationTypeId}/summary-prompts
Replace summary prompts for a conversation configuration
1 param body → 200400401403404422500
GET
/v1/core/teams/{teamId}/team-code-link
Get team code link
1 param → 200400401403404422500
GET
/v1/core/bookmark-configs
Get bookmark configurations
1 param → 200400401403404422500
GET
/v1/core/bookmark-groups
Get bookmark groups
1 param → 200400401403404422500
GET
/v1/core/bookmark-models
Get bookmark models
1 param → 200400401403404422500
POST
/v1/core/bookmark-models
Create a bookmark model
body → 200400401403404422500
PATCH
/v1/core/bookmark-models/{modelId}
Update a bookmark model
1 param body → 200400401403404422500
GET
/v1/core/manual-labels
Get manual labels
2 params → 200400401403404422500
POST
/v1/core/manual-labels
Create a manual label
body → 200400401403404422500
DELETE
/v1/core/manual-labels/{manualLabelId}
Delete a manual label
3 params → 200400401403404422500
PATCH
/v1/core/manual-labels/{manualLabelId}/toggle
Toggle a manual label
1 param body → 200400401403404422500
GET
/v1/core/bookmark-configs/{bookmarkConfigId}/labeled-recordings
Get labeled recordings for a bookmark config
1 param → 200400401403404422500
GET
/v1/core/organizations/{id}/users
Get all users for an organization
1 param → 200400401403404422500
GET
/v1/core/entities/extractions/{recordingId}
Get entity extractions for a recording
1 param → 200400401403404422500
GET
/v1/core/scorecards/scorecard-metrics/values
Get scorecard metrics values
7 params → 200400401403404422500
GET
/v1/core/scorecards/users/{userId}/weighted-score-history
Get weighted scorecard score history
4 params → 200400401403404422500
GET
/v1/core/scorecards/teams/{teamId}/weighted-score-history
Get weighted scorecard score history for a team
4 params → 200400401403404422500
GET
/v1/core/scorecards/scorecard-metrics/available
Get available scorecard metrics
4 params → 200400401403404422500
GET
/v1/core/scorecards/scorecard-metrics/{id}
Get scorecard metric configuration data
1 param → 200400401403404422500
PATCH
/v1/core/scorecards/scorecard-metrics/{id}
Update scorecard metric prompt
1 param body → 200400401403404422500
DELETE
/v1/core/scorecards/scorecard-metrics/{id}
Delete scorecard metric
1 param → 200400401403404422500
PUT
/v1/core/scorecards/scorecard-metrics
Create scorecard metric
body → 200400401403404422500
PUT
/v1/core/scorecards/instances
Create scorecard instance
body → 200400401403404422500
GET
/v1/core/scorecards/instances
Get scorecard instances
3 params → 200400401403404422500
PATCH
/v1/core/scorecards/instances/{id}
Update scorecard instance
1 param body → 200400401403404422500
GET
/v1/core/scorecards/instances/{id}
Get scorecard instances
1 param → 200400401403404422500
GET
/v1/core/scorecards/color-configurations
Get active scorecard color configurations
1 param → 200400401403404422500
GET
/v1/core/scorecards/instance-summaries
Get scorecard instance summaries
4 params → 200400401403404422500
GET
/v1/core/scorecards/evaluated-instances/{id}
Get evaluated scorecard instance
6 params → 200400401403404422500
GET
/v1/core/scorecards/evaluated-instances/{id}/populations
Get evaluated scorecard instance for multiple populations
6 params → 200400401403404422500
GET
/v1/core/scorecards/standardized-prompts
Get scorecard standardized prompts
1 param → 200400401403404422500
GET
/v1/core/followups
Get followups
14 params → 200400401403404422500
PATCH
/v1/core/followups/{id}
Update a followup
1 param body → 200400401403404422500
POST
/v1/core/sdk-logging/siro-logs
Submit SDK Siro log
body → 201400401403404422500
GET
/v1/core/companion-call/settings
Get companion call settings
→ 200
PUT
/v1/core/companion-call/settings
Update companion call settings
body → 200
GET
/v1/core/halftime/recordings/{recordingId}/transcript
Poll live halftime transcript
2 params → 200400401403404422500
GET
/v1/core/outcomes/outcome-definitions
Get outcome definitions for a user
1 param → 200400401403404422500
GET
/v1/core/outcomes/outcome-definitions/{conversationConfigId}
Get outcome definitions for conversation type
1 param → 200400401403404422500
POST
/v1/core/outcomes/outcome-definitions/{conversationConfigId}
Create or update outcome definition
1 param body → 200400401403404422500
POST
/v1/core/outcomes/set-multiple/{conversationConfigId}
Set multiple outcomes
1 param body → 200400401403404422500
GET
/v1/core/recordings/{recordingId}/outcomes
Get a recording’s possible and selected outcomes
1 param → 200400401403404422500
PATCH
/v1/core/recordings/{recordingId}/outcomes
Edit a recording’s selected outcomes
1 param body → 200400401403404422500
POST
/v2/core/recordings/search
Search recordings
body → 200400401403404422500
POST
/v2/core/recordings/search/slim
Search recordings (slim)
body → 200400401403404422500
POST
/v2/core/recordings/list-decorations
Batch list decorations
body → 200400401403404422500
POST
/v2/core/recordings/{id}/signed-url
Create a signed URL for a recording
1 param → 200400401403404422500
POST
/v2/core/recordings/users/{userId}/list
List recordings for a user
1 param body → 200400401403404422500
GET
/v2/core/recordings/{id}/summary
Get the summary for the recording provided.
1 param → 200400401403404422500
GET
/v2/core/bookmark-configs
Get bookmark configurations (v2)
2 params → 200400401403404422500
PATCH
/v2/core/bookmark-configs/{id}
Update a bookmark configuration (v2)
1 param body → 200400401403404422500
GET
/v2/core/bookmark-groups
Get bookmark groups (v2)
1 param → 200400401403404422500
POST
/v2/core/bookmark-groups
Create a bookmark group (v2)
body → 200400401403404422500
PATCH
/v2/core/bookmark-groups/{id}
Update a bookmark group (v2)
1 param body → 200400401403404422500
GET
/v2/core/industries
Get industries (v2)
1 param → 200400401403404422500
POST
/v2/core/industries
Create an industry (v2)
body → 200400401403404422500
GET
/v2/core/industries/{id}
Get an industry (v2)
1 param → 200400401403404422500
PATCH
/v2/core/industries/{id}
Update an industry (v2)
1 param body → 200400401403404422500
POST
/v1/core/recordings/upload
Create a recording from a phone call
body → 201400401403404422500
POST
/v1/core/recordings/signed-urls
Get a signed URL for uploading a recording
body → 200400401403404422500

Schemas 2

The contract defines 2 schemas that model the data the API accepts and returns. The most detailed are CrmCustomer (32 properties), DmsOpportunity (22 properties). Each schema is shown below with its type and property counts.

CrmCustomer
object
CRM account linked to this recording
32 properties 4 required
DmsOpportunity
object
DMS opportunity linked to this recording
22 properties 22 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

siro-core-api-openapi.yml Raw ↑

Other APIs Siro publishes across the network.

Siro Audit API
Siro Folders API
Siro Integrations API
Siro Agents API
Siro Billing Graph API
Siro Docs API
Siro Halftime API
Siro Intercom API
Siro Invoices API
Siro Jobs API
Siro Licenses API
Siro Portal API
Where this information came from

This is an independent, third-party profile of Siro Core API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.