openapi: 3.1.0
info:
title: Compatibility API
version: 1.0.0
tags:
- name: Tokens
description: Manage API tokens for authentication.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Recording Transcriptions
description: Manage transcriptions of recordings.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Recordings
description: Manage call recordings.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Queue Members
description: Manage members in call queues.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Queues
description: Manage call queues.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Message Media
description: Manage media files attached to messages.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Messages
description: Send and manage SMS/MMS messages.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Imported Phone Numbers
description: Import phone numbers hosted elsewhere into your SignalWire Space.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Incoming Phone Numbers
description: Manage phone numbers in your project.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Fax Media
description: Manage fax media files.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Faxes
description: Send and manage faxes.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: CXML Scripts
description: Manage cXML scripts for storing XML instructions.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Conference Streams
description: Manage media streams for conferences.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Conference Recordings
description: Manage recordings for conference calls.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Conference Participants
description: Manage participants in conference calls.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Conferences
description: Manage conference calls.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Streams
description: Manage media streams for calls.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Calls
description: Manage voice calls and call recordings.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Available Phone Numbers
description: Search for available phone numbers to purchase.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Applications
description: Manage cXML applications for handling voice and messaging.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
- name: Accounts
description: Manage SignalWire projects and subprojects.
externalDocs:
url: https://signalwire.com/docs/compatibility-api/rest
description: Developer documentation on the Compatibility REST API
paths:
/Accounts:
get:
operationId: list_accounts
summary: List Accounts
description: |-
Lists the project used to authenticate the request and its subprojects as Account resources. Use it when an integration identifies SignalWire projects by Account SID. For JSON project-management operations, use [List projects](/docs/apis/rest/projects/list-projects).
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- name: FriendlyName
in: query
required: false
description: 'A named unique identifier for the resource. Allowed characters: `A-Za-z0-9_-`. Maximum of 100 characters.'
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Page numbers are zero-indexed, so the first page is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results to return per page. The default is 50, and the maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: A token used to retrieve a specific page of results. The token is returned in the response of a previous request.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AccountListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Accounts
post:
operationId: create_subprojects
summary: Create Subprojects
description: |-
Creates a subproject beneath the project used to authenticate the request and returns it as an Account. Use this route for integrations built around Account SIDs and form-encoded requests; use [Create a subproject](/docs/apis/rest/projects/create-subproject) for a JSON request.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters: []
responses:
'201':
description: Response containing a newly created subproject account.
content:
application/json:
schema:
$ref: '#/components/schemas/Account'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Accounts
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateSubprojectRequest'
/Accounts/{AccountSid}/Applications:
get:
operationId: list_applications
summary: List Applications
description: |-
Lists the account's Applications, which provide reusable voice and messaging routing. These applications are also available as addressable [cXML Applications](/docs/apis/rest/cxml-applications/list-cxml-applications) in the SignalWire REST API. Use this collection for code built around Application SIDs.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountSidPath'
- name: FriendlyName
in: query
required: false
description: Filter by a named unique identifier for the resource.
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Page numbers are zero-indexed, so the first page is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results to return per page. The default is 50, and the maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: A token used to retrieve a specific page of results.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Applications
post:
operationId: create_application
summary: Create an Application
description: |-
Creates a reusable voice and messaging routing application in the account. The new Application also becomes an addressable [cXML Application](/docs/apis/rest/cxml-applications/list-cxml-applications). The cXML Applications API manages existing applications but does not create them, so create Applications here.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountSidPath'
responses:
'201':
description: Response containing a newly created application.
content:
application/json:
schema:
$ref: '#/components/schemas/Application'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Applications
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateApplicationRequest'
/Accounts/{AccountSid}/Applications/{Sid}:
get:
operationId: get_application
summary: Find an Application by ID
description: |-
Retrieves one Application by SID so you can inspect its reusable voice and messaging routing. The application can also be read with [Get cXML application](/docs/apis/rest/cxml-applications/get-cxml-application), which addresses it by resource ID rather than SID.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountSidPath'
- $ref: '#/components/parameters/ApplicationPathSid'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Applications
post:
operationId: update_application
summary: Update an Application
description: |-
Changes how an Application routes voice and messaging requests or status callbacks while preserving its SID. The change is also visible through [Update cXML application](/docs/apis/rest/cxml-applications/update-cxml-application), because both operations manage the same application.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountSidPath'
- $ref: '#/components/parameters/ApplicationPathSid'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ApplicationResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Applications
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateApplicationRequest'
delete:
operationId: delete_application
summary: Delete an Application
description: |-
Deletes an Application by SID. This also removes its [cXML Application](/docs/apis/rest/cxml-applications/list-cxml-applications) representation and resource addresses, and clears the Application from phone numbers that route through it. Server-backed [cXML Webhooks](/docs/apis/rest/cxml-webhook/list-cxml-webhooks) are separate resources and are not affected.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountSidPath'
- $ref: '#/components/parameters/ApplicationPathSid'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Applications
/Accounts/{AccountSid}/AvailablePhoneNumbers:
get:
operationId: list_available_phone_number_resources
summary: List of AvailablePhoneNumber resources
description: |-
Returns the resource directories for searching available numbers, grouped by ISO country and number type such as Local or Toll-Free. This operation lists search routes rather than purchasable numbers; use a country-specific search below or SignalWire REST [Search phone numbers](/docs/apis/rest/phone-numbers/search-available-phone-numbers) to query inventory.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AvailablePhoneNumbersAccountSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AvailablePhoneNumberResourcesResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Available Phone Numbers
/Accounts/{AccountSid}/AvailablePhoneNumbers/{IsoCountry}:
get:
operationId: list_available_phone_number_resources_by_country
summary: List of AvailablePhoneNumber resources by country
description: |-
Returns the available-number search directories for one ISO country, grouped by number type such as Local or Toll-Free. This operation describes search routes; use [Search local available phone numbers](/docs/compatibility-api/rest/available-phone-numbers/search-local-available-phone-numbers) or the toll-free search to return actual inventory.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AvailablePhoneNumbersAccountSidPath'
- $ref: '#/components/parameters/IsoCountryPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AvailablePhoneNumberByCountryResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Available Phone Numbers
/Accounts/{AccountSid}/AvailablePhoneNumbers/{IsoCountry}/Local:
get:
operationId: search_local_available_phone_numbers
summary: Search for available phone numbers that match your criteria.
description: |-
Searches SignalWire inventory for local phone numbers available in one ISO country. Results are candidates, not project resources, until purchased through Incoming Phone Numbers or the native purchase operation. Use the [toll-free search](/docs/compatibility-api/rest/available-phone-numbers/search-toll-free-available-phone-numbers) for toll-free inventory, or native [Search phone numbers](/docs/apis/rest/phone-numbers/search-available-phone-numbers) for the JSON API.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AvailablePhoneNumbersAccountSidPath'
- $ref: '#/components/parameters/IsoCountryPath'
- name: AreaCode
in: query
required: false
description: Find numbers in the provided area code. Only available for numbers in US and Canada.
schema:
type: string
explode: false
- name: Beta
in: query
required: false
description: New numbers on SignalWire are marked as `beta`.
schema:
type: boolean
explode: false
- name: Contains
in: query
required: false
description: Find numbers based off of a pattern. Valid characters are `[0-9a-zA-Z]`.
schema:
type: string
explode: false
- name: ExcludeAllAddressRequired
in: query
required: false
description: Accepted but has no effect on the response.
schema:
type: boolean
explode: false
- name: ExcludeForeignAddressRequired
in: query
required: false
description: Accepted but has no effect on the response.
schema:
type: boolean
explode: false
- name: ExcludeLocalAddressRequired
in: query
required: false
description: Accepted but has no effect on the response.
schema:
type: boolean
explode: false
- name: FaxEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
- name: InLocality
in: query
required: false
description: Limits search to a city/locality. Requires InRegion to also be set.
schema:
type: string
explode: false
- name: InRegion
in: query
required: false
description: Limits search to same region as number. Must be a two-letter state/province code.
schema:
type: string
explode: false
- name: MmsEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
- name: SmsEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
- name: VoiceEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AvailablePhoneNumberListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Available Phone Numbers
/Accounts/{AccountSid}/AvailablePhoneNumbers/{IsoCountry}/TollFree:
get:
operationId: search_toll_free_available_phone_numbers
summary: Find toll-free numbers
description: |-
Searches SignalWire inventory for toll-free phone numbers available in one ISO country. Results are candidates, not project resources, until purchased through Incoming Phone Numbers or the native purchase operation. Use the [local search](/docs/compatibility-api/rest/available-phone-numbers/search-local-available-phone-numbers) for local inventory, or native [Search phone numbers](/docs/apis/rest/phone-numbers/search-available-phone-numbers) for the JSON API.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AvailablePhoneNumbersAccountSidPath'
- $ref: '#/components/parameters/IsoCountryPath'
- name: AreaCode
in: query
required: false
description: Find numbers in the provided area code. Only available for numbers in US and Canada.
schema:
type: string
explode: false
- name: Beta
in: query
required: false
description: New numbers on SignalWire are marked as `beta`.
schema:
type: boolean
explode: false
- name: Contains
in: query
required: false
description: Find numbers based off of a pattern. Valid characters are `[0-9a-zA-Z]`.
schema:
type: string
explode: false
- name: ExcludeAllAddressRequired
in: query
required: false
description: Accepted but has no effect on the response.
schema:
type: boolean
explode: false
- name: ExcludeForeignAddressRequired
in: query
required: false
description: Accepted but has no effect on the response.
schema:
type: boolean
explode: false
- name: ExcludeLocalAddressRequired
in: query
required: false
description: Accepted but has no effect on the response.
schema:
type: boolean
explode: false
- name: FaxEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
- name: InLocality
in: query
required: false
description: Limits search to a city/locality. Requires InRegion to also be set.
schema:
type: string
explode: false
- name: InRegion
in: query
required: false
description: Limits search to same region as number. Must be a two-letter state/province code.
schema:
type: string
explode: false
- name: MmsEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
- name: SmsEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
- name: VoiceEnabled
in: query
required: false
description: Accepted but not supported; has no effect on the response.
schema:
type: boolean
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AvailablePhoneNumberListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Available Phone Numbers
/Accounts/{AccountSid}/Calls:
get:
operationId: list_all_calls
summary: List all Calls
description: |-
Lists the account's calls. Each call has a Call SID that cXML integrations can use for inspection or control. Use [Retrieve a Call](/docs/compatibility-api/rest/calls/retrieve-a-call) when you already have its SID; use the [Calling API](/docs/apis/rest/calls/call-commands) for SWML-driven call commands.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- name: EndTime
in: query
required: false
description: The time, in RFC 2822 GMT format, on which the call was terminated.
schema:
type: string
explode: false
- name: EndTime<
in: query
required: false
description: The time before which the call was terminated.
schema:
type: string
explode: false
- name: EndTime>
in: query
required: false
description: The time after which the call was terminated.
schema:
type: string
explode: false
- name: From
in: query
required: false
description: The address that initiated the call.
schema:
type: string
explode: false
- name: ParentCallSid
in: query
required: false
description: The unique identifier for the call that created this call.
schema:
$ref: '#/components/schemas/uuid'
explode: false
- name: StartTime
in: query
required: false
description: The time, in RFC 2822 GMT format, on which the call began.
schema:
type: string
explode: false
- name: StartTime<
in: query
required: false
description: The time before which the call began.
schema:
type: string
explode: false
- name: StartTime>
in: query
required: false
description: The time after which the call began.
schema:
type: string
explode: false
- name: Status
in: query
required: false
description: The status of the call.
schema:
type: string
enum:
- queued
- ringing
- in-progress
- canceled
- completed
- busy
- failed
- no-answer
explode: false
- name: To
in: query
required: false
description: The address that received the call.
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Page numbers are zero-indexed, so the first page is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results to return per page. The default is 50, and the maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: A token used to retrieve a specific page of results. Must start with PA or PB.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Calls
post:
operationId: create_a_call
summary: Create a Call
description: |-
Starts an outbound call whose behavior is supplied by a cXML URL or Application SID. Use this form-encoded route for integrations built around cXML call control and Call SIDs; use the [Calling API](/docs/apis/rest/calls/call-commands) for SWML-driven calls and command-based control.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallResponse'
'400':
description: The request was invalid. Review the errors array for specific issues with your request.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorArrayResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Calls
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateCallRequest'
/Accounts/{AccountSid}/Calls/{CallSid}/Recordings:
post:
operationId: create_recording
summary: Create a Recording
description: |-
Starts a recording resource for an active call. Use [Update a Recording](/docs/compatibility-api/rest/recordings/update-recording) to pause, resume, or stop it; use the account-level [Recordings](/docs/compatibility-api/rest/recordings/list-recordings) collection to find saved media across calls.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPathForRecording'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallRecordingResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recordings
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateCallRecordingRequest'
/Accounts/{AccountSid}/Calls/{CallSid}/Recordings/{Sid}:
post:
operationId: update_recording
summary: Update a Recording
description: |-
Pauses, resumes, or stops a recording on an active call. When pausing, choose whether the elapsed interval becomes silence in the media or is skipped. This controls an in-progress recording; account-level [Recordings](/docs/compatibility-api/rest/recordings/list-recordings) operations retrieve or delete saved media.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPathForRecording'
- $ref: '#/components/parameters/CallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallRecordingResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recordings
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateCallRecordingRequest'
/Accounts/{AccountSid}/Calls/{CallSid}/Streams:
post:
operationId: create_stream
summary: Create a Stream
description: |-
Starts sending selected audio tracks from an active call to a secure WebSocket endpoint. Use it for live call-audio processing; use [Conference Streams](/docs/compatibility-api/rest/conference-streams/create-conference-stream) for an entire voice conference or [Video Room Streams](/docs/apis/rest/video/streams/list-room-streams) for RTMP video broadcasts.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPathForRecording'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallStreamResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Streams
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateCallStreamRequest'
/Accounts/{AccountSid}/Calls/{CallSid}/Streams/{Sid}:
post:
operationId: update_stream
summary: Stop a Stream
description: |-
Stops an active WebSocket audio stream on a call by stream SID. This ends media delivery without ending the call. Conference audio streams and Video RTMP streams have separate operations.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPathForRecording'
- $ref: '#/components/parameters/CallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallStreamResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Streams
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateCallStreamRequest'
/Accounts/{AccountSid}/Calls/{Sid}:
get:
operationId: retrieve_a_call
summary: Retrieve a Call
description: |-
Retrieves one call by SID so you can inspect a known call's progress and outcome. Use [List all Calls](/docs/compatibility-api/rest/calls/list-all-calls) to discover SIDs. The Calling API is command-oriented and uses its own call identifiers.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Calls
post:
operationId: update_a_call
summary: Update a Call
description: |-
Redirects an active call to new cXML instructions, cancels a queued call, or completes an in-progress call. Use it when controlling a call by Call SID and form-encoded cXML settings; use the [Calling API](/docs/apis/rest/calls/call-commands) for SWML call commands.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CallResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Calls
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateCallRequest'
delete:
operationId: delete_a_call
summary: Delete a Call
description: |-
Deletes a call record from the account and returns no body on success. This removes the record; it does not hang up an active call. Use [Update a Call](/docs/compatibility-api/rest/calls/update-a-call) with an appropriate status to cancel or complete a live call.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CallsAccountSidPath'
- $ref: '#/components/parameters/CallSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Calls
/Accounts/{AccountSid}/Conferences:
get:
operationId: list_all_conferences
summary: List All Conferences
description: |-
Lists the account's voice conferences. Each conference has a SID used for live participant, recording, or stream management. Use [Conference logs](/docs/apis/rest/conference-logs/list-conferences) for cross-product history, or [Video Conferences](/docs/apis/rest/video/video-conferences/list-video-conferences) for hosted video configurations.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- name: DateCreated
in: query
required: false
description: 'Shows conferences that were created on the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateCreated<
in: query
required: false
description: 'Shows conferences that were created before the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateCreated>
in: query
required: false
description: 'Shows conferences that were created after the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateUpdated
in: query
required: false
description: 'Shows conferences that were updated on the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateUpdated<
in: query
required: false
description: 'Shows conferences that were updated before the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateUpdated>
in: query
required: false
description: 'Shows conferences that were updated after the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: FriendlyName
in: query
required: false
description: A description, up to 64 characters, of the conference room.
schema:
type: string
maxLength: 64
explode: false
- name: Status
in: query
required: false
description: The status of this conference.
schema:
$ref: '#/components/schemas/ConferenceStatus'
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Page numbers are zero-indexed, so the first page is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results to return per page. The default is 50, and the maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: A token used to retrieve a specific page of results. Must start with PA or PB.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conferences
/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Participants:
get:
operationId: list_all_participants
summary: List all active Participants
description: |-
Lists the callers currently participating in a voice conference. Each participant is identified by the Call SID used for individual control. Video conference participants belong to Video Rooms and are not returned here.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- name: Muted
in: query
required: false
description: Whether or not a participant is muted.
schema:
type: boolean
explode: false
- name: Hold
in: query
required: false
description: Whether or not a participant is on hold.
schema:
type: boolean
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Page numbers are zero-indexed, so the first page is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results to return per page. The default is 50, and the maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: A token used to retrieve a specific page of results. Must start with PA or PB.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceParticipantListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Participants
/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Participants/{CallSid}:
get:
operationId: retrieve_participant
summary: Retrieve a Participant
description: |-
Retrieves one active voice-conference participant by the call SID used to join the conference. Use [List all active Participants](/docs/compatibility-api/rest/conference-participants/list-all-participants) to discover Call SIDs; this operation does not retrieve Video Room participants.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ParticipantCallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceParticipantResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Participants
post:
operationId: update_participant
summary: Update a Participant
description: |-
Changes an active voice-conference participant's mute, hold, coaching, wait-audio, or announcement settings by Call SID. Use [Update Conference](/docs/compatibility-api/rest/conferences/update-conference) to end or announce to the entire conference, and delete the participant to remove only that caller.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ParticipantCallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceParticipantResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Participants
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateConferenceParticipantRequest'
delete:
operationId: delete_participant
summary: Delete a Participant
description: |-
Removes one caller from an active voice conference by Call SID. This disconnects that participant from the conference without ending the conference for everyone else; use [Update Conference](/docs/compatibility-api/rest/conferences/update-conference) to complete the full conference.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ParticipantCallSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Participants
/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Recordings:
get:
operationId: list_conference_recordings
summary: List Conference Recordings
description: |-
Lists the saved voice recordings associated with one conference. Use the account-level [Recordings](/docs/compatibility-api/rest/recordings/list-recordings) collection to browse media across calls and conferences, or Video [Room Recordings](/docs/apis/rest/video/room-recordings/list-room-recordings) for video-room media.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- name: DateCreated
in: query
required: false
description: 'Shows recordings that were created on the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateCreated<
in: query
required: false
description: 'Shows recordings that were created before the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: DateCreated>
in: query
required: false
description: 'Shows recordings that were created after the date provided. Format: YYYY-MM-DD.'
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Page numbers are zero-indexed, so the first page is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results to return per page. The default is 50, and the maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: A token used to retrieve a specific page of results. Must start with PA or PB.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceRecordingListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Recordings
/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Recordings/{Sid}:
get:
operationId: get_conference_recording
summary: Get a Conference Recording
description: |-
Retrieves one voice-conference recording by conference SID and recording SID. Use [List Conference Recordings](/docs/compatibility-api/rest/conference-recordings/list-conference-recordings) to discover recording SIDs; Video Room recordings are separate media resources.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ConferenceRecordingSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceRecordingResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Recordings
post:
operationId: update_conference_recording
summary: Update a Conference Recording
description: |-
Pauses, resumes, or stops an in-progress voice-conference recording. When pausing, choose whether the elapsed interval becomes silence in the media or is skipped. This controls recording state; use [Get a Conference Recording](/docs/compatibility-api/rest/conference-recordings/get-conference-recording) to retrieve saved recording details.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ConferenceRecordingSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceRecordingResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Review the errors array for specific issues.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorStringArrayResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Recordings
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateConferenceRecordingRequest'
delete:
operationId: delete_conference_recording
summary: Delete a Conference Recording
description: |-
Deletes one saved voice-conference recording by conference SID and recording SID, returning no body on success. This removes recording media without changing the conference or its participants. Video Room recordings have a separate delete operation.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ConferenceRecordingSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conference Recordings
/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Streams:
post:
operationId: create_conference_stream
summary: Create a Conference Stream
description: |-
Starts sending selected audio tracks from an active voice conference to a secure WebSocket endpoint. Use it for live conference-audio processing; use [Call Streams](/docs/compatibility-api/rest/streams/create-stream) for one call or [Video Room Streams](/docs/apis/rest/video/streams/list-room-streams) for RTMP video broadcasts.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceStreamResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Review the errors array for specific issues.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorStringArrayResponse'
tags:
- Conference Streams
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateConferenceStreamRequest'
/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Streams/{Sid}:
post:
operationId: update_conference_stream
summary: Update Conference Stream
description: |-
Stops an active WebSocket audio stream for a voice conference by stream SID. This ends media delivery without ending the conference. Call audio streams and Video RTMP streams use separate operations.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPathForParticipant'
- $ref: '#/components/parameters/ConferenceStreamSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceStreamResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Review the errors array for specific issues.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorStringArrayResponse'
tags:
- Conference Streams
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateConferenceStreamRequest'
/Accounts/{AccountSid}/Conferences/{Sid}:
get:
operationId: retrieve_conference
summary: Retrieve a Conference
description: |-
Retrieves one voice conference by SID so you can inspect a known conference and its current activity. Use [List All Conferences](/docs/compatibility-api/rest/conferences/list-all-conferences) to discover SIDs; Video Conferences are separate hosted video resources.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conferences
post:
operationId: update_conference
summary: Update Conference
description: |-
Ends a voice conference or plays an announcement into the conference identified by SID. Use participant operations to mute, hold, coach, announce to, or remove one caller; Video Conference configuration uses the separate Video API.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ConferencesAccountSidPath'
- $ref: '#/components/parameters/ConferenceSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ConferenceResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Conferences
requestBody:
required: false
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateConferenceRequest'
/Accounts/{AccountSid}/Faxes:
get:
operationId: list_all_faxes
summary: List all Faxes
description: |-
Lists the account's fax resources. Each fax has a SID used for delivery inspection, cancellation, deletion, or media access. Use [Fax logs](/docs/apis/rest/fax-logs/list-fax-logs) for read-only historical reporting.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- name: Page
in: query
required: false
description: The page index to retrieve. Zero-indexed.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when Page > 0.
schema:
type: string
explode: false
- name: DateCreatedAfter
in: query
required: false
description: The date, in ISO 8601 format, after which the fax was sent.
schema:
type: string
explode: false
- name: DateCreatedOnOrBefore
in: query
required: false
description: The date, in ISO 8601 format, on or before which the fax was sent.
schema:
type: string
explode: false
- name: From
in: query
required: false
description: The phone number, in E.164 format, the fax was sent from.
schema:
type: string
explode: false
- name: To
in: query
required: false
description: The phone number, in E.164 format, the fax was sent to.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/FaxListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Faxes
post:
operationId: send_fax
summary: Send a Fax
description: |-
Queues a fax from a SignalWire number to a destination number using a document at the supplied media URL. Use [Retrieve a Fax](/docs/compatibility-api/rest/faxes/retrieve-fax) to inspect its current status or [Update a Fax](/docs/compatibility-api/rest/faxes/update-fax) to cancel it while queued. The native Fax Logs API is read-only and cannot send faxes.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/FaxResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Faxes
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SendFaxRequest'
/Accounts/{AccountSid}/Faxes/{FaxSid}/Media:
get:
operationId: list_all_fax_media
summary: List Fax Media
description: |-
Returns the document media associated with one fax. Use it when a fax SID is known and you need the media SID or metadata; [Message Media](/docs/compatibility-api/rest/message-media/list-media) contains MMS attachments and is a separate collection.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- $ref: '#/components/parameters/FaxSidPathForMedia'
- name: Page
in: query
required: false
description: The page index to retrieve. Zero-indexed.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when Page > 0.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/FaxMediaListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Fax Media
/Accounts/{AccountSid}/Faxes/{FaxSid}/Media/{Sid}:
get:
operationId: retrieve_medias
summary: Retrieve Fax Media
description: |-
Retrieves one document-media resource by fax SID and media SID. Use [List Fax Media](/docs/compatibility-api/rest/fax-media/list-all-fax-media) to discover media SIDs; this endpoint does not return MMS attachments or voice recordings.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- $ref: '#/components/parameters/FaxSidPathForMedia'
- $ref: '#/components/parameters/FaxSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/FaxMediaResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Fax Media
delete:
operationId: delete_fax_media
summary: Delete Fax Media
description: |-
Deletes one document-media resource from a fax. Media cannot be deleted while the parent fax is queued, processing, sending, or receiving. This removes the media without deleting the fax record itself; MMS attachments use Message Media operations.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- $ref: '#/components/parameters/FaxSidPathForMedia'
- $ref: '#/components/parameters/FaxSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'409':
description: The request conflicts with the current state of the resource. The operation cannot be completed.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Fax Media
/Accounts/{AccountSid}/Faxes/{Sid}:
get:
operationId: retrieve_fax
summary: Retrieve a Fax
description: |-
Retrieves one managed fax by SID so you can inspect its delivery progress, result, and document media. Use [List all Faxes](/docs/compatibility-api/rest/faxes/list-all-faxes) to discover SIDs; use [Get fax log](/docs/apis/rest/fax-logs/get-fax-log) when you only need a historical log entry.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- $ref: '#/components/parameters/FaxSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/FaxResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Faxes
post:
operationId: update_fax
summary: Update a Fax
description: |-
Cancels a fax while it is still in `queued` status. Faxes that have begun processing, sending, or receiving cannot be canceled with this operation. Fax Logs are read-only and cannot change delivery state.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- $ref: '#/components/parameters/FaxSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/FaxResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Faxes
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateFaxRequest'
delete:
operationId: delete_fax
summary: Delete a Fax
description: |-
Deletes a managed fax by SID. A fax cannot be deleted while it is processing, sending, or receiving; cancel a still-queued fax first when appropriate. This removes the fax resource, while [Fax logs](/docs/apis/rest/fax-logs/list-fax-logs) provide the read-only historical view.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/FaxesAccountSidPath'
- $ref: '#/components/parameters/FaxSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'409':
description: The request conflicts with the current state of the resource. The operation cannot be completed.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Faxes
/Accounts/{AccountSid}/ImportedPhoneNumbers:
post:
operationId: create_imported_phone_number
summary: Import a Phone Number
description: |-
Registers a phone number you already own so it can route communications through the project while remaining externally hosted. Use [Create an Incoming Phone Number](/docs/compatibility-api/rest/incoming-phone-numbers/create-incoming-phone-number) to purchase from SignalWire inventory, or SignalWire REST [Import phone number](/docs/apis/rest/phone-numbers/create-imported-phone-number) for a JSON request.
**Note:** This is a **Partner API**. To enable it on your SignalWire Space, contact
[Sales](https://signalwire.com/company/contact?utm_campaign=devex_sent_em).
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/ImportedPhoneNumbersAccountSidPath'
responses:
'201':
description: The request has succeeded and a new resource has been created as a result.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPhoneNumber'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The phone number import request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityImportedPhoneNumberError'
tags:
- Imported Phone Numbers
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ImportPhoneNumberRequest'
/Accounts/{AccountSid}/IncomingPhoneNumbers:
get:
operationId: list_incoming_phone_numbers
summary: List all Incoming Phone Numbers
description: |-
Lists the Incoming Phone Number resources owned by the account. These numbers can route calls, messages, and faxes through the project. Use [Available Phone Numbers](/docs/compatibility-api/rest/available-phone-numbers/list-available-phone-number-resources) to search inventory, or SignalWire REST [List phone numbers](/docs/apis/rest/phone-numbers/list-phone-numbers) for JSON requests.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/IncomingPhoneNumbersAccountSidPath'
- name: Page
in: query
required: false
description: The page index to retrieve. Zero-indexed.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when Page > 0.
schema:
type: string
explode: false
- name: PhoneNumber
in: query
required: false
description: Only show numbers that match this pattern.
schema:
type: string
explode: false
- name: FriendlyName
in: query
required: false
description: Only show numbers with this friendly name.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPhoneNumberListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Incoming Phone Numbers
post:
operationId: create_incoming_phone_number
summary: Create an Incoming Phone Number
description: |-
Purchases an available number and provisions it as an Incoming Phone Number in the account. Search first with [Available Phone Numbers](/docs/compatibility-api/rest/available-phone-numbers/list-available-phone-number-resources), or use SignalWire REST [Purchase phone number](/docs/apis/rest/phone-numbers/purchase-phone-number) for a JSON request. To register a number you already own instead of purchasing inventory, use Imported Phone Numbers.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/IncomingPhoneNumbersAccountSidPath'
responses:
'201':
description: Response returned when an incoming phone number is created.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPhoneNumber'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Incoming Phone Numbers
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateIncomingPhoneNumberRequest'
/Accounts/{AccountSid}/IncomingPhoneNumbers/{Sid}:
get:
operationId: retrieve_incoming_phone_number
summary: Retrieve an incoming phone number
description: |-
Retrieves one account-owned phone number by Incoming Phone Number SID so you can inspect how it is used in the project. Use [List all Incoming Phone Numbers](/docs/compatibility-api/rest/incoming-phone-numbers/list-incoming-phone-numbers) to discover SIDs, or native [Get phone number](/docs/apis/rest/phone-numbers/retrieve-phone-number) when working with SignalWire resource IDs.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/IncomingPhoneNumbersAccountSidPath'
- $ref: '#/components/parameters/IncomingPhoneNumberSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPhoneNumberResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Incoming Phone Numbers
post:
operationId: update_incoming_phone_number
summary: Update an incoming phone number
description: |-
Changes how an account-owned phone number is identified or routes inbound calls, messages, and faxes. Use this operation for form-encoded configuration; use SignalWire REST [Update phone number](/docs/apis/rest/phone-numbers/update-phone-number) for JSON configuration.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/IncomingPhoneNumbersAccountSidPath'
- $ref: '#/components/parameters/IncomingPhoneNumberSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/IncomingPhoneNumberResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Incoming Phone Numbers
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateIncomingPhoneNumberRequest'
delete:
operationId: delete_incoming_phone_number
summary: Delete an incoming phone number
description: |-
Releases an Incoming Phone Number and removes it from the account. This is for numbers the account should no longer own; changing or deleting a handler does not release the number. Native phone-number resources use [Release phone number](/docs/apis/rest/phone-numbers/release-phone-number).
Note: Numbers cannot be released within a cooldown period after purchase.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Numbers_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/IncomingPhoneNumbersAccountSidPath'
- $ref: '#/components/parameters/IncomingPhoneNumberSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'409':
description: The request conflicts with the current state of the resource. The operation cannot be completed.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Incoming Phone Numbers
/Accounts/{AccountSid}/LamlBins:
get:
operationId: list_cxml_scripts
summary: List All cXML Scripts
description: |-
Lists the account's stored cXML scripts from the `LamlBins` collection. These scripts are also available as addressable [cXML Scripts](/docs/apis/rest/cxml-scripts/list-cxml-scripts) in the SignalWire REST API. Use these routes for integrations built around LamlBin SIDs, or [cXML Webhooks](/docs/apis/rest/cxml-webhook/list-cxml-webhooks) when your server generates instructions per request. Results are sorted by creation date, most recent first.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CxmlScriptsAccountSidPath'
- name: Name
in: query
required: false
description: A friendly name given to the cXML script.
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Default is 0.
schema:
type: integer
format: int32
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of items per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: The token for cursor-based pagination. Must start with 'PA' or 'PB'.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CxmlScriptListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- CXML Scripts
post:
operationId: create_cxml_script
summary: Create a cXML Script
description: |-
Creates a stored cXML document through the `LamlBins` route. The new script is also available as an addressable cXML Script resource. Use this form-encoded route when existing code expects a LamlBin SID, [Create cXML Script](/docs/apis/rest/cxml-scripts/create-cxml-script) for a JSON request, or [Create cXML webhook](/docs/apis/rest/cxml-webhook/create-cxml-webhook) when instructions come from your server.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CxmlScriptsAccountSidPath'
responses:
'201':
description: Response returned when a cXML script is created.
content:
application/json:
schema:
$ref: '#/components/schemas/CxmlScript'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- CXML Scripts
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateCxmlScriptRequest'
/Accounts/{AccountSid}/LamlBins/{Sid}:
get:
operationId: retrieve_cxml_script
summary: Retrieve a cXML Script
description: |-
Retrieves one stored cXML script by LamlBin SID. The same script can be read with [Get cXML Script](/docs/apis/rest/cxml-scripts/get-cxml-script), which addresses it by resource ID rather than SID.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CxmlScriptsAccountSidPath'
- $ref: '#/components/parameters/CxmlScriptSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CxmlScriptResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- CXML Scripts
post:
operationId: update_cxml_script
summary: Update a cXML Script
description: |-
Changes the name or stored cXML document of a LamlBin by SID. The change is also visible through [Update cXML Script](/docs/apis/rest/cxml-scripts/update-cxml-script), because both operations manage the same script; server-backed [cXML Webhooks](/docs/apis/rest/cxml-webhook/update-cxml-webhook) are separate resources.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CxmlScriptsAccountSidPath'
- $ref: '#/components/parameters/CxmlScriptSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/CxmlScriptResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- CXML Scripts
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateCxmlScriptRequest'
delete:
operationId: delete_cxml_script
summary: Delete a cXML Script
description: |-
Deletes a stored cXML script from the `LamlBins` collection by SID. This also removes its [cXML Script](/docs/apis/rest/cxml-scripts/delete-cxml-script) representation and resource addresses, so calls and messages can no longer reach it. Server-backed cXML Webhooks are separate resources and are not affected.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_ or _Messaging_ or _Fax_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/CxmlScriptsAccountSidPath'
- $ref: '#/components/parameters/CxmlScriptSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- CXML Scripts
/Accounts/{AccountSid}/Messages:
get:
operationId: list_messages
summary: List all Messages
description: |-
Lists the account's messages. Each message has a SID used for delivery inspection, redaction, deletion, or media access. The SignalWire REST [Messages API](/docs/apis/rest/messages/create-message) sends and redacts JSON requests, while [Message logs](/docs/apis/rest/message-logs/list-message-logs) provide a read-only history.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- name: DateSent
in: query
required: false
description: Only return messages sent on this particular date, formatted as YYYY-MM-DD in UTC.
schema:
type: string
explode: false
- name: DateSent<
in: query
required: false
description: Only return messages sent before this date, formatted as YYYY-MM-DD in UTC.
schema:
type: string
explode: false
- name: DateSent>
in: query
required: false
description: Only return messages sent after this date, formatted as YYYY-MM-DD in UTC.
schema:
type: string
explode: false
- name: From
in: query
required: false
description: The phone number in E.164 format. For inbound messages, this will be the remote phone number who sent the message. For outbound messages, this will be one of your SignalWire phone numbers.
schema:
type: string
explode: false
- name: To
in: query
required: false
description: The phone number in E.164 format that received the message. For inbound messages, this is one of your SignalWire phone numbers; for outbound messages, this is the remote phone number that received the message.
schema:
type: string
explode: false
- name: Status
in: query
required: false
description: Current status of the message.
schema:
$ref: '#/components/schemas/MessageStatus'
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Default is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of items per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: The token for cursor-based pagination. Must start with 'PA' or 'PB'.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/MessageListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Messages
post:
operationId: create_message
summary: Create a Message
description: |-
Sends a message through the account and creates a Message resource for tracking its delivery. Use this form-encoded route for SID-based integrations; use SignalWire REST [Send a message](/docs/apis/rest/messages/create-message) for a JSON request.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
responses:
'201':
description: Response returned when a message is created.
content:
application/json:
schema:
$ref: '#/components/schemas/Message'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Messages
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateMessageRequest'
/Accounts/{AccountSid}/Messages/{MessageSid}/Media:
get:
operationId: list_media
summary: List Message Media
description: |-
Lists the MMS attachments associated with one message. Each attachment is a separate media resource that can be retrieved or deleted by SID. [Fax Media](/docs/compatibility-api/rest/fax-media/list-all-fax-media) contains fax documents and is a separate collection.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- $ref: '#/components/parameters/MessageSidPathForMedia'
- name: DateCreated
in: query
required: false
description: Only return media created on this particular date, formatted as YYYY-MM-DD in UTC.
schema:
type: string
explode: false
- name: DateCreated<
in: query
required: false
description: Only return media created before this date, formatted as YYYY-MM-DD in UTC.
schema:
type: string
explode: false
- name: DateCreated>
in: query
required: false
description: Only return media created after this date, formatted as YYYY-MM-DD in UTC.
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve. Default is 0.
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of items per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: The token for cursor-based pagination. Must start with 'PA' or 'PB'.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/MessageMediaListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Message Media
/Accounts/{AccountSid}/Messages/{MessageSid}/Media/{Sid}:
get:
operationId: retrieve_media
summary: Retrieve Message Media
description: |-
Retrieves one MMS attachment by message SID and media SID. Use [List Message Media](/docs/compatibility-api/rest/message-media/list-media) to discover media SIDs; this endpoint does not retrieve fax documents or voice recordings.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- $ref: '#/components/parameters/MessageSidPathForMedia'
- $ref: '#/components/parameters/MessageSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/MessageMediaResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Message Media
delete:
operationId: delete_message_media
summary: Delete Message Media
description: |-
Deletes one MMS attachment from a message. Media cannot be deleted while the parent message is in `initiated` or `queued` status. This removes the attachment without deleting the message itself.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- $ref: '#/components/parameters/MessageSidPathForMedia'
- $ref: '#/components/parameters/MessageSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Message Media
/Accounts/{AccountSid}/Messages/{Sid}:
get:
operationId: retrieve_message
summary: Retrieve a Message
description: |-
Retrieves one message by SID so you can inspect its content and delivery outcome. Use [List all Messages](/docs/compatibility-api/rest/messages/list-messages) to discover SIDs, or [Get message log](/docs/apis/rest/message-logs/get-message-log) for a SignalWire REST read-only log.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- $ref: '#/components/parameters/MessageSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/MessageResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Messages
post:
operationId: update_message
summary: Update a Message
description: |-
Redacts a sent message by replacing its body with an empty string. No other message updates are supported, and messages in `queued` or `initiated` status cannot be redacted. Use native [Redact a message](/docs/apis/rest/messages/update-message) for the JSON API.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- $ref: '#/components/parameters/MessageSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/MessageResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Messages
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateMessageRequest'
delete:
operationId: delete_message
summary: Delete a Message
description: |-
Deletes a message by SID. A message still in `queued` status cannot be deleted. This removes the managed message resource; SignalWire REST Message Logs are read-only history.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Messaging_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/MessagesAccountSidPath'
- $ref: '#/components/parameters/MessageSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Messages
/Accounts/{AccountSid}/Queues:
get:
operationId: list_queues
summary: List All Queues
description: |-
Lists the account's voice queues. Queues hold callers until an application is ready to handle them, and each is managed by Queue SID. The SignalWire REST [Queues API](/docs/apis/rest/queues/list-queues) exposes the same queues through JSON routes.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- name: Page
in: query
required: false
description: The page number to retrieve (zero-indexed).
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when navigating to pages beyond the first.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/QueueListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queues
post:
operationId: create_queue
summary: Create a Queue
description: |-
Creates a voice queue in the account to hold callers until an application dequeues them. Queue names must be unique among the account's active queues; a deleted queue's name can be reused. Use SignalWire REST [Create queue](/docs/apis/rest/queues/create-queue) for JSON requests; a queue created through either route is available through both APIs.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
responses:
'201':
description: Response returned when a queue is successfully created.
content:
application/json:
schema:
$ref: '#/components/schemas/Queue'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queues
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateQueueRequest'
/Accounts/{AccountSid}/Queues/{QueueSid}/Members:
get:
operationId: list_all_queue_members
summary: List All Queue Members
description: |-
Returns the callers currently waiting in one queue, ordered by enqueue time. Use it to inspect position and wait duration or locate a Call SID to dequeue. The SignalWire REST [Queue Members API](/docs/apis/rest/queue-members/list-queue-members) reads the same waiting calls, identifying each by a member ID rather than a Call SID.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- $ref: '#/components/parameters/QueueSidPathForMembers'
- name: Page
in: query
required: false
description: The page number to retrieve (zero-indexed).
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when navigating to pages beyond the first.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/QueueMemberListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queue Members
/Accounts/{AccountSid}/Queues/{QueueSid}/Members/{CallSid}:
get:
operationId: retrieve_queue_member
summary: Retrieve a Queue Member
description: |-
Retrieves one waiting caller by Call SID, or the caller at the front of the queue when `Front` is used. Use [List All Queue Members](/docs/compatibility-api/rest/queue-members/list-all-queue-members) to inspect the full waiting order. The native API reads the same waiting calls by member ID, with [Get next queue member](/docs/apis/rest/queue-members/retrieve-next-queue-member) in place of the `Front` selector.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- $ref: '#/components/parameters/QueueSidPathForMembers'
- $ref: '#/components/parameters/QueueMemberCallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/QueueMemberResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queue Members
post:
operationId: update_queue_member
summary: Update a Queue Member
description: |-
Dequeues a waiting caller and redirects the call to cXML instructions at the supplied URL. Identify the caller by Call SID, or use `Front` to dequeue the first caller. This is live call control; native [Queue Members](/docs/apis/rest/queue-members/list-queue-members) can inspect waiting calls but do not provide this cXML redirect operation.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- $ref: '#/components/parameters/QueueSidPathForMembers'
- $ref: '#/components/parameters/QueueMemberCallSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/QueueMemberResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'503':
description: The service is temporarily unavailable. Please try again later.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queue Members
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateQueueMemberRequest'
/Accounts/{AccountSid}/Queues/{Sid}:
get:
operationId: retrieve_queue
summary: Retrieve a Queue
description: |-
Retrieves one voice queue by SID so you can inspect its configuration and current occupancy. Use [List All Queues](/docs/compatibility-api/rest/queues/list-queues) to discover SIDs, or SignalWire REST [Get queue](/docs/apis/rest/queues/get-queue) for a resource ID.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- $ref: '#/components/parameters/QueueSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/QueueResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queues
post:
operationId: update_queue
summary: Update a Queue
description: |-
Changes how a voice queue is identified or how many callers it can hold. A new name must remain unique among the account's active queues. Use Queue Members operations to inspect or dequeue callers currently waiting.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- $ref: '#/components/parameters/QueueSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/QueueResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queues
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateQueueRequest'
delete:
operationId: delete_queue
summary: Delete a Queue
description: |-
Deletes an empty call queue by SID. A queue with waiting members cannot be deleted and returns a validation error; dequeue its callers before retrying. This removes the same queue that SignalWire REST [Delete queue](/docs/apis/rest/queues/delete-queue) manages.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/QueuesAccountSidPath'
- $ref: '#/components/parameters/QueueSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Queues
/Accounts/{AccountSid}/Recordings:
get:
operationId: list_recordings
summary: List all Recordings
description: |-
Lists saved voice recordings across the account's calls and conferences. Each recording has a SID used to retrieve or delete its media. SignalWire REST [Recordings](/docs/apis/rest/recordings/list-call-recordings) provide JSON operations, while Video [Room Recordings](/docs/apis/rest/video/room-recordings/list-room-recordings) contain video-room media. Results are ordered by creation date, newest first.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/RecordingsAccountSidPath'
- name: DateCreated
in: query
required: false
description: Filter by recordings created on this exact date (RFC 2822 format).
schema:
type: string
explode: false
- name: DateCreated<
in: query
required: false
description: Filter by recordings created before this date (RFC 2822 format).
schema:
type: string
explode: false
- name: DateCreated>
in: query
required: false
description: Filter by recordings created after this date (RFC 2822 format).
schema:
type: string
explode: false
- name: CallSid
in: query
required: false
description: Filter by recordings associated with a specific call.
schema:
$ref: '#/components/schemas/uuid'
explode: false
- name: ConferenceSid
in: query
required: false
description: Filter by recordings associated with a specific conference.
schema:
$ref: '#/components/schemas/uuid'
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve (zero-indexed).
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when navigating to pages beyond the first.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/RecordingListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recordings
/Accounts/{AccountSid}/Recordings/{Sid}:
get:
operationId: retrieve_recording
summary: Retrieve a Recording
description: |-
Retrieves one voice recording as audio or metadata, depending on the requested extension. Use this account-level route for saved call or conference media; Video Room recordings are separate resources.
This endpoint supports two different access methods with different authentication requirements:
## Public Access (No Authentication Required)
Recording audio files can be accessed directly without authentication. This is useful for external applications
to embed recording URLs without exposing SignalWire API credentials. SignalWire recording URLs are long
and random, making them difficult to guess or exploit unless you reveal the URL.
**Retrieve WAV file**
When a recording URI has no extension or a `.wav` extension, the request
will return a binary WAV version of the recording file.
`GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}`
`GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}.wav`
**Retrieve MP3 file**
Setting an extension of ".mp3" on the URI returns a binary MP3 version
of the recording. For example:
`GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}.mp3`
## Authenticated Access (Voice Scope Required)
**Retrieve Metadata**
A recording's metadata, such as duration, cost, time, can be returned by
setting the Recording URI's extension to `.json`. This requires authentication
with a Voice-scoped API token.
`GET https://example.signalwire.com/api/laml/2010-04-01/Accounts/{AccountSid}/Recordings/{Sid}.json`
#### Permissions
The API token used to authenticate must have the following scopes enabled to make a successful request: _Voice_.
This permission is only required for authenticated requests to retrieve recording metadata (.json extension).
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/RecordingsAccountSidPath'
- $ref: '#/components/parameters/RecordingSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/RecordingResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recordings
delete:
operationId: delete_recording
summary: Delete a Recording.
description: |-
Deletes one saved voice recording by SID and returns no body on success. This removes the recording media without deleting its call or conference record. SignalWire REST recordings and Video Room recordings have separate delete operations.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/RecordingsAccountSidPath'
- $ref: '#/components/parameters/RecordingSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recordings
/Accounts/{AccountSid}/Transcriptions:
get:
operationId: list_transcriptions
summary: List all Transcriptions
description: |-
Lists saved text transcriptions created from the account's voice recordings. Each transcription has a SID used for retrieval or deletion. For live call transcription commands rather than saved recording transcripts, use the [Calling API](/docs/apis/rest/calls/call-commands). Results are ordered by creation date, newest first.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/TranscriptionsAccountSidPath'
- name: DateCreated
in: query
required: false
description: Filter by transcriptions created on this exact date (RFC 2822 format).
schema:
type: string
explode: false
- name: DateCreated<
in: query
required: false
description: Filter by transcriptions created before this date (RFC 2822 format).
schema:
type: string
explode: false
- name: DateCreated>
in: query
required: false
description: Filter by transcriptions created after this date (RFC 2822 format).
schema:
type: string
explode: false
- name: Page
in: query
required: false
description: The page number to retrieve (zero-indexed).
schema:
type: integer
format: int32
minimum: 0
default: 0
explode: false
- name: PageSize
in: query
required: false
description: The number of results per page. Default is 50, maximum is 1000.
schema:
type: integer
format: int32
minimum: 1
maximum: 1000
default: 50
explode: false
- name: PageToken
in: query
required: false
description: Token for cursor-based pagination. Required when navigating to pages beyond the first.
schema:
type: string
explode: false
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/TranscriptionListResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recording Transcriptions
/Accounts/{AccountSid}/Transcriptions/{Sid}:
get:
operationId: retrieve_transcription
summary: Retrieve a Transcription
description: |-
Retrieves one saved recording transcription by SID so you can inspect the resulting text and processing outcome. Use [List all Transcriptions](/docs/compatibility-api/rest/recording-transcriptions/list-transcriptions) to discover SIDs; this is not a live transcription stream.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/TranscriptionsAccountSidPath'
- $ref: '#/components/parameters/TranscriptionSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/TranscriptionResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recording Transcriptions
delete:
operationId: delete_transcription
summary: Delete a Recording Transcription
description: |-
Deletes one saved recording transcription from the account and returns no body on success. This removes the transcript without deleting its source recording. Live Calling API transcription is controlled through call commands instead.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Voice_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/TranscriptionsAccountSidPath'
- $ref: '#/components/parameters/TranscriptionSidPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Recording Transcriptions
/Accounts/{AccountSid}/tokens:
post:
operationId: create_token
summary: Generate a new API Token
description: |-
Creates a project API token for server-side REST authentication within the project. It remains usable until you delete it or remove required permissions. Client applications should receive a service-specific Chat, PubSub, Room, or Subscriber Token instead.
For the SignalWire REST API's project route, use [Create API token](/docs/apis/rest/project-tokens/create-token).
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/TokensAccountSidPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/TokenResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The token request could not be processed due to validation errors. Check the error details for the specific issue.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityTokenValidationError'
tags:
- Tokens
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/CreateTokenRequest'
/Accounts/{AccountSid}/tokens/{token_id}:
patch:
operationId: update_token
summary: Update an API Token
description: |-
Changes the name or enabled permission categories of an existing project API token. For the SignalWire REST API's project route, use [Update API token](/docs/apis/rest/project-tokens/update-token).
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/TokensAccountSidPath'
- $ref: '#/components/parameters/TokenIdPath'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/TokenResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The token request could not be processed due to validation errors. Check the error details for the specific issue.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityTokenValidationError'
tags:
- Tokens
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateTokenRequest'
delete:
operationId: delete_token
summary: Delete an API Token
description: |-
Permanently revokes and deletes a project API token. Use it when a server-side credential has been exposed, retired, or replaced. For the SignalWire REST API's project route, use [Delete API token](/docs/apis/rest/project-tokens/delete-token).
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/TokensAccountSidPath'
- $ref: '#/components/parameters/TokenIdPath'
responses:
'204':
description: 204 No Content response.
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Tokens
/Accounts/{Sid}:
get:
operationId: get_account
summary: Find an Account by ID
description: |-
Retrieves one project as an Account by SID. Use it when an integration identifies projects with Account SIDs; use [Retrieve a project](/docs/apis/rest/projects/get-project) for the SignalWire REST representation.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountPathSid'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AccountResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Accounts
post:
operationId: update_account
summary: Update an Account
description: |-
Renames a project through its Account resource. `FriendlyName` is required and is the only attribute this operation can change; account status cannot be changed here. Use [Update a project](/docs/apis/rest/projects/update-project) for JSON requests and project security settings.
#### Permissions
The API token used to authenticate must have the following scope(s) enabled to make a successful request: _Management_.
[Learn more about API scopes](/docs/platform/your-signalwire-api-space).
parameters:
- $ref: '#/components/parameters/AccountPathSid'
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/AccountResponse'
'400':
description: The request was invalid or cannot be processed. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'401':
description: Authentication failed. Please verify your credentials and try again.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'404':
description: The requested resource was not found. Please verify the resource identifier.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
'422':
description: The request could not be processed due to validation errors. Check the error details for more information.
content:
application/json:
schema:
$ref: '#/components/schemas/CompatibilityErrorResponse'
tags:
- Accounts
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdateAccountRequest'
security:
- SignalWireBasicAuth: []
components:
parameters:
AccountPathSid:
name: Sid
in: path
required: true
description: The Project ID that uniquely identifies the Project to retrieve.
schema:
$ref: '#/components/schemas/uuid'
AccountSidPath:
name: AccountSid
in: path
required: true
description: The Account ID that has the Application.
schema:
$ref: '#/components/schemas/uuid'
ApplicationPathSid:
name: Sid
in: path
required: true
description: The Application ID that uniquely identifies the Application.
schema:
$ref: '#/components/schemas/uuid'
AvailablePhoneNumbersAccountSidPath:
name: AccountSid
in: path
required: true
description: The Project ID that uniquely identifies the Account to retrieve.
schema:
$ref: '#/components/schemas/uuid'
CallSidPath:
name: Sid
in: path
required: true
description: The unique identifier for the call.
schema:
$ref: '#/components/schemas/uuid'
CallSidPathForRecording:
name: CallSid
in: path
required: true
description: The unique identifier for the call.
schema:
$ref: '#/components/schemas/uuid'
CallsAccountSidPath:
name: AccountSid
in: path
required: true
description: The Project ID that uniquely identifies the Account.
schema:
$ref: '#/components/schemas/uuid'
ConferenceRecordingSidPath:
name: Sid
in: path
required: true
description: The unique identifier for the recording.
schema:
$ref: '#/components/schemas/uuid'
ConferenceSidPath:
name: Sid
in: path
required: true
description: The unique identifier for this conference.
schema:
$ref: '#/components/schemas/uuid'
ConferenceSidPathForParticipant:
name: ConferenceSid
in: path
required: true
description: The unique identifier for the conference this participant is in.
schema:
$ref: '#/components/schemas/uuid'
ConferenceStreamSidPath:
name: Sid
in: path
required: true
description: The unique identifier for the stream.
schema:
$ref: '#/components/schemas/uuid'
ConferencesAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account that created this conference.
schema:
$ref: '#/components/schemas/uuid'
CxmlScriptSidPath:
name: Sid
in: path
required: true
description: The unique identifier of the cXML script.
schema:
$ref: '#/components/schemas/uuid'
CxmlScriptsAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account this script is associated with.
schema:
$ref: '#/components/schemas/uuid'
FaxSidPath:
name: Sid
in: path
required: true
description: The Fax ID that uniquely identifies the Fax.
schema:
$ref: '#/components/schemas/uuid'
FaxSidPathForMedia:
name: FaxSid
in: path
required: true
description: The Fax ID that uniquely identifies the Fax.
schema:
$ref: '#/components/schemas/uuid'
FaxesAccountSidPath:
name: AccountSid
in: path
required: true
description: The Project ID that uniquely identifies the Account.
schema:
$ref: '#/components/schemas/uuid'
ImportedPhoneNumbersAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account that is associated with this phone number.
schema:
$ref: '#/components/schemas/uuid'
IncomingPhoneNumberSidPath:
name: Sid
in: path
required: true
description: The unique identifier of the phone number.
schema:
$ref: '#/components/schemas/uuid'
IncomingPhoneNumbersAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account that is associated with this phone number.
schema:
$ref: '#/components/schemas/uuid'
IsoCountryPath:
name: IsoCountry
in: path
required: true
description: The ISO country code of the number.
schema:
type: string
MessageSidPath:
name: Sid
in: path
required: true
description: A unique ID that identifies this specific message.
schema:
$ref: '#/components/schemas/uuid'
MessageSidPathForMedia:
name: MessageSid
in: path
required: true
description: A unique ID that identifies this specific message.
schema:
$ref: '#/components/schemas/uuid'
MessagesAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier of the project that sent or received this message.
schema:
$ref: '#/components/schemas/uuid'
ParticipantCallSidPath:
name: CallSid
in: path
required: true
description: The unique identifier for the Participant call connected to this conference.
schema:
$ref: '#/components/schemas/uuid'
QueueMemberCallSidPath:
name: CallSid
in: path
required: true
description: The unique identifier for the call, or the special value 'Front' to reference the member at the front of the queue.
schema:
type: string
QueueSidPath:
name: Sid
in: path
required: true
description: The unique identifier for the queue.
schema:
$ref: '#/components/schemas/uuid'
QueueSidPathForMembers:
name: QueueSid
in: path
required: true
description: The unique identifier for the queue.
schema:
$ref: '#/components/schemas/uuid'
QueuesAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account this Queue is associated with.
schema:
$ref: '#/components/schemas/uuid'
RecordingSidPath:
name: Sid
in: path
required: true
description: The unique identifier for the recording.
schema:
$ref: '#/components/schemas/uuid'
RecordingsAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account that is associated with this recording.
schema:
$ref: '#/components/schemas/uuid'
TokenIdPath:
name: token_id
in: path
required: true
description: The unique identifier of the project API token.
schema:
$ref: '#/components/schemas/uuid'
TokensAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the project you want to use to authenticate this request.
schema:
$ref: '#/components/schemas/uuid'
TranscriptionSidPath:
name: Sid
in: path
required: true
description: The unique identifier for the transcription.
schema:
$ref: '#/components/schemas/uuid'
TranscriptionsAccountSidPath:
name: AccountSid
in: path
required: true
description: The unique identifier for the account that created this transcription.
schema:
$ref: '#/components/schemas/uuid'
schemas:
Account:
type: object
required:
- sid
- friendly_name
- status
- auth_token
- date_created
- date_updated
- type
- owner_account_sid
- region_preference
- uri
- subproject
- signing_key
- subresource_uris
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for this Project.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
friendly_name:
type: string
description: The name of the Project.
examples:
- My Project
status:
allOf:
- $ref: '#/components/schemas/AccountStatus'
description: The status of the Project. Always 'active'.
auth_token:
type: string
description: The authorization token for this Project. Always returns 'redacted' for security.
examples:
- redacted
date_created:
type: string
description: The date and time this Project was created, in RFC 2822 format.
examples:
- Sat, 15 Sep 2018 10:00:00 +0000
date_updated:
type: string
description: The date and time this Project was last updated, in RFC 2822 format.
examples:
- Sat, 16 Sep 2018 10:00:00 +0000
type:
allOf:
- $ref: '#/components/schemas/AccountType'
description: The type of the Project. Always 'Full'.
owner_account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The Project ID of the parent project. For parent projects, this is the same as sid.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
region_preference:
type: string
description: The preferred region for the Project.
examples:
- us-east
uri:
type: string
description: The URI for the Project.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af
subproject:
type: boolean
description: Whether this project is a sub-project of another project.
examples:
- false
signing_key:
anyOf:
- type: string
- type: 'null'
description: The signing key for the Project. Only returned once when a subproject is created. Subsequent requests return null.
examples:
- null
subresource_uris:
allOf:
- $ref: '#/components/schemas/SubresourceUris'
description: A map of URIs for sub-resources linked to this Project.
unevaluatedProperties:
not: {}
description: Account/Project model representing a SignalWire project.
AccountListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- accounts
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page. Null if there are no more results.
examples:
- /api/laml/2010-04-01/Accounts?Page=1&PageSize=50
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page. Null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number (zero-indexed).
examples:
- 0
page_size:
type: integer
format: int32
description: The number of results per page.
examples:
- 50
accounts:
type: array
items:
$ref: '#/components/schemas/Account'
description: List of accounts.
unevaluatedProperties:
not: {}
description: Response containing a list of accounts.
AccountResponse:
type: object
required:
- sid
- friendly_name
- status
- auth_token
- date_created
- date_updated
- type
- owner_account_sid
- region_preference
- uri
- subproject
- signing_key
- subresource_uris
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for this Project.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
friendly_name:
type: string
description: The name of the Project.
examples:
- My Project
status:
allOf:
- $ref: '#/components/schemas/AccountStatus'
description: The status of the Project. Always 'active'.
auth_token:
type: string
description: The authorization token for this Project. Always returns 'redacted' for security.
examples:
- redacted
date_created:
type: string
description: The date and time this Project was created, in RFC 2822 format.
examples:
- Sat, 15 Sep 2018 10:00:00 +0000
date_updated:
type: string
description: The date and time this Project was last updated, in RFC 2822 format.
examples:
- Sat, 16 Sep 2018 10:00:00 +0000
type:
allOf:
- $ref: '#/components/schemas/AccountType'
description: The type of the Project. Always 'Full'.
owner_account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The Project ID of the parent project. For parent projects, this is the same as sid.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
region_preference:
type: string
description: The preferred region for the Project.
examples:
- us-east
uri:
type: string
description: The URI for the Project.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af
subproject:
type: boolean
description: Whether this project is a sub-project of another project.
examples:
- false
signing_key:
anyOf:
- type: string
- type: 'null'
description: The signing key for the Project. Only returned once when a subproject is created. Subsequent requests return null.
examples:
- null
subresource_uris:
allOf:
- $ref: '#/components/schemas/SubresourceUris'
description: A map of URIs for sub-resources linked to this Project.
unevaluatedProperties:
not: {}
description: Response containing a single account.
AccountStatus:
type: string
enum:
- active
description: The status of the Project.
AccountType:
type: string
enum:
- Full
description: The type of the Project.
AddressRequirements:
type: string
enum:
- none
- any
- local
- foreign
description: Address requirements.
AnsweredBy:
type: string
enum:
- human
- machine
description: Who/what answered the call.
Application:
type: object
required:
- sid
- account_sid
- api_version
- date_created
- date_updated
- friendly_name
- uri
- voice_url
- voice_method
- voice_fallback_url
- voice_fallback_method
- status_callback
- status_callback_method
- voice_caller_id_lookup
- sms_url
- sms_method
- sms_fallback_url
- sms_fallback_method
- sms_status_callback
- sms_status_callback_method
- message_status_callback
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the Application.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the Account that created this Application.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
date_created:
type: string
description: The date, in RFC 2822 GMT format, this Application was created.
examples:
- Sat, 15 Sept 2018 10:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this Application was updated.
examples:
- Sat, 16 Sept 2018 10:00:00 +0000
friendly_name:
type: string
description: A named unique identifier for the resource.
examples:
- My Friendly Name
uri:
type: string
description: The URI for this Application.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Applications/b3877c40-da60-4998-90ad-b792e98472af.json
voice_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when a phone number receives a call or fax.
examples:
- http://example.com
voice_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `VoiceUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
voice_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL SignalWire will request if errors occur when fetching the `VoiceUrl`.
examples:
- http://example.com
voice_fallback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `VoiceFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to pass status updates to the Application.
examples:
- http://example.com
status_callback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to the `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
voice_caller_id_lookup:
anyOf:
- type: boolean
- type: 'null'
description: Whether or not to look up a caller's ID from the database. Always null.
examples:
- null
sms_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when an SMS is received.
examples:
- http://example.com
sms_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `SmsUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
sms_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL SignalWire will request if errors occur when fetching the `SmsUrl`.
examples:
- http://www.example.com/sms-fallback
sms_fallback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
sms_status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to receive status updates for messages sent via this Application.
examples:
- http://www.example.com/sms-status-callback
sms_status_callback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `SmsStatusCallback` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
message_status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to receive status updates for messages sent via this Application.
examples:
- http://www.example.com/sms-status-callback
unevaluatedProperties:
not: {}
description: Application model representing a cXML application.
ApplicationListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- applications
properties:
uri:
type: string
description: The URI for this resource.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Applications?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI for the first page of results.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Applications?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI for the next page of results. Null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Applications?Page=1&PageSize=50
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI for the previous page of results. Null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number. Zero-indexed.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of results per page.
examples:
- 50
applications:
type: array
items:
$ref: '#/components/schemas/Application'
description: List of applications.
unevaluatedProperties:
not: {}
description: Response containing a list of applications.
ApplicationResponse:
type: object
required:
- sid
- account_sid
- api_version
- date_created
- date_updated
- friendly_name
- uri
- voice_url
- voice_method
- voice_fallback_url
- voice_fallback_method
- status_callback
- status_callback_method
- voice_caller_id_lookup
- sms_url
- sms_method
- sms_fallback_url
- sms_fallback_method
- sms_status_callback
- sms_status_callback_method
- message_status_callback
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the Application.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the Account that created this Application.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
date_created:
type: string
description: The date, in RFC 2822 GMT format, this Application was created.
examples:
- Sat, 15 Sept 2018 10:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this Application was updated.
examples:
- Sat, 16 Sept 2018 10:00:00 +0000
friendly_name:
type: string
description: A named unique identifier for the resource.
examples:
- My Friendly Name
uri:
type: string
description: The URI for this Application.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Applications/b3877c40-da60-4998-90ad-b792e98472af.json
voice_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when a phone number receives a call or fax.
examples:
- http://example.com
voice_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `VoiceUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
voice_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL SignalWire will request if errors occur when fetching the `VoiceUrl`.
examples:
- http://example.com
voice_fallback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `VoiceFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to pass status updates to the Application.
examples:
- http://example.com
status_callback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to the `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
voice_caller_id_lookup:
anyOf:
- type: boolean
- type: 'null'
description: Whether or not to look up a caller's ID from the database. Always null.
examples:
- null
sms_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when an SMS is received.
examples:
- http://example.com
sms_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `SmsUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
sms_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL SignalWire will request if errors occur when fetching the `SmsUrl`.
examples:
- http://www.example.com/sms-fallback
sms_fallback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
sms_status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to receive status updates for messages sent via this Application.
examples:
- http://www.example.com/sms-status-callback
sms_status_callback_method:
anyOf:
- type: string
- type: 'null'
description: Whether the request to `SmsStatusCallback` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
message_status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to receive status updates for messages sent via this Application.
examples:
- http://www.example.com/sms-status-callback
unevaluatedProperties:
not: {}
description: Response containing a single application.
AvailablePhoneNumber:
type: object
required:
- friendly_name
- phone_number
- lata
- locality
- rate_center
- latitude
- longitude
- region
- postal_code
- iso_country
- capabilities
- beta
properties:
friendly_name:
type: string
description: A formatted version of the number.
examples:
- (253) 218-6751
phone_number:
type: string
description: The number in E.164 format.
examples:
- '+12532186751'
lata:
anyOf:
- type: string
- type: 'null'
description: The LATA of the number. Always null.
examples:
- null
locality:
anyOf:
- type: string
- type: 'null'
description: The locality/city of the number. Always null.
examples:
- null
rate_center:
anyOf:
- type: string
- type: 'null'
description: The rate center of the number. Only available for numbers in US and Canada.
examples:
- AUBURN
latitude:
anyOf:
- type: string
- type: 'null'
description: The latitude of the number. Always null.
examples:
- null
longitude:
anyOf:
- type: string
- type: 'null'
description: The longitude of the number. Always null.
examples:
- null
region:
anyOf:
- type: string
- type: 'null'
description: The state or province abbreviation of the number. Only available for numbers in US and Canada.
examples:
- WA
postal_code:
anyOf:
- type: string
- type: 'null'
description: The postal/zip code of the number. Always null.
examples:
- null
iso_country:
type: string
description: The ISO country code of the number.
examples:
- US
capabilities:
allOf:
- $ref: '#/components/schemas/PhoneNumberCapabilities'
description: Whether or not a number can receive calls and messages.
beta:
type: boolean
description: Always `false`. Retained for response-shape compatibility.
examples:
- false
unevaluatedProperties:
not: {}
description: Available phone number model.
AvailablePhoneNumberByCountryResponse:
type: object
required:
- country_code
- country
- uri
- beta
- subresource_uris
properties:
country_code:
type: string
description: The ISO country code of the number.
examples:
- US
country:
type: string
description: The country the number is from.
examples:
- United States
uri:
type: string
description: The URI for the API call.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers/US
beta:
type: boolean
description: New numbers on SignalWire are marked as `beta`.
examples:
- false
subresource_uris:
allOf:
- $ref: '#/components/schemas/CountrySubresourceUris'
description: URIs for subresources.
unevaluatedProperties:
not: {}
description: Response containing available phone number resources for a specific country.
AvailablePhoneNumberListResponse:
type: object
required:
- uri
- available_phone_numbers
properties:
uri:
type: string
description: The URI for the API call.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers/US/Local
available_phone_numbers:
type: array
items:
$ref: '#/components/schemas/AvailablePhoneNumber'
description: List of available phone numbers.
unevaluatedProperties:
not: {}
description: Response containing a list of available phone numbers.
AvailablePhoneNumberResourcesResponse:
type: object
required:
- uri
- countries
properties:
uri:
type: string
description: The URI for the API call.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers
countries:
type: array
items:
$ref: '#/components/schemas/CountryResource'
description: List of available countries.
unevaluatedProperties:
not: {}
description: Response containing a list of available phone number resources (countries).
Call:
type: object
required:
- sid
- account_sid
- date_created
- date_updated
- parent_call_sid
- to
- formatted_to
- to_formatted
- from
- formatted_from
- from_formatted
- phone_number_sid
- status
- start_time
- end_time
- duration
- price
- price_unit
- direction
- answered_by
- api_version
- forwarded_from
- caller_name
- uri
- subresource_uris
- annotation
- group_sid
- audio_in_mos
- sip_result_code
- audio_rtt_avg
- audio_rtt_min
- audio_rtt_max
- audio_out_jitter_min
- audio_out_jitter_max
- audio_out_jitter_avg
- audio_out_lost
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the call.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this call.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
date_created:
type: string
description: The date, in RFC 2822 GMT format, this call was created.
examples:
- Wed, 19 Sep 2018 20:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this call was updated.
examples:
- Wed, 19 Sep 2018 21:00:00 +0000
parent_call_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the call that created this call.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
to:
type: string
description: The address that received the call.
examples:
- '+13105678901'
formatted_to:
type: string
description: The formatted number that received the call.
examples:
- (310) 567-8901
to_formatted:
type: string
description: The formatted number that received the call. Alias for formatted_to.
examples:
- (310) 567-8901
from:
type: string
description: The address that initiated the call.
examples:
- '+13103384645'
formatted_from:
type: string
description: The formatted number that initiated the call.
examples:
- (310) 338-4645
from_formatted:
type: string
description: The formatted number that initiated the call. Alias for formatted_from.
examples:
- (310) 338-4645
phone_number_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472pn
status:
allOf:
- $ref: '#/components/schemas/CallStatus'
description: The status of the call.
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 GMT format, on which the call began.
examples:
- Wed, 19 Sep 2018 20:00:01 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 GMT format, on which the call was terminated.
examples:
- Fri, 21 Sep 2018 10:00:00 +0000
duration:
type: integer
format: int32
description: The duration, in seconds, of the call.
examples:
- 20
price:
anyOf:
- type: number
format: float
- type: 'null'
description: The charge for the call.
examples:
- 0.003
price_unit:
type: string
description: The currency, in ISO 4127 format, for the price of the call.
examples:
- USD
direction:
allOf:
- $ref: '#/components/schemas/CallDirection'
description: The direction of the call.
answered_by:
anyOf:
- $ref: '#/components/schemas/AnsweredBy'
- type: 'null'
description: Who/what the call was answered by.
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
forwarded_from:
anyOf:
- type: string
- type: 'null'
description: The number this call was forwarded from. Always null.
examples:
- null
caller_name:
anyOf:
- type: string
- type: 'null'
description: The caller name. Always null.
examples:
- null
uri:
type: string
description: The URI for the call.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls/b3877c40-da60-4998-90ad-b792e98472ca.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/CallSubresourceUris'
description: A Map of available sub-resources.
annotation:
anyOf:
- type: string
- type: 'null'
description: The annotation for the call. Always null.
examples:
- null
group_sid:
anyOf:
- type: string
- type: 'null'
description: The group SID for the call. Always null.
examples:
- null
audio_in_mos:
anyOf:
- type: number
format: float
- type: 'null'
description: The Mean Opinion Score for audio quality (1.0-5.0).
examples:
- 4.5
sip_result_code:
anyOf:
- type: string
- type: 'null'
description: The SIP result code for the call.
examples:
- '200'
audio_rtt_avg:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The average round-trip time for audio in milliseconds.
examples:
- 50
audio_rtt_min:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The minimum round-trip time for audio in milliseconds.
examples:
- 20
audio_rtt_max:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The maximum round-trip time for audio in milliseconds.
examples:
- 100
audio_out_jitter_min:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The minimum outbound audio jitter in milliseconds.
examples:
- 1
audio_out_jitter_max:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The maximum outbound audio jitter in milliseconds.
examples:
- 10
audio_out_jitter_avg:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The average outbound audio jitter in milliseconds.
examples:
- 5
audio_out_lost:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The number of outbound audio packets lost.
examples:
- 0
unevaluatedProperties:
not: {}
description: Call model representing a voice call.
CallDirection:
type: string
enum:
- inbound
- outbound
description: Call direction.
CallListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- calls
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls?Page=1&PageSize=50&PageToken=PAxxxxxxxxxx
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
calls:
type: array
items:
$ref: '#/components/schemas/Call'
description: List of calls.
unevaluatedProperties:
not: {}
description: Response containing a list of calls.
CallRecordingResponse:
type: object
required:
- sid
- account_sid
- api_version
- call_sid
- conference_sid
- channel
- channels
- date_created
- date_updated
- start_time
- end_time
- duration
- price
- price_unit
- source
- status
- error_code
- uri
- subresource_uris
- encryption_details
- trim
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording.
examples:
- 19e436af-5688-4307-b03b-bdb2b42b8142
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this recording.
examples:
- 720796a0-8ee9-4350-83bd-2d07a3121f1e
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
call_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the call that is associated with this recording. Null if this is a conference recording.
examples:
- 43bb71ee-553f-4074-bb20-8e2747647cce
conference_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the conference that is associated with this recording. Null if this is a call recording.
examples:
- null
channel:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording (singular key). Returns '1' for mono or '2' for stereo.
examples:
- '1'
channels:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording. Returns '1' for mono or '2' for stereo.
examples:
- '1'
date_created:
type: string
description: The date, in RFC 2822 format, this recording was created.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this recording was updated.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording started.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording ended.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
duration:
type: integer
format: int32
description: The length, in seconds, of the recording.
examples:
- 4
price:
anyOf:
- type: string
- type: 'null'
description: The cost for the recording.
examples:
- '-0.0025'
price_unit:
type: string
description: The currency of the price of the recording.
examples:
- USD
source:
allOf:
- $ref: '#/components/schemas/RecordingSource'
description: How the recording was made.
status:
allOf:
- $ref: '#/components/schemas/RecordingStatus'
description: The status of the recording.
error_code:
anyOf:
- type: string
- type: 'null'
description: Further details about a failed recording.
examples:
- null
uri:
type: string
description: The URI of the recording.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/RecordingSubresourceUris'
description: Subresource URIs.
encryption_details:
anyOf:
- type: string
- type: 'null'
description: Encryption details. Always null.
examples:
- null
trim:
type: string
description: Whether leading and trailing silence is trimmed from a recording.
examples:
- do-not-trim
unevaluatedProperties:
not: {}
description: Response containing a single call recording.
CallResponse:
type: object
required:
- sid
- account_sid
- date_created
- date_updated
- parent_call_sid
- to
- formatted_to
- to_formatted
- from
- formatted_from
- from_formatted
- phone_number_sid
- status
- start_time
- end_time
- duration
- price
- price_unit
- direction
- answered_by
- api_version
- forwarded_from
- caller_name
- uri
- subresource_uris
- annotation
- group_sid
- audio_in_mos
- sip_result_code
- audio_rtt_avg
- audio_rtt_min
- audio_rtt_max
- audio_out_jitter_min
- audio_out_jitter_max
- audio_out_jitter_avg
- audio_out_lost
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the call.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this call.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
date_created:
type: string
description: The date, in RFC 2822 GMT format, this call was created.
examples:
- Wed, 19 Sep 2018 20:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this call was updated.
examples:
- Wed, 19 Sep 2018 21:00:00 +0000
parent_call_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the call that created this call.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
to:
type: string
description: The address that received the call.
examples:
- '+13105678901'
formatted_to:
type: string
description: The formatted number that received the call.
examples:
- (310) 567-8901
to_formatted:
type: string
description: The formatted number that received the call. Alias for formatted_to.
examples:
- (310) 567-8901
from:
type: string
description: The address that initiated the call.
examples:
- '+13103384645'
formatted_from:
type: string
description: The formatted number that initiated the call.
examples:
- (310) 338-4645
from_formatted:
type: string
description: The formatted number that initiated the call. Alias for formatted_from.
examples:
- (310) 338-4645
phone_number_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472pn
status:
allOf:
- $ref: '#/components/schemas/CallStatus'
description: The status of the call.
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 GMT format, on which the call began.
examples:
- Wed, 19 Sep 2018 20:00:01 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 GMT format, on which the call was terminated.
examples:
- Fri, 21 Sep 2018 10:00:00 +0000
duration:
type: integer
format: int32
description: The duration, in seconds, of the call.
examples:
- 20
price:
anyOf:
- type: number
format: float
- type: 'null'
description: The charge for the call.
examples:
- 0.003
price_unit:
type: string
description: The currency, in ISO 4127 format, for the price of the call.
examples:
- USD
direction:
allOf:
- $ref: '#/components/schemas/CallDirection'
description: The direction of the call.
answered_by:
anyOf:
- $ref: '#/components/schemas/AnsweredBy'
- type: 'null'
description: Who/what the call was answered by.
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
forwarded_from:
anyOf:
- type: string
- type: 'null'
description: The number this call was forwarded from. Always null.
examples:
- null
caller_name:
anyOf:
- type: string
- type: 'null'
description: The caller name. Always null.
examples:
- null
uri:
type: string
description: The URI for the call.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls/b3877c40-da60-4998-90ad-b792e98472ca.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/CallSubresourceUris'
description: A Map of available sub-resources.
annotation:
anyOf:
- type: string
- type: 'null'
description: The annotation for the call. Always null.
examples:
- null
group_sid:
anyOf:
- type: string
- type: 'null'
description: The group SID for the call. Always null.
examples:
- null
audio_in_mos:
anyOf:
- type: number
format: float
- type: 'null'
description: The Mean Opinion Score for audio quality (1.0-5.0).
examples:
- 4.5
sip_result_code:
anyOf:
- type: string
- type: 'null'
description: The SIP result code for the call.
examples:
- '200'
audio_rtt_avg:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The average round-trip time for audio in milliseconds.
examples:
- 50
audio_rtt_min:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The minimum round-trip time for audio in milliseconds.
examples:
- 20
audio_rtt_max:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The maximum round-trip time for audio in milliseconds.
examples:
- 100
audio_out_jitter_min:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The minimum outbound audio jitter in milliseconds.
examples:
- 1
audio_out_jitter_max:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The maximum outbound audio jitter in milliseconds.
examples:
- 10
audio_out_jitter_avg:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The average outbound audio jitter in milliseconds.
examples:
- 5
audio_out_lost:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The number of outbound audio packets lost.
examples:
- 0
unevaluatedProperties:
not: {}
description: Response containing a single call.
CallStatus:
type: string
enum:
- queued
- ringing
- in-progress
- canceled
- completed
- busy
- failed
- no-answer
description: Call status.
CallStreamResponse:
type: object
required:
- sid
- account_sid
- call_sid
- name
- status
- date_updated
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the stream.
examples:
- b3877c40-da60-4998-90ad-b792e98472st
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
call_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the call.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
name:
type: string
description: The name of the stream.
examples:
- my_first_stream
status:
allOf:
- $ref: '#/components/schemas/StreamStatus'
description: The status of the stream.
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this stream was updated.
examples:
- Wed, 19 Sep 2018 21:00:00 +0000
uri:
type: string
description: The URI for the stream.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls/b3877c40-da60-4998-90ad-b792e98472ca/Streams/b3877c40-da60-4998-90ad-b792e98472st.json
unevaluatedProperties:
not: {}
description: Response containing a single call stream.
CallSubresourceUris:
type: object
required:
- notifications
- recordings
properties:
notifications:
anyOf:
- type: string
- type: 'null'
description: The URI for notifications. Always null.
examples:
- null
recordings:
type: string
description: The URI for recordings.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls/b3877c40-da60-4998-90ad-b792e98472ca/Recordings.json
unevaluatedProperties:
not: {}
description: Call subresource URIs.
CompatibilityErrorArrayItem:
type: object
properties:
code:
type: string
description: The numeric string identifying the API error code
examples:
- '30010'
message:
type: string
description: Error text
examples:
- Maxpriceperminute was exceeded. This call's cost is 0.008 per minute.
more_info:
type: string
description: Url for more information on error code
examples:
- https://signalwire.com/docs/rest/compatibility-api/error-codes
unevaluatedProperties:
not: {}
description: Error item in the errors array format.
CompatibilityErrorArrayResponse:
type: object
properties:
errors:
type: array
items:
$ref: '#/components/schemas/CompatibilityErrorArrayItem'
description: A list of errors
unevaluatedProperties:
not: {}
description: Error response with errors array format.
CompatibilityErrorResponse:
type: object
required:
- code
- message
- more_info
- status
properties:
code:
type: integer
format: int32
description: Error code.
examples:
- 20003
message:
type: string
description: Error message.
examples:
- Authentication failed
more_info:
type: string
description: URL for more information about the error.
examples:
- https://signalwire.com/docs/compatibility-api/reference/errors
status:
type: integer
format: int32
description: HTTP status code.
examples:
- 401
unevaluatedProperties:
not: {}
description: Error response model.
CompatibilityErrorStringArrayResponse:
type: object
required:
- errors
properties:
errors:
type: array
items:
type: string
description: List of validation error messages.
examples:
- - Validation error message
unevaluatedProperties:
not: {}
description: Error response with errors array of strings format.
CompatibilityImportedPhoneNumberError:
type: object
properties:
code:
type: string
description: The error code.
examples:
- '10000'
message:
type: string
description: A human-readable error message.
examples:
- Number type can't be blank
more_info:
type: string
description: A URL to more information about the error.
examples:
- https://signalwire.com/docs/rest/compatibility-api/overview/error-codes
status:
type: integer
format: int32
description: The HTTP status code.
examples:
- 400
unevaluatedProperties:
not: {}
description: Error response model with string code for ImportedPhoneNumbers.
CompatibilityTokenValidationError:
type: object
properties:
type:
type: string
description: Error type.
code:
type: string
description: Error code.
message:
type: string
description: Error message.
attribute:
type: string
description: Request parameter associated with this error.
url:
type: string
format: uri
description: Link to developer resource for this error.
unevaluatedProperties:
not: {}
description: Token validation error response model.
Conference:
type: object
required:
- sid
- account_sid
- date_created
- date_updated
- friendly_name
- status
- api_version
- region
- uri
- subresource_uris
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472cf
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
date_created:
type: string
description: The date, in RFC 2822 format, this conference was created.
examples:
- Mon, 24 Sept 2018 21:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this conference was updated.
examples:
- Tue, 25 Sept 2018 20:00:00 +0000
friendly_name:
type: string
description: A description, up to 64 characters, of the conference room.
examples:
- My Conference Room
status:
allOf:
- $ref: '#/components/schemas/ConferenceStatus'
description: The status of this conference.
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
region:
type: string
description: The region where this conference audio was mixed.
examples:
- us1
uri:
type: string
description: The URI for this conference.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/ConferenceSubresourceUris'
description: The links to associated subresources.
unevaluatedProperties:
not: {}
description: Conference model.
ConferenceListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- conferences
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences?PageToken=PA1234
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences?Page=1&PageToken=PA5678
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
conferences:
type: array
items:
$ref: '#/components/schemas/Conference'
description: List of conferences.
unevaluatedProperties:
not: {}
description: Response containing a list of conferences.
ConferenceParticipant:
type: object
required:
- account_sid
- call_sid
- call_sid_to_coach
- coaching
- conference_sid
- date_created
- status
- date_updated
- end_conference_on_exit
- muted
- hold
- start_conference_on_enter
- uri
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
call_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the Participant call connected to this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
call_sid_to_coach:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier of the participant who is being coached.
examples:
- b3877c40-da60-4998-90ad-b792e98472co
coaching:
type: boolean
description: Whether the participant is coaching another call.
examples:
- false
conference_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the conference this participant is in.
examples:
- b3877c40-da60-4998-90ad-b792e98472cf
date_created:
type: string
description: The date, in RFC 2822 format, this conference participant was created.
examples:
- Mon, 24 Sept 2018 21:00:00 +0000
status:
allOf:
- $ref: '#/components/schemas/ParticipantStatus'
description: The status of the conference call.
date_updated:
type: string
description: The date, in RFC 2822 format, this conference participant was updated.
examples:
- Tue, 25 Sept 2018 20:00:00 +0000
end_conference_on_exit:
type: boolean
description: Whether or not a conference ends when a participant leaves the conference call.
examples:
- false
muted:
type: boolean
description: Whether or not a participant is muted.
examples:
- false
hold:
type: boolean
description: Whether or not a participant is on hold.
examples:
- false
start_conference_on_enter:
type: boolean
description: Whether or not a conference will begin when this participant enters the conference call.
examples:
- true
uri:
type: string
description: The URI for this conference participant.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Participants/b3877c40-da60-4998-90ad-b792e98472ca.json
unevaluatedProperties:
not: {}
description: Conference participant model.
ConferenceParticipantListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- participants
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Participants?PageToken=PA1234
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Participants
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Participants?Page=1&PageToken=PA5678
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
participants:
type: array
items:
$ref: '#/components/schemas/ConferenceParticipant'
description: List of participants.
unevaluatedProperties:
not: {}
description: Response containing a list of conference participants.
ConferenceParticipantResponse:
type: object
required:
- account_sid
- call_sid
- call_sid_to_coach
- coaching
- conference_sid
- date_created
- status
- date_updated
- end_conference_on_exit
- muted
- hold
- start_conference_on_enter
- uri
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
call_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the Participant call connected to this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
call_sid_to_coach:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier of the participant who is being coached.
examples:
- b3877c40-da60-4998-90ad-b792e98472co
coaching:
type: boolean
description: Whether the participant is coaching another call.
examples:
- false
conference_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the conference this participant is in.
examples:
- b3877c40-da60-4998-90ad-b792e98472cf
date_created:
type: string
description: The date, in RFC 2822 format, this conference participant was created.
examples:
- Mon, 24 Sept 2018 21:00:00 +0000
status:
allOf:
- $ref: '#/components/schemas/ParticipantStatus'
description: The status of the conference call.
date_updated:
type: string
description: The date, in RFC 2822 format, this conference participant was updated.
examples:
- Tue, 25 Sept 2018 20:00:00 +0000
end_conference_on_exit:
type: boolean
description: Whether or not a conference ends when a participant leaves the conference call.
examples:
- false
muted:
type: boolean
description: Whether or not a participant is muted.
examples:
- false
hold:
type: boolean
description: Whether or not a participant is on hold.
examples:
- false
start_conference_on_enter:
type: boolean
description: Whether or not a conference will begin when this participant enters the conference call.
examples:
- true
uri:
type: string
description: The URI for this conference participant.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Participants/b3877c40-da60-4998-90ad-b792e98472ca.json
unevaluatedProperties:
not: {}
description: Response containing a single conference participant.
ConferenceRecording:
type: object
required:
- sid
- account_sid
- api_version
- call_sid
- conference_sid
- channel
- channels
- date_created
- date_updated
- start_time
- end_time
- duration
- price
- price_unit
- source
- status
- error_code
- uri
- subresource_uris
- encryption_details
- trim
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording.
examples:
- 19e436af-5688-4307-b03b-bdb2b42b8142
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this recording.
examples:
- 720796a0-8ee9-4350-83bd-2d07a3121f1e
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
call_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the call. Always null for conference recordings.
examples:
- null
conference_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the conference that is associated with this recording.
examples:
- 43bb71ee-553f-4074-bb20-8e2747647cce
channel:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording (singular key). Returns '1' for mono or '2' for stereo.
examples:
- '1'
channels:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording. Returns '1' for mono or '2' for stereo.
examples:
- '1'
date_created:
type: string
description: The date, in RFC 2822 format, this recording was created.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this recording was updated.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording started.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording ended.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
duration:
type: integer
format: int32
description: The length, in seconds, of the recording.
examples:
- 4
price:
anyOf:
- type: string
- type: 'null'
description: The cost for the recording.
examples:
- '-0.0025'
price_unit:
type: string
description: The currency of the price of the recording.
examples:
- USD
source:
allOf:
- $ref: '#/components/schemas/ConferenceRecordingSource'
description: How the recording was made.
status:
allOf:
- $ref: '#/components/schemas/ConferenceRecordingStatus'
description: The status of the recording.
error_code:
anyOf:
- type: string
- type: 'null'
description: Further details about a failed recording.
examples:
- null
uri:
type: string
description: The URI of the recording.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Conferences/43bb71ee-553f-4074-bb20-8e2747647cce/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/ConferenceRecordingSubresourceUris'
description: Subresource URIs.
encryption_details:
anyOf:
- type: string
- type: 'null'
description: Encryption details. Always null.
examples:
- null
trim:
type: string
description: Whether leading and trailing silence is trimmed from a recording.
examples:
- do-not-trim
unevaluatedProperties:
not: {}
description: Conference recording model.
ConferenceRecordingListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- recordings
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Conferences/43bb71ee-553f-4074-bb20-8e2747647cce/Recordings?PageToken=PA1234
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Conferences/43bb71ee-553f-4074-bb20-8e2747647cce/Recordings
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Conferences/43bb71ee-553f-4074-bb20-8e2747647cce/Recordings?Page=1&PageToken=PA5678
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
recordings:
type: array
items:
$ref: '#/components/schemas/ConferenceRecording'
description: List of recordings.
unevaluatedProperties:
not: {}
description: Response containing a list of conference recordings.
ConferenceRecordingResponse:
type: object
required:
- sid
- account_sid
- api_version
- call_sid
- conference_sid
- channel
- channels
- date_created
- date_updated
- start_time
- end_time
- duration
- price
- price_unit
- source
- status
- error_code
- uri
- subresource_uris
- encryption_details
- trim
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording.
examples:
- 19e436af-5688-4307-b03b-bdb2b42b8142
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this recording.
examples:
- 720796a0-8ee9-4350-83bd-2d07a3121f1e
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
call_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the call. Always null for conference recordings.
examples:
- null
conference_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the conference that is associated with this recording.
examples:
- 43bb71ee-553f-4074-bb20-8e2747647cce
channel:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording (singular key). Returns '1' for mono or '2' for stereo.
examples:
- '1'
channels:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording. Returns '1' for mono or '2' for stereo.
examples:
- '1'
date_created:
type: string
description: The date, in RFC 2822 format, this recording was created.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this recording was updated.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording started.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording ended.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
duration:
type: integer
format: int32
description: The length, in seconds, of the recording.
examples:
- 4
price:
anyOf:
- type: string
- type: 'null'
description: The cost for the recording.
examples:
- '-0.0025'
price_unit:
type: string
description: The currency of the price of the recording.
examples:
- USD
source:
allOf:
- $ref: '#/components/schemas/ConferenceRecordingSource'
description: How the recording was made.
status:
allOf:
- $ref: '#/components/schemas/ConferenceRecordingStatus'
description: The status of the recording.
error_code:
anyOf:
- type: string
- type: 'null'
description: Further details about a failed recording.
examples:
- null
uri:
type: string
description: The URI of the recording.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Conferences/43bb71ee-553f-4074-bb20-8e2747647cce/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/ConferenceRecordingSubresourceUris'
description: Subresource URIs.
encryption_details:
anyOf:
- type: string
- type: 'null'
description: Encryption details. Always null.
examples:
- null
trim:
type: string
description: Whether leading and trailing silence is trimmed from a recording.
examples:
- do-not-trim
unevaluatedProperties:
not: {}
description: Response containing a single conference recording.
ConferenceRecordingSource:
type: string
enum:
- Conference
- StartConferenceRecording
description: Recording source for conference recordings.
ConferenceRecordingStatus:
type: string
enum:
- queued
- in-progress
- paused
- resumed
- completed
- absent
- stopped
description: Recording status.
ConferenceRecordingSubresourceUris:
type: object
required:
- transcriptions
properties:
transcriptions:
type: string
description: The URI for transcriptions.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142/Transcriptions.json
unevaluatedProperties:
not: {}
description: Recording subresource URIs.
ConferenceResponse:
type: object
required:
- sid
- account_sid
- date_created
- date_updated
- friendly_name
- status
- api_version
- region
- uri
- subresource_uris
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472cf
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
date_created:
type: string
description: The date, in RFC 2822 format, this conference was created.
examples:
- Mon, 24 Sept 2018 21:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this conference was updated.
examples:
- Tue, 25 Sept 2018 20:00:00 +0000
friendly_name:
type: string
description: A description, up to 64 characters, of the conference room.
examples:
- My Conference Room
status:
allOf:
- $ref: '#/components/schemas/ConferenceStatus'
description: The status of this conference.
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
region:
type: string
description: The region where this conference audio was mixed.
examples:
- us1
uri:
type: string
description: The URI for this conference.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/ConferenceSubresourceUris'
description: The links to associated subresources.
unevaluatedProperties:
not: {}
description: Response containing a single conference.
ConferenceStatus:
type: string
enum:
- init
- in-progress
- completed
description: Conference status.
ConferenceStreamResponse:
type: object
required:
- account_sid
- conference_sid
- date_updated
- name
- sid
- status
- uri
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
conference_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the conference.
examples:
- b3877c40-da60-4998-90ad-b792e98472cf
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this stream was updated.
examples:
- Tue, 25 Sept 2018 20:00:00 +0000
name:
anyOf:
- type: string
- type: 'null'
description: The name of the stream. May be null if not specified when creating the stream.
examples:
- my_conference_stream
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the stream.
examples:
- b3877c40-da60-4998-90ad-b792e98472st
status:
allOf:
- $ref: '#/components/schemas/ConferenceStreamStatus'
description: The status of the stream.
uri:
type: string
description: The URI for the stream.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Streams/b3877c40-da60-4998-90ad-b792e98472st.json
unevaluatedProperties:
not: {}
description: Response containing a single conference stream.
ConferenceStreamStatus:
type: string
enum:
- queued
- in-progress
- stopped
description: Conference stream status.
ConferenceSubresourceUris:
type: object
required:
- participants
- recordings
properties:
participants:
type: string
description: Links to the participants.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Participants.json
recordings:
type: string
description: Links to the recordings.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences/b3877c40-da60-4998-90ad-b792e98472cf/Recordings.json
unevaluatedProperties:
not: {}
description: Conference subresource URIs.
CountryResource:
type: object
required:
- country_code
- country
- uri
- beta
- subresource_uris
properties:
country_code:
type: string
description: The ISO country code of the number.
examples:
- US
country:
type: string
description: The country the number is from.
examples:
- United States
uri:
type: string
description: The URI for the API call.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers/US
beta:
type: boolean
description: Always `false`. Retained for response-shape compatibility.
examples:
- false
subresource_uris:
allOf:
- $ref: '#/components/schemas/CountrySubresourceUris'
description: URIs for subresources.
unevaluatedProperties:
not: {}
description: Country resource for available phone numbers.
CountrySubresourceUris:
type: object
required:
- local
- toll_free
properties:
local:
type: string
description: The URI for local numbers.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers/US/Local
toll_free:
type: string
description: The URI for toll-free numbers.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers/US/TollFree
unevaluatedProperties:
not: {}
description: Country subresource URIs.
CreateApplicationRequest:
type: object
required:
- FriendlyName
properties:
FriendlyName:
type: string
maxLength: 64
description: A named unique identifier for the resource.
examples:
- My Friendly Name
VoiceUrl:
type: string
format: uri
description: The URL to request when a phone number receives a call or fax.
examples:
- http://example.com
VoiceMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `VoiceUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceFallbackUrl:
type: string
format: uri
description: The URL SignalWire will request if errors occur when fetching the `VoiceUrl`.
examples:
- http://example.com
VoiceFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `VoiceFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
StatusCallback:
type: string
format: uri
description: The URL to pass status updates to the Application.
examples:
- http://example.com
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to the `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsUrl:
type: string
format: uri
description: The URL to request when an SMS is received.
examples:
- http://example.com
SmsMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsFallbackUrl:
type: string
format: uri
description: The URL SignalWire will request if errors occur when fetching the `SmsUrl`.
examples:
- http://www.example.com/sms-fallback
SmsFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsStatusCallback:
type: string
format: uri
description: The URL to receive status updates for messages sent via this Application.
examples:
- http://www.example.com/sms-status-callback
SmsStatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsStatusCallback` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
unevaluatedProperties:
not: {}
description: Request body for creating an application.
CreateCallRecordingRequest:
type: object
properties:
RecordingChannels:
type: string
enum:
- mono
- dual
description: The number of channels in the recording. Can be `mono` (both legs of call recorded under one channel into one recording file) or `dual` (each leg of call recorded in separate channels into one recording file). Default is `mono`.
examples:
- mono
default: mono
RecordingStatusCallback:
type: string
format: uri
description: The URL to request to when recording is available. See the [Recording status callback](/docs/compatibility-api/rest/recordings/webhooks/recording-status-callback) webhook for the payload your URL will receive.
examples:
- https://your-api-endpoint.com/recording-status
RecordingStatusCallbackEvent:
type: string
description: 'The different recording statuses. To specify multiple events, separate with a space. Valid values: completed, in-progress, absent. Default is `completed`.'
examples:
- completed
default: completed
RecordingStatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `RecordingStatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
RecordingTrack:
type: string
enum:
- inbound
- outbound
- both
description: Specifies whether to record the `inbound` audio to SignalWire from the called party or the `outbound` audio from SignalWire to the called party or `both` the inbound and outbound audio. Default is `both`.
examples:
- both
default: both
Trim:
type: string
enum:
- trim-silence
- do-not-trim
description: Whether leading and trailing silence is trimmed from a recording. Default is `do-not-trim`.
examples:
- do-not-trim
default: do-not-trim
unevaluatedProperties:
not: {}
description: Request body for creating a call recording.
CreateCallRequest:
type: object
required:
- To
- From
properties:
To:
type: string
description: The address that received the call. Can be a phone number in E.164 format, a SIP URI, or a client identifier.
examples:
- '+13105678901'
From:
type: string
description: The address that initiated the call. Must be a phone number in E.164 format for PSTN calls.
examples:
- '+13103384645'
Url:
type: string
format: uri
description: The URL to handle the call. Required if `ApplicationSid` and `Laml`/`Twiml` are not used.
examples:
- http://your-application.com/docs/voice.xml
ApplicationSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the application used to handle the call. Required if `Url` and `Laml`/`Twiml` are not used.
examples:
- b3877c40-da60-4998-90ad-b792e98472ap
Method:
type: string
enum:
- GET
- POST
description: Whether the request to `Url` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
FallbackUrl:
type: string
format: uri
description: The URL SignalWire will request if errors occur when fetching the `Url`.
examples:
- https://your-api-endpoint.com/path
FallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `FallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
StatusCallback:
type: string
format: uri
description: The URL SignalWire will send webhooks to on every requested `StatusCallbackEvent` event. See the [Voice status callback](/docs/compatibility-api/rest/calls/webhooks/voice-status-callback) webhook for the payload your URL will receive.
examples:
- https://your-api-endpoint.com/path
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
StatusCallbackEvent:
type: array
items:
type: string
description: 'The status events that trigger a SignalWire webhook. Valid values: initiated, ringing, answered, completed, ringing_forwarded, ringing_queued. Defaults to `completed`.'
examples:
- - initiated
- ringing
- answered
- completed
default:
- completed
CallerId:
type: string
description: The number, in E.164 format, or identifier of the caller. Used to override the From for caller ID purposes.
examples:
- '+13102259067'
SendDigits:
type: string
maxLength: 32
pattern: ^[\d#*wW]{1,32}$
description: 'The digits to press after a call is connected. Valid characters are 0-9, #, *, w (wait 0.5s), and W (wait 1s).'
examples:
- 1ww2
Timeout:
type: integer
format: int32
minimum: 1
maximum: 600
description: The time in seconds SignalWire will wait before assuming the call has no answer. Default is `60` seconds.
examples:
- 60
default: 60
MachineDetection:
type: string
enum:
- Enable
- DetectMessageEnd
- none
description: Whether a human or machine picked up the call. Default is `none`.
examples:
- Enable
default: none
MachineDetectionTimeout:
type: integer
format: int32
minimum: 1
maximum: 120
description: The time in seconds SignalWire will wait for machine detection before timing out. Default is `30` seconds.
examples:
- 30
default: 30
MachineDetectionSpeechThreshold:
type: integer
format: int32
minimum: 1000
maximum: 6000
description: How many milliseconds of voice to decide it is a machine. Default is `2400` milliseconds.
examples:
- 2400
default: 2400
MachineDetectionSpeechEndThreshold:
type: integer
format: int32
minimum: 500
maximum: 5000
description: Number of milliseconds to wait for voice to finish. Default is `1200` milliseconds.
examples:
- 1200
default: 1200
MachineDetectionSilenceTimeout:
type: integer
format: int32
minimum: 2000
maximum: 10000
description: Number of milliseconds to wait for initial voice before giving up. Default is `5000` milliseconds.
examples:
- 5000
default: 5000
MachineWordsThreshold:
type: integer
format: int32
minimum: 1
maximum: 100
description: How many words to count to decide it is a machine. Default is `6`.
examples:
- 6
default: 6
AsyncAmd:
type: boolean
description: Whether or not to execute machine detection asynchronously. Default is `false`.
examples:
- false
default: false
AsyncAmdStatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `AsyncAmdStatusCallback` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
AsyncAmdStatusCallback:
type: string
format: uri
description: The URL to request when the machine detection is completed.
examples:
- https://your-api-endpoint.com/path
AsyncAmdPartialResults:
type: boolean
description: Whether or not to report partial (interim) results to the callback url. Default is `false`.
examples:
- false
default: false
Record:
type: boolean
description: Whether or not to record a call. Default is `false`.
examples:
- false
default: false
RecordingChannels:
type: string
enum:
- mono
- dual
description: The number of channels in the recording. Default is `mono`.
examples:
- mono
default: mono
RecordingTrack:
type: string
enum:
- inbound
- outbound
- both
description: Specifies whether to record the `inbound`, `outbound`, or `both` audio. Default is `both`.
examples:
- both
default: both
RecordingStatusCallback:
type: string
format: uri
description: The URL to request when recording is available. See the [Recording status callback](/docs/compatibility-api/rest/recordings/webhooks/recording-status-callback) webhook for the payload your URL will receive.
examples:
- https://your-api-endpoint.com/path
RecordingStatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `RecordingStatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
RecordingStatusCallbackEvent:
type: string
description: 'The recording status events that trigger a webhook. Space-separated list. Valid values: completed, in-progress, absent. Default is `completed`.'
examples:
- completed
default: completed
Trim:
type: string
enum:
- trim-silence
- do-not-trim
description: Whether leading and trailing silence is trimmed from a recording. Default is `trim-silence`.
examples:
- trim-silence
default: trim-silence
SipAuthUsername:
type: string
description: The username to authenticate the caller when making an outbound SIP call.
examples:
- sipuser
SipAuthPassword:
type: string
description: The password to authenticate the caller when making an outbound SIP call.
examples:
- sippassword
MaxPricePerMinute:
type: string
pattern: ^\d+\.?\d{0,4}$
description: 'The maximum price in USD acceptable for the call to be created. Format: up to 4 decimal places.'
examples:
- '0.0075'
unevaluatedProperties:
not: {}
description: Request body for creating a call.
CreateCallStreamRequest:
type: object
required:
- Url
properties:
Name:
type: string
description: Unique name for the Stream, per Call. It is used to stop a Stream by name.
examples:
- my_first_stream
Track:
type: string
enum:
- inbound_track
- outbound_track
- both_tracks
description: This attribute can be one of inbound_track, outbound_track, both_tracks. Default is `both_tracks`.
examples:
- both_tracks
default: both_tracks
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- GET
default: POST
StatusCallback:
type: string
format: uri
description: The URL to request to when stream is available.
examples:
- https://your-api-endpoint.com/stream-status
Url:
type: string
format: uri
description: Absolute or relative URL. A WebSocket connection to the url will be established and audio will start flowing towards the Websocket server. The only supported protocol is wss. For security reasons ws is NOT supported.
examples:
- wss://your-application.com/audiostream
Parameter1.Name:
type: string
description: Custom parameter name to pass towards the WebSocket server. You can pass up to 99 custom parameters using `Parameter1.Name` through `Parameter99.Name`.
examples:
- FirstName
Parameter1.Value:
type: string
description: Custom parameter value to pass towards the WebSocket server. You can pass up to 99 custom parameters using `Parameter1.Value` through `Parameter99.Value`.
examples:
- Jane
Parameter2.Name:
type: string
description: Custom parameter name to pass towards the WebSocket server.
examples:
- LastName
Parameter2.Value:
type: string
description: Custom parameter value to pass towards the WebSocket server.
examples:
- Doe
AuthorizationBearerToken:
type: string
description: Bearer token for authorization with the WebSocket server.
examples:
- your-bearer-token
unevaluatedProperties:
not: {}
description: Request body for creating a call stream.
CreateConferenceStreamRequest:
type: object
required:
- Url
properties:
Name:
type: string
description: Unique name for the Stream, per Conference. It is used to stop a Stream by name.
examples:
- my_conference_stream
Track:
type: string
enum:
- inbound_track
- outbound_track
- both_tracks
description: This attribute can be one of inbound_track, outbound_track, both_tracks. Default is `both_tracks`.
examples:
- both_tracks
default: both_tracks
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- GET
default: POST
StatusCallback:
type: string
format: uri
description: The URL to request to when stream is available.
examples:
- https://your-api-endpoint.com/stream-status
Url:
type: string
format: uri
description: Absolute or relative URL. A WebSocket connection to the url will be established and audio will start flowing towards the Websocket server. The only supported protocol is wss. For security reasons ws is NOT supported.
examples:
- wss://your-application.com/audiostream
StreamCodec:
type: string
enum:
- PCMU
- PCMA
- L16
- L16@16000h
- L16@24000h
description: The audio codec to use for the stream.
examples:
- PCMU
StreamRealTime:
type: boolean
description: Enable real-time streaming for the conference stream.
examples:
- true
Parameter1.Name:
type: string
description: Custom parameter name to pass towards the WebSocket server. You can pass up to 99 custom parameters using `Parameter1.Name` through `Parameter99.Name`.
examples:
- FirstName
Parameter1.Value:
type: string
description: Custom parameter value to pass towards the WebSocket server. You can pass up to 99 custom parameters using `Parameter1.Value` through `Parameter99.Value`.
examples:
- Jane
Parameter2.Name:
type: string
description: Custom parameter name to pass towards the WebSocket server.
examples:
- LastName
Parameter2.Value:
type: string
description: Custom parameter value to pass towards the WebSocket server.
examples:
- Doe
AuthorizationBearerToken:
type: string
description: Bearer token for authorization with the WebSocket server.
examples:
- your-bearer-token
unevaluatedProperties:
not: {}
description: Request body for creating a conference stream.
CreateCxmlScriptRequest:
type: object
required:
- Name
properties:
Name:
type: string
minLength: 1
description: A friendly name given to the cXML script. Required.
examples:
- Death Star IVR
Contents:
type: string
description: The cXML contents of the script. Must be valid XML with proper Mustache syntax if templates are used. Defaults to an empty Response element.
examples:
- Hello!
unevaluatedProperties:
not: {}
description: Request body for creating a cXML script.
CreateIncomingPhoneNumberRequest:
type: object
required:
- PhoneNumber
properties:
PhoneNumber:
type: string
minLength: 6
maxLength: 18
pattern: ^\+\d{5,17}$
description: The phone number to purchase in E.164 format. Must start with `+` followed by 5-17 digits.
examples:
- '+13103386745'
FriendlyName:
type: string
description: A friendly name for the phone number. If not provided, the formatted phone number will be used.
examples:
- My Business Line
SmsApplicationSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the application associated with SMS handling on this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472sa
SmsFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsFallbackUrl:
type: string
format: uri
description: The URL to request if errors occur when fetching SmsUrl.
examples:
- https://example.com/sms-fallback
SmsMethod:
type: string
enum:
- GET
- POST
description: Whether the request to SmsUrl is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsUrl:
type: string
format: uri
description: The URL to request when an incoming SMS is received.
examples:
- https://example.com/sms
StatusCallback:
type: string
format: uri
description: The URL to request to pass status updates to. See the [Incoming call status callback](/docs/compatibility-api/rest/incoming-phone-numbers/webhooks/incoming-call-status-callback) webhook for the payload your URL will receive.
examples:
- https://example.com/status
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to StatusCallback is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceApplicationSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the application associated with call handling on this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472va
VoiceFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to VoiceFallbackUrl is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceFallbackUrl:
type: string
format: uri
description: The URL to request if errors occur when fetching VoiceUrl.
examples:
- https://example.com/voice-fallback
VoiceMethod:
type: string
enum:
- GET
- POST
description: Whether the request to VoiceUrl is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceReceiveMode:
type: string
enum:
- voice
- fax
description: Whether this number can receive voice calls or faxes. Default is `voice`.
examples:
- voice
default: voice
VoiceUrl:
type: string
format: uri
description: The URL to request when an incoming call is received.
examples:
- https://example.com/voice
unevaluatedProperties:
not: {}
description: Request body for creating an incoming phone number.
CreateMessageRequest:
type: object
required:
- To
properties:
To:
type: string
description: The phone number in E.164 format that will receive the message.
examples:
- '+15557654321'
From:
type: string
description: The phone number in E.164 format that will send the message. Either `From` or `MessagingServiceSid` must be provided.
examples:
- '+15551234567'
Body:
type: string
description: The text of the message. Either `Body` or `MediaUrl` must be provided.
examples:
- Hello World!
MediaUrl:
anyOf:
- type: string
- type: array
items:
type: string
format: uri
description: URL(s) of media you wish to attach and send with the message. Can be specified multiple times for up to 8 media items.
examples:
- https://example.com/image.jpg
SendAsMms:
type: boolean
description: When set to true, forces the message to be sent as an MMS.
examples:
- false
ApplicationSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The SID of a SignalWire cXML Application used to configure the message's status callback.
examples:
- b3877c40-da60-4998-90ad-b792e98472ap
MaxPrice:
type: string
pattern: ^\d+\.?\d{0,4}$
description: 'The maximum price in USD acceptable for the message to be sent. Format: decimal with up to 4 decimal places.'
examples:
- '0.0075'
StatusCallback:
type: string
format: uri
description: A URL endpoint to receive callbacks each time the status of the message changes. See the [SMS status callback](/docs/compatibility-api/rest/messages/webhooks/sms-status-callback) webhook for the payload your URL will receive.
examples:
- https://example.com/status-callback
ValidityPeriod:
type: integer
format: int32
minimum: 1
maximum: 172800
description: The number of seconds a message will allow being queued before canceling. Must be between 1 and 172800 (48 hours). Default is 14400 (4 hours).
examples:
- 14400
default: 14400
MessagingServiceSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The ID of a number group to use when sending the message. Either `From` or `MessagingServiceSid` must be provided.
examples:
- b3877c40-da60-4998-90ad-b792e98472ms
unevaluatedProperties:
not: {}
description: Request body for creating a message.
CreateQueueRequest:
type: object
required:
- FriendlyName
properties:
FriendlyName:
type: string
minLength: 1
pattern: ^\w+$
description: A unique name for the queue. Must contain only alphanumeric characters and underscores.
examples:
- Queue1
MaxSize:
type: integer
format: int32
description: The maximum number of calls that are allowed to wait in a queue. Must be a positive integer.
exclusiveMinimum: 0
examples:
- 100
unevaluatedProperties:
not: {}
description: Request body for creating a queue.
CreateSubprojectRequest:
type: object
required:
- FriendlyName
properties:
FriendlyName:
type: string
maxLength: 250
description: The name of the Project, up to 250 characters long.
examples:
- My Project
unevaluatedProperties:
not: {}
description: Request body for creating a subproject.
CreateTokenRequest:
type: object
required:
- name
- permissions
properties:
name:
type: string
minLength: 1
description: The name representing the project API token.
examples:
- John Doe's Token
permissions:
type: array
items:
type: string
minItems: 1
description: 'The permissions you would like to enable for this project API token. Valid permissions are: calling, chat, datasphere, fax, management, messaging, numbers, pubsub, storage, tasking, and video.'
examples:
- - calling
- fax
- messaging
subproject_id:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the subproject you would like to create a token for. Must belong to the parent project.
examples:
- 9a7fc048-984f-11ee-b9d1-0242ac120002
unevaluatedProperties:
not: {}
description: Request body for creating an API token.
CxmlScript:
type: object
required:
- sid
- date_created
- date_updated
- date_last_accessed
- account_sid
- name
- contents
- request_url
- num_requests
- api_version
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the cXML script on SignalWire.
examples:
- 5184b831-184f-4209-872d-ccdccc80f2f1
date_created:
type: string
description: The date and time, in ISO 8601 format, the script was created.
examples:
- '2019-11-26T20:00:00Z'
date_updated:
type: string
description: The date and time, in ISO 8601 format, the script was updated.
examples:
- '2019-11-26T20:00:00Z'
date_last_accessed:
anyOf:
- type: string
- type: 'null'
description: The date and time, in ISO 8601 format, the script was last accessed, or null if never accessed.
examples:
- '2020-06-05T20:00:00Z'
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account this script is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
name:
type: string
description: A friendly name given to the cXML script.
examples:
- Death Star IVR
contents:
type: string
description: The contents of the cXML script.
examples:
- Hello!
request_url:
type: string
format: uri
description: The unique URL to the raw contents of the cXML script.
examples:
- https://example.signalwire.com/laml-bins/5184b831-184f-4209-872d-ccdccc80f2f1
num_requests:
type: integer
format: int32
description: The number of times this cXML script has been accessed.
examples:
- 42
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
uri:
type: string
description: The URL of this resource.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/LamlBins/5184b831-184f-4209-872d-ccdccc80f2f1
unevaluatedProperties:
not: {}
description: cXML Script model.
CxmlScriptListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- laml_bins
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/LamlBins?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/LamlBins?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page, or null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/LamlBins?Page=1&PageSize=50&PageToken=PAb3877c40da604998
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page, or null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
laml_bins:
type: array
items:
$ref: '#/components/schemas/CxmlScript'
description: List of cXML scripts.
unevaluatedProperties:
not: {}
description: Response containing a list of cXML scripts.
CxmlScriptResponse:
type: object
required:
- sid
- date_created
- date_updated
- date_last_accessed
- account_sid
- name
- contents
- request_url
- num_requests
- api_version
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the cXML script on SignalWire.
examples:
- 5184b831-184f-4209-872d-ccdccc80f2f1
date_created:
type: string
description: The date and time, in ISO 8601 format, the script was created.
examples:
- '2019-11-26T20:00:00Z'
date_updated:
type: string
description: The date and time, in ISO 8601 format, the script was updated.
examples:
- '2019-11-26T20:00:00Z'
date_last_accessed:
anyOf:
- type: string
- type: 'null'
description: The date and time, in ISO 8601 format, the script was last accessed, or null if never accessed.
examples:
- '2020-06-05T20:00:00Z'
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account this script is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
name:
type: string
description: A friendly name given to the cXML script.
examples:
- Death Star IVR
contents:
type: string
description: The contents of the cXML script.
examples:
- Hello!
request_url:
type: string
format: uri
description: The unique URL to the raw contents of the cXML script.
examples:
- https://example.signalwire.com/laml-bins/5184b831-184f-4209-872d-ccdccc80f2f1
num_requests:
type: integer
format: int32
description: The number of times this cXML script has been accessed.
examples:
- 42
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
uri:
type: string
description: The URL of this resource.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/LamlBins/5184b831-184f-4209-872d-ccdccc80f2f1
unevaluatedProperties:
not: {}
description: Response containing a single cXML script.
Fax:
type: object
required:
- account_sid
- api_version
- date_created
- date_updated
- direction
- from
- media_url
- media_sid
- num_pages
- price
- price_unit
- quality
- sid
- status
- to
- duration
- links
- url
- error_code
- error_message
properties:
account_sid:
type: string
description: The unique identifier for the account this fax is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
api_version:
type: string
description: The version of the SignalWire API.
examples:
- v1
date_created:
type: string
description: The date and time, in ISO 8601 format, the fax was created.
examples:
- '2018-11-26T20:00:00Z'
date_updated:
type: string
description: The date and time, in ISO 8601 format, the fax was updated.
examples:
- '2018-11-27T20:00:00Z'
direction:
allOf:
- $ref: '#/components/schemas/FaxDirection'
description: The direction of the fax.
from:
type: string
description: The phone number, in E.164 format, the fax was sent from.
examples:
- '+13103383454'
media_url:
anyOf:
- type: string
- type: 'null'
description: The URL hosting the received media, or null if not available.
examples:
- https://example.com/fax.pdf
media_sid:
type: string
description: The unique identifier for the media instance associated with the fax instance.
examples:
- b3877c40-da60-4998-90ad-b792e98472me
num_pages:
anyOf:
- type: string
- type: 'null'
description: The number of pages in the fax document, or null if not yet determined.
examples:
- '3'
price:
anyOf:
- type: string
- type: 'null'
description: The cost of the fax, or null if not yet calculated.
examples:
- '-0.005'
price_unit:
type: string
description: The currency, in ISO 4217 format, of the price.
examples:
- USD
quality:
allOf:
- $ref: '#/components/schemas/FaxQuality'
description: The quality of the fax.
sid:
type: string
description: The unique identifier of the fax.
examples:
- b3877c40-da60-4998-90ad-b792e98472fx
status:
allOf:
- $ref: '#/components/schemas/FaxStatus'
description: The status of the fax.
to:
type: string
description: The phone number, in E.164 format, the fax was sent to.
examples:
- '+13104456789'
duration:
type: integer
format: int32
description: The time, in seconds, it took to deliver a fax.
examples:
- 5000
links:
allOf:
- $ref: '#/components/schemas/FaxLinks'
description: The URL links for resources associated with the fax.
url:
type: string
description: The URL of this resource.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx
error_code:
anyOf:
- type: string
- type: 'null'
description: Error code for this resource, or null if no error.
examples:
- null
error_message:
anyOf:
- type: string
- type: 'null'
description: The description of this error, or null if no error.
examples:
- null
unevaluatedProperties:
not: {}
description: Fax model.
FaxDirection:
type: string
enum:
- inbound
- outbound
description: Fax direction.
FaxLinks:
type: object
required:
- media
properties:
media:
type: string
description: Media associated with this fax.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media
unevaluatedProperties:
not: {}
description: Fax links.
FaxListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- faxes
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /fax/v1/Faxes?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /fax/v1/Faxes?PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page, or null if there are no more pages.
examples:
- /fax/v1/Faxes?Page=1&PageSize=50&PageToken=PAb3877c40da604998
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page, or null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
faxes:
type: array
items:
$ref: '#/components/schemas/Fax'
description: List of faxes.
unevaluatedProperties:
not: {}
description: Response containing a list of faxes.
FaxMedia:
type: object
required:
- account_sid
- content_type
- date_created
- date_updated
- fax_sid
- sid
- uri
- url
properties:
account_sid:
type: string
description: The unique identifier for the account.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
content_type:
type: string
description: The content type of the media.
examples:
- application/pdf
date_created:
type: string
description: The date, in ISO 8601 format, this media was created.
examples:
- '2018-11-26T20:00:00Z'
date_updated:
type: string
description: The date, in ISO 8601 format, this media was updated.
examples:
- '2018-11-27T20:00:00Z'
fax_sid:
type: string
description: The unique identifier for the fax.
examples:
- b3877c40-da60-4998-90ad-b792e98472fx
sid:
type: string
description: The unique identifier for the media.
examples:
- b3877c40-da60-4998-90ad-b792e98472me
uri:
type: string
description: The URI for the media.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media/b3877c40-da60-4998-90ad-b792e98472me.json
url:
type: string
description: The URL for the media.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media/b3877c40-da60-4998-90ad-b792e98472me.json
unevaluatedProperties:
not: {}
description: Fax media model.
FaxMediaListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- media
- fax_media
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media?PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page, or null if there are no more pages.
examples:
- null
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page, or null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
media:
type: array
items:
$ref: '#/components/schemas/FaxMedia'
description: List of media.
fax_media:
type: array
items:
$ref: '#/components/schemas/FaxMedia'
description: List of fax media (alias for media).
unevaluatedProperties:
not: {}
description: Response containing a list of fax media.
FaxMediaResponse:
type: object
required:
- account_sid
- content_type
- date_created
- date_updated
- fax_sid
- sid
- uri
- url
properties:
account_sid:
type: string
description: The unique identifier for the account.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
content_type:
type: string
description: The content type of the media.
examples:
- application/pdf
date_created:
type: string
description: The date, in ISO 8601 format, this media was created.
examples:
- '2018-11-26T20:00:00Z'
date_updated:
type: string
description: The date, in ISO 8601 format, this media was updated.
examples:
- '2018-11-27T20:00:00Z'
fax_sid:
type: string
description: The unique identifier for the fax.
examples:
- b3877c40-da60-4998-90ad-b792e98472fx
sid:
type: string
description: The unique identifier for the media.
examples:
- b3877c40-da60-4998-90ad-b792e98472me
uri:
type: string
description: The URI for the media.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media/b3877c40-da60-4998-90ad-b792e98472me.json
url:
type: string
description: The URL for the media.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx/Media/b3877c40-da60-4998-90ad-b792e98472me.json
unevaluatedProperties:
not: {}
description: Response containing a single fax media.
FaxQuality:
type: string
enum:
- standard
- fine
- superfine
description: Fax quality.
FaxResponse:
type: object
required:
- account_sid
- api_version
- date_created
- date_updated
- direction
- from
- media_url
- media_sid
- num_pages
- price
- price_unit
- quality
- sid
- status
- to
- duration
- links
- url
- error_code
- error_message
properties:
account_sid:
type: string
description: The unique identifier for the account this fax is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
api_version:
type: string
description: The version of the SignalWire API.
examples:
- v1
date_created:
type: string
description: The date and time, in ISO 8601 format, the fax was created.
examples:
- '2018-11-26T20:00:00Z'
date_updated:
type: string
description: The date and time, in ISO 8601 format, the fax was updated.
examples:
- '2018-11-27T20:00:00Z'
direction:
allOf:
- $ref: '#/components/schemas/FaxDirection'
description: The direction of the fax.
from:
type: string
description: The phone number, in E.164 format, the fax was sent from.
examples:
- '+13103383454'
media_url:
anyOf:
- type: string
- type: 'null'
description: The URL hosting the received media, or null if not available.
examples:
- https://example.com/fax.pdf
media_sid:
type: string
description: The unique identifier for the media instance associated with the fax instance.
examples:
- b3877c40-da60-4998-90ad-b792e98472me
num_pages:
anyOf:
- type: string
- type: 'null'
description: The number of pages in the fax document, or null if not yet determined.
examples:
- '3'
price:
anyOf:
- type: string
- type: 'null'
description: The cost of the fax, or null if not yet calculated.
examples:
- '-0.005'
price_unit:
type: string
description: The currency, in ISO 4217 format, of the price.
examples:
- USD
quality:
allOf:
- $ref: '#/components/schemas/FaxQuality'
description: The quality of the fax.
sid:
type: string
description: The unique identifier of the fax.
examples:
- b3877c40-da60-4998-90ad-b792e98472fx
status:
allOf:
- $ref: '#/components/schemas/FaxStatus'
description: The status of the fax.
to:
type: string
description: The phone number, in E.164 format, the fax was sent to.
examples:
- '+13104456789'
duration:
type: integer
format: int32
description: The time, in seconds, it took to deliver a fax.
examples:
- 5000
links:
allOf:
- $ref: '#/components/schemas/FaxLinks'
description: The URL links for resources associated with the fax.
url:
type: string
description: The URL of this resource.
examples:
- /fax/v1/Faxes/b3877c40-da60-4998-90ad-b792e98472fx
error_code:
anyOf:
- type: string
- type: 'null'
description: Error code for this resource, or null if no error.
examples:
- null
error_message:
anyOf:
- type: string
- type: 'null'
description: The description of this error, or null if no error.
examples:
- null
unevaluatedProperties:
not: {}
description: Response containing a single fax.
FaxStatus:
type: string
enum:
- queued
- processing
- sending
- delivered
- receiving
- received
- no-answer
- busy
- failed
- canceled
description: Fax status.
ImportPhoneNumberRequest:
type: object
required:
- number
- number_type
properties:
number:
type: string
minLength: 6
maxLength: 31
pattern: ^\+\d{5,30}$
description: The phone number to import in E.164 format. Must start with `+` followed by 5-30 digits.
examples:
- '+49152234333323'
number_type:
allOf:
- $ref: '#/components/schemas/NumberType'
description: The type of phone number being imported.
examples:
- longcode
capabilities:
type: array
items:
$ref: '#/components/schemas/PhoneNumberCapability'
minItems: 1
description: The capabilities to enable for this phone number. If not provided, defaults to all capabilities (`sms`, `voice`, `fax`, `mms`). If provided, must include at least one capability.
examples:
- - sms
- voice
unevaluatedProperties:
not: {}
description: Request body for importing a phone number.
InboundCallStatusCallbackPayload:
type: object
required:
- CallSid
- AccountSid
- From
- To
- Timestamp
- CallStatus
- CallDuration
- AudioInMos
properties:
CallSid:
type: string
description: A unique identifier for the call. May be used to later retrieve this call from the REST API.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
AccountSid:
type: string
description: The unique ID of the project this call is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
From:
type: string
description: The From number in E.164 format.
examples:
- '+15551234567'
To:
type: string
description: The To number in E.164 format.
examples:
- '+18005559876'
Timestamp:
type: string
description: The timestamp of the call creation date/time.
examples:
- Thu, 04 Apr 2024 18:32:15 +0000
CallStatus:
type: string
enum:
- failed
- completed
description: The status of the call. For this callback, the value will be either `failed` or `completed`.
examples:
- completed
CallDuration:
type: string
description: The duration, in seconds, of the call.
examples:
- '142'
AudioInMos:
type: string
description: A mean opinion score on a scale of 1–5 that represents the quality of the call.
examples:
- '4.5'
unevaluatedProperties:
not: {}
IncomingPhoneNumber:
type: object
required:
- account_id
- account_sid
- address_requirements
- address_sid
- api_version
- beta
- capabilities
- country_code
- date_created
- date_updated
- emergency_address_sid
- emergency_status
- friendly_name
- identity_sid
- origin
- phone_number
- sid
- sms_application_sid
- sms_fallback_method
- sms_fallback_url
- sms_method
- sms_url
- status_callback
- status_callback_method
- trunk_sid
- uri
- voice_application_sid
- voice_caller_id_lookup
- voice_fallback_method
- voice_fallback_url
- voice_method
- voice_url
properties:
account_id:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
address_requirements:
allOf:
- $ref: '#/components/schemas/AddressRequirements'
description: Whether or not a registered address with SignalWire is required. Always 'none'.
address_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the address associated with this phone number. Always null.
examples:
- null
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
beta:
type: boolean
description: New numbers on SignalWire are marked as beta. Always false.
examples:
- false
capabilities:
allOf:
- $ref: '#/components/schemas/IncomingPhoneNumberCapabilities'
description: Whether or not a number can receive calls and messages.
country_code:
type: string
description: The ISO 3166-1 alpha-2 country code for this phone number.
examples:
- US
date_created:
type: string
description: The date, in RFC 2822 format, this phone number was created.
examples:
- Tue, 25 Sept 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this phone number was updated.
examples:
- Wed, 26 Sept 2018 22:00:00 +0000
emergency_address_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier of the address associated with E911 for this phone number, or null if not set.
examples:
- null
emergency_status:
type: string
description: Whether the phone route has an active E911 address associated. 'Active' or 'Inactive'.
examples:
- Inactive
friendly_name:
type: string
description: A formatted version of the number.
examples:
- (310) 338-6745
identity_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the identity associated with this phone number. Always null.
examples:
- null
origin:
allOf:
- $ref: '#/components/schemas/PhoneNumberOrigin'
description: The origin of the phone number.
phone_number:
type: string
description: The incoming number in E.164 format.
examples:
- '+13103386745'
sid:
type: string
description: The unique identifier for this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472pn
sms_application_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the application associated with SMS handling on this phone number, or null if not set.
examples:
- null
sms_fallback_method:
type: string
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`.
examples:
- POST
sms_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request if errors occur when fetching SmsUrl, or null if not set.
examples:
- null
sms_method:
type: string
description: Whether the request to SmsUrl is a `GET` or a `POST`.
examples:
- POST
sms_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when an incoming SMS is received, or null if not set.
examples:
- null
status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to request to pass status updates to, or null if not set.
examples:
- null
status_callback_method:
type: string
description: Whether the request to StatusCallback is a `GET` or a `POST`.
examples:
- POST
trunk_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the Trunk associated with this phone number. Always null.
examples:
- null
uri:
type: string
description: The URI for this number.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/IncomingPhoneNumbers/b3877c40-da60-4998-90ad-b792e98472pn.json
verification_status:
type: string
description: The verification status for toll-free numbers. Only present for toll-free numbers.
examples:
- Unverified
voice_application_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the application associated with call handling on this phone number, or null if not set.
examples:
- null
voice_caller_id_lookup:
anyOf:
- type: boolean
- type: 'null'
description: Whether or not to look up a caller's name in the database. Always null.
examples:
- null
voice_fallback_method:
type: string
description: Whether the request to VoiceFallbackUrl is a `GET` or a `POST`.
examples:
- POST
voice_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request if errors occur when fetching `Url`, or null if not set.
examples:
- null
voice_method:
type: string
description: Whether the request to Url is a `GET` or a `POST`.
examples:
- POST
voice_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when an incoming call is received, or null if not set.
examples:
- null
unevaluatedProperties:
not: {}
description: Incoming phone number model.
IncomingPhoneNumberCapabilities:
type: object
required:
- voice
- sms
- mms
- fax
properties:
voice:
type: boolean
description: Whether or not voice is enabled.
examples:
- true
sms:
type: boolean
description: Whether or not SMS is enabled.
examples:
- true
mms:
type: boolean
description: Whether or not MMS is enabled.
examples:
- true
fax:
type: boolean
description: Whether or not fax is enabled.
examples:
- true
unevaluatedProperties:
not: {}
description: Phone number capabilities.
IncomingPhoneNumberListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- incoming_phone_numbers
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/IncomingPhoneNumbers?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/IncomingPhoneNumbers?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page, or null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/IncomingPhoneNumbers?Page=1&PageSize=50&PageToken=PAb3877c40da604998
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page, or null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
incoming_phone_numbers:
type: array
items:
$ref: '#/components/schemas/IncomingPhoneNumber'
description: List of incoming phone numbers.
unevaluatedProperties:
not: {}
description: Response containing a list of incoming phone numbers.
IncomingPhoneNumberResponse:
type: object
required:
- account_id
- account_sid
- address_requirements
- address_sid
- api_version
- beta
- capabilities
- country_code
- date_created
- date_updated
- emergency_address_sid
- emergency_status
- friendly_name
- identity_sid
- origin
- phone_number
- sid
- sms_application_sid
- sms_fallback_method
- sms_fallback_url
- sms_method
- sms_url
- status_callback
- status_callback_method
- trunk_sid
- uri
- voice_application_sid
- voice_caller_id_lookup
- voice_fallback_method
- voice_fallback_url
- voice_method
- voice_url
properties:
account_id:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
address_requirements:
allOf:
- $ref: '#/components/schemas/AddressRequirements'
description: Whether or not a registered address with SignalWire is required. Always 'none'.
address_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the address associated with this phone number. Always null.
examples:
- null
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
beta:
type: boolean
description: New numbers on SignalWire are marked as beta. Always false.
examples:
- false
capabilities:
allOf:
- $ref: '#/components/schemas/IncomingPhoneNumberCapabilities'
description: Whether or not a number can receive calls and messages.
country_code:
type: string
description: The ISO 3166-1 alpha-2 country code for this phone number.
examples:
- US
date_created:
type: string
description: The date, in RFC 2822 format, this phone number was created.
examples:
- Tue, 25 Sept 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this phone number was updated.
examples:
- Wed, 26 Sept 2018 22:00:00 +0000
emergency_address_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier of the address associated with E911 for this phone number, or null if not set.
examples:
- null
emergency_status:
type: string
description: Whether the phone route has an active E911 address associated. 'Active' or 'Inactive'.
examples:
- Inactive
friendly_name:
type: string
description: A formatted version of the number.
examples:
- (310) 338-6745
identity_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the identity associated with this phone number. Always null.
examples:
- null
origin:
allOf:
- $ref: '#/components/schemas/PhoneNumberOrigin'
description: The origin of the phone number.
phone_number:
type: string
description: The incoming number in E.164 format.
examples:
- '+13103386745'
sid:
type: string
description: The unique identifier for this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472pn
sms_application_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the application associated with SMS handling on this phone number, or null if not set.
examples:
- null
sms_fallback_method:
type: string
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`.
examples:
- POST
sms_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request if errors occur when fetching SmsUrl, or null if not set.
examples:
- null
sms_method:
type: string
description: Whether the request to SmsUrl is a `GET` or a `POST`.
examples:
- POST
sms_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when an incoming SMS is received, or null if not set.
examples:
- null
status_callback:
anyOf:
- type: string
- type: 'null'
description: The URL to request to pass status updates to, or null if not set.
examples:
- null
status_callback_method:
type: string
description: Whether the request to StatusCallback is a `GET` or a `POST`.
examples:
- POST
trunk_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the Trunk associated with this phone number. Always null.
examples:
- null
uri:
type: string
description: The URI for this number.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/IncomingPhoneNumbers/b3877c40-da60-4998-90ad-b792e98472pn.json
verification_status:
type: string
description: The verification status for toll-free numbers. Only present for toll-free numbers.
examples:
- Unverified
voice_application_sid:
anyOf:
- type: string
- type: 'null'
description: The unique identifier for the application associated with call handling on this phone number, or null if not set.
examples:
- null
voice_caller_id_lookup:
anyOf:
- type: boolean
- type: 'null'
description: Whether or not to look up a caller's name in the database. Always null.
examples:
- null
voice_fallback_method:
type: string
description: Whether the request to VoiceFallbackUrl is a `GET` or a `POST`.
examples:
- POST
voice_fallback_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request if errors occur when fetching `Url`, or null if not set.
examples:
- null
voice_method:
type: string
description: Whether the request to Url is a `GET` or a `POST`.
examples:
- POST
voice_url:
anyOf:
- type: string
- type: 'null'
description: The URL to request when an incoming call is received, or null if not set.
examples:
- null
unevaluatedProperties:
not: {}
description: Response containing a single incoming phone number.
Message:
type: object
required:
- account_sid
- api_version
- body
- num_segments
- num_media
- date_created
- date_sent
- date_updated
- direction
- error_code
- error_message
- from
- price
- price_unit
- sid
- status
- to
- messaging_service_sid
- uri
- subresource_uris
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the project that sent or received this message.
examples:
- ea108133-d6b3-407c-9536-9fad8a929a6a
api_version:
type: string
description: The version number of the SignalWire cXML REST API used to handle this message.
examples:
- '2010-04-01'
body:
anyOf:
- type: string
- type: 'null'
description: The text of the message. Up to 1600 characters long. May be null if filtered for spam.
examples:
- Hello World!
num_segments:
type: integer
format: int32
description: The number of segments that make up the entire message.
examples:
- 1
num_media:
type: integer
format: int32
description: The number of media files that were included with the message.
examples:
- 1
date_created:
type: string
description: The date and time the message was created in RFC 2822 format.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
date_sent:
anyOf:
- type: string
- type: 'null'
description: The date and time the message was sent in RFC 2822 format, or null if not yet sent.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
date_updated:
type: string
description: The date and time the message was last updated in RFC 2822 format.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
direction:
allOf:
- $ref: '#/components/schemas/MessageDirection'
description: The direction of the message.
error_code:
anyOf:
- type: string
- type: 'null'
description: If an error has occurred on the message, the error code will give you a specific code, or null if no error.
examples:
- '30001'
error_message:
anyOf:
- type: string
- type: 'null'
description: A human readable description of the error that occurred, or null if no error.
examples:
- Queue overflow
from:
type: string
description: The phone number in E.164 format that sent the message.
examples:
- '+15551234567'
price:
anyOf:
- type: number
format: float
- type: 'null'
description: The cost of the individual message billed to your project, or null if not yet calculated.
examples:
- 0.005
price_unit:
type: string
description: The currency in which `price` is charged as.
examples:
- USD
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: A unique ID that identifies this specific message.
examples:
- 0a059168-ead0-41af-9d1f-343dae832527
status:
allOf:
- $ref: '#/components/schemas/MessageStatus'
description: Current status of the message.
to:
type: string
description: The phone number in E.164 format that received the message.
examples:
- '+15557654321'
messaging_service_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: If a number group was used when sending an outbound message, the number group's ID will be present, or null otherwise.
examples:
- b3877c40-da60-4998-90ad-b792e98472ms
uri:
type: string
description: The URI of this particular message.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/MessageSubresourceUris'
description: The URIs for any subresources associated with this message.
unevaluatedProperties:
not: {}
description: Message model.
MessageDirection:
type: string
enum:
- inbound
- outbound-api
- outbound-call
- outbound-reply
description: Message direction.
MessageListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- messages
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page, or null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages?Page=1&PageSize=50&PageToken=PA0a059168ead041af
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page, or null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
messages:
type: array
items:
$ref: '#/components/schemas/Message'
description: List of messages.
unevaluatedProperties:
not: {}
description: Response containing a list of messages.
MessageMedia:
type: object
required:
- account_sid
- content_type
- date_created
- date_updated
- parent_sid
- sid
- uri
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account.
examples:
- ea108133-d6b3-407c-9536-9fad8a929a6a
content_type:
type: string
description: The content type of the media.
examples:
- image/jpeg
date_created:
type: string
description: The date, in RFC 2822 GMT format, this media was created.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this media was updated.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
parent_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the message.
examples:
- 0a059168-ead0-41af-9d1f-343dae832527
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the media.
examples:
- b3877c40-da60-4998-90ad-b792e98472me
uri:
type: string
description: The URI for the media.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527/Media/b3877c40-da60-4998-90ad-b792e98472me.json
unevaluatedProperties:
not: {}
description: Message media model.
MessageMediaListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- media_list
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527/Media?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527/Media?Page=0&PageSize=50
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page, or null if there are no more pages.
examples:
- null
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page, or null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number.
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
media_list:
type: array
items:
$ref: '#/components/schemas/MessageMedia'
description: List of media.
unevaluatedProperties:
not: {}
description: Response containing a list of message media.
MessageMediaResponse:
type: object
required:
- account_sid
- content_type
- date_created
- date_updated
- parent_sid
- sid
- uri
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account.
examples:
- ea108133-d6b3-407c-9536-9fad8a929a6a
content_type:
type: string
description: The content type of the media.
examples:
- image/jpeg
date_created:
type: string
description: The date, in RFC 2822 GMT format, this media was created.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
date_updated:
type: string
description: The date, in RFC 2822 GMT format, this media was updated.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
parent_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the message.
examples:
- 0a059168-ead0-41af-9d1f-343dae832527
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the media.
examples:
- b3877c40-da60-4998-90ad-b792e98472me
uri:
type: string
description: The URI for the media.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527/Media/b3877c40-da60-4998-90ad-b792e98472me.json
unevaluatedProperties:
not: {}
description: Response containing a single message media.
MessageResponse:
type: object
required:
- account_sid
- api_version
- body
- num_segments
- num_media
- date_created
- date_sent
- date_updated
- direction
- error_code
- error_message
- from
- price
- price_unit
- sid
- status
- to
- messaging_service_sid
- uri
- subresource_uris
properties:
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the project that sent or received this message.
examples:
- ea108133-d6b3-407c-9536-9fad8a929a6a
api_version:
type: string
description: The version number of the SignalWire cXML REST API used to handle this message.
examples:
- '2010-04-01'
body:
anyOf:
- type: string
- type: 'null'
description: The text of the message. Up to 1600 characters long. May be null if filtered for spam.
examples:
- Hello World!
num_segments:
type: integer
format: int32
description: The number of segments that make up the entire message.
examples:
- 1
num_media:
type: integer
format: int32
description: The number of media files that were included with the message.
examples:
- 1
date_created:
type: string
description: The date and time the message was created in RFC 2822 format.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
date_sent:
anyOf:
- type: string
- type: 'null'
description: The date and time the message was sent in RFC 2822 format, or null if not yet sent.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
date_updated:
type: string
description: The date and time the message was last updated in RFC 2822 format.
examples:
- Mon, 13 Aug 2018 21:38:46 +0000
direction:
allOf:
- $ref: '#/components/schemas/MessageDirection'
description: The direction of the message.
error_code:
anyOf:
- type: string
- type: 'null'
description: If an error has occurred on the message, the error code will give you a specific code, or null if no error.
examples:
- '30001'
error_message:
anyOf:
- type: string
- type: 'null'
description: A human readable description of the error that occurred, or null if no error.
examples:
- Queue overflow
from:
type: string
description: The phone number in E.164 format that sent the message.
examples:
- '+15551234567'
price:
anyOf:
- type: number
format: float
- type: 'null'
description: The cost of the individual message billed to your project, or null if not yet calculated.
examples:
- 0.005
price_unit:
type: string
description: The currency in which `price` is charged as.
examples:
- USD
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: A unique ID that identifies this specific message.
examples:
- 0a059168-ead0-41af-9d1f-343dae832527
status:
allOf:
- $ref: '#/components/schemas/MessageStatus'
description: Current status of the message.
to:
type: string
description: The phone number in E.164 format that received the message.
examples:
- '+15557654321'
messaging_service_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: If a number group was used when sending an outbound message, the number group's ID will be present, or null otherwise.
examples:
- b3877c40-da60-4998-90ad-b792e98472ms
uri:
type: string
description: The URI of this particular message.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/MessageSubresourceUris'
description: The URIs for any subresources associated with this message.
unevaluatedProperties:
not: {}
description: Response containing a single message.
MessageStatus:
type: string
enum:
- queued
- initiated
- sent
- failed
- delivered
- undelivered
- received
description: Message status.
MessageSubresourceUris:
type: object
required:
- media
properties:
media:
type: string
description: The URI for media.
examples:
- /api/laml/2010-04-01/Accounts/ea108133-d6b3-407c-9536-9fad8a929a6a/Messages/0a059168-ead0-41af-9d1f-343dae832527/Media.json
unevaluatedProperties:
not: {}
description: Message subresource URIs.
NumberType:
type: string
enum:
- longcode
- tollfree
description: The type of phone number being imported.
ParticipantStatus:
type: string
enum:
- completed
- in-progress
description: Conference participant status.
PhoneNumberCapabilities:
type: object
required:
- voice
- SMS
- MMS
properties:
voice:
type: boolean
description: Whether or not voice is enabled on the number.
examples:
- true
SMS:
type: boolean
description: Whether or not SMS is enabled on the number.
examples:
- true
MMS:
type: boolean
description: Whether or not MMS is enabled on the number.
examples:
- true
unevaluatedProperties:
not: {}
description: Phone number capabilities.
PhoneNumberCapability:
type: string
enum:
- sms
- voice
- fax
- mms
description: Phone number capabilities.
PhoneNumberOrigin:
type: string
enum:
- signalwire
- hosted
description: Phone number origin.
Queue:
type: object
required:
- sid
- account_sid
- friendly_name
- max_size
- current_size
- average_wait_time
- date_created
- date_updated
- api_version
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the queue.
examples:
- b3877c40-da60-4998-90ad-b792e98472qu
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account this Queue is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
friendly_name:
type: string
description: A description that distinguishes a queue.
examples:
- Queue1
max_size:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The maximum number of calls that are allowed to wait in a queue. Null if no limit is set.
examples:
- 100
current_size:
type: integer
format: int32
minimum: 0
description: The number of calls currently waiting in the queue.
examples:
- 0
average_wait_time:
type: integer
format: int32
minimum: 0
description: The average wait time, in seconds, of callers in a queue.
examples:
- 0
date_created:
type: string
description: The date and time, in RFC 2822 format, the Queue was created.
examples:
- Wed, 26 Sep 2018 18:00:00 +0000
date_updated:
type: string
description: The date and time, in RFC 2822 format, the Queue was updated.
examples:
- Thu, 27 Sep 2018 19:00:00 +0000
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
uri:
type: string
description: The URI of this resource, relative to the API base URL.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu.json
unevaluatedProperties:
not: {}
description: Queue model.
QueueListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- queues
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page. Null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues?Page=1&PageSize=50&PageToken=PAb3877c40-da60-4998-90ad-b792e98472qu
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page. Null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number (zero-indexed).
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
queues:
type: array
items:
$ref: '#/components/schemas/Queue'
description: List of queues.
unevaluatedProperties:
not: {}
description: Response containing a list of queues.
QueueMember:
type: object
required:
- call_sid
- account_sid
- queue_sid
- date_enqueued
- position
- wait_time
- member_type
- uri
properties:
call_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the call.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
queue_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the queue.
examples:
- b3877c40-da60-4998-90ad-b792e98472qu
date_enqueued:
type: string
description: The date and time, in RFC 2822 format, when the member was enqueued.
examples:
- Wed, 26 Sep 2018 18:00:00 +0000
position:
type: integer
format: int32
minimum: 1
description: The position of the member in the queue (1-indexed).
examples:
- 1
wait_time:
type: integer
format: int32
minimum: 0
description: The wait time, in seconds, since the member was enqueued.
examples:
- 30
member_type:
type: string
description: The type of the queue member.
examples:
- laml_call
uri:
type: string
description: The URI of this resource, relative to the API base URL.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu/Members/b3877c40-da60-4998-90ad-b792e98472ca.json
unevaluatedProperties:
not: {}
description: Queue member model representing a call waiting in a queue.
QueueMemberListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- queue_members
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu/Members?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu/Members
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page. Null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu/Members?Page=1&PageSize=50&PageToken=PAb3877c40-da60-4998-90ad-b792e98472me
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page. Null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number (zero-indexed).
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
queue_members:
type: array
items:
$ref: '#/components/schemas/QueueMember'
description: List of queue members.
unevaluatedProperties:
not: {}
description: Response containing a list of queue members.
QueueMemberResponse:
type: object
required:
- call_sid
- account_sid
- queue_sid
- date_enqueued
- position
- wait_time
- member_type
- uri
properties:
call_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the call.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
queue_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the queue.
examples:
- b3877c40-da60-4998-90ad-b792e98472qu
date_enqueued:
type: string
description: The date and time, in RFC 2822 format, when the member was enqueued.
examples:
- Wed, 26 Sep 2018 18:00:00 +0000
position:
type: integer
format: int32
minimum: 1
description: The position of the member in the queue (1-indexed).
examples:
- 1
wait_time:
type: integer
format: int32
minimum: 0
description: The wait time, in seconds, since the member was enqueued.
examples:
- 30
member_type:
type: string
description: The type of the queue member.
examples:
- laml_call
uri:
type: string
description: The URI of this resource, relative to the API base URL.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu/Members/b3877c40-da60-4998-90ad-b792e98472ca.json
unevaluatedProperties:
not: {}
description: Response containing a single queue member.
QueueResponse:
type: object
required:
- sid
- account_sid
- friendly_name
- max_size
- current_size
- average_wait_time
- date_created
- date_updated
- api_version
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the queue.
examples:
- b3877c40-da60-4998-90ad-b792e98472qu
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account this Queue is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
friendly_name:
type: string
description: A description that distinguishes a queue.
examples:
- Queue1
max_size:
anyOf:
- type: integer
format: int32
- type: 'null'
description: The maximum number of calls that are allowed to wait in a queue. Null if no limit is set.
examples:
- 100
current_size:
type: integer
format: int32
minimum: 0
description: The number of calls currently waiting in the queue.
examples:
- 0
average_wait_time:
type: integer
format: int32
minimum: 0
description: The average wait time, in seconds, of callers in a queue.
examples:
- 0
date_created:
type: string
description: The date and time, in RFC 2822 format, the Queue was created.
examples:
- Wed, 26 Sep 2018 18:00:00 +0000
date_updated:
type: string
description: The date and time, in RFC 2822 format, the Queue was updated.
examples:
- Thu, 27 Sep 2018 19:00:00 +0000
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
uri:
type: string
description: The URI of this resource, relative to the API base URL.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues/b3877c40-da60-4998-90ad-b792e98472qu.json
unevaluatedProperties:
not: {}
description: Response containing a single queue.
Recording:
type: object
required:
- sid
- account_sid
- api_version
- call_sid
- conference_sid
- channel
- channels
- date_created
- date_updated
- start_time
- end_time
- duration
- price
- price_unit
- source
- status
- error_code
- uri
- subresource_uris
- encryption_details
- trim
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording.
examples:
- 19e436af-5688-4307-b03b-bdb2b42b8142
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this recording.
examples:
- 720796a0-8ee9-4350-83bd-2d07a3121f1e
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
call_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the call that is associated with this recording. Null if this is a conference recording.
examples:
- 43bb71ee-553f-4074-bb20-8e2747647cce
conference_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the conference that is associated with this recording. Null if this is a call recording.
examples:
- null
channel:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording (singular key). Returns '1' for mono or '2' for stereo.
examples:
- '1'
channels:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording. Returns '1' for mono or '2' for stereo.
examples:
- '1'
date_created:
type: string
description: The date, in RFC 2822 format, this recording was created.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this recording was updated.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording started.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording ended.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
duration:
type: integer
format: int32
minimum: 0
description: The length, in seconds, of the recording.
examples:
- 4
price:
anyOf:
- type: string
- type: 'null'
description: The cost for the recording.
examples:
- '-0.0025'
price_unit:
type: string
description: The currency of the price of the recording.
examples:
- USD
source:
allOf:
- $ref: '#/components/schemas/RecordingSource'
description: How the recording was made.
status:
allOf:
- $ref: '#/components/schemas/RecordingStatus'
description: The status of the recording.
error_code:
anyOf:
- type: string
- type: 'null'
description: Further details about a failed recording.
examples:
- null
uri:
type: string
description: The URI of the recording.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/RecordingSubresourceUris'
description: Subresource URIs.
encryption_details:
anyOf:
- type: string
- type: 'null'
description: Encryption details. Always null.
examples:
- null
trim:
type: string
description: Whether leading and trailing silence is trimmed from a recording.
examples:
- do-not-trim
unevaluatedProperties:
not: {}
description: Recording model.
RecordingListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- recordings
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page. Null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings?Page=1&PageSize=50&PageToken=PA19e436af-5688-4307-b03b-bdb2b42b8142
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page. Null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number (zero-indexed).
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
recordings:
type: array
items:
$ref: '#/components/schemas/Recording'
description: List of recordings.
unevaluatedProperties:
not: {}
description: Response containing a list of recordings.
RecordingResponse:
type: object
required:
- sid
- account_sid
- api_version
- call_sid
- conference_sid
- channel
- channels
- date_created
- date_updated
- start_time
- end_time
- duration
- price
- price_unit
- source
- status
- error_code
- uri
- subresource_uris
- encryption_details
- trim
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording.
examples:
- 19e436af-5688-4307-b03b-bdb2b42b8142
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that is associated with this recording.
examples:
- 720796a0-8ee9-4350-83bd-2d07a3121f1e
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
call_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the call that is associated with this recording. Null if this is a conference recording.
examples:
- 43bb71ee-553f-4074-bb20-8e2747647cce
conference_sid:
anyOf:
- $ref: '#/components/schemas/uuid'
- type: 'null'
description: The unique identifier for the conference that is associated with this recording. Null if this is a call recording.
examples:
- null
channel:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording (singular key). Returns '1' for mono or '2' for stereo.
examples:
- '1'
channels:
type: string
enum:
- '1'
- '2'
description: The number of channels in a recording. Returns '1' for mono or '2' for stereo.
examples:
- '1'
date_created:
type: string
description: The date, in RFC 2822 format, this recording was created.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this recording was updated.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
start_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording started.
examples:
- Tue, 25 Sep 2018 23:00:00 +0000
end_time:
anyOf:
- type: string
- type: 'null'
description: The time, in RFC 2822 format, this recording ended.
examples:
- Wed, 26 Sep 2018 23:00:04 +0000
duration:
type: integer
format: int32
minimum: 0
description: The length, in seconds, of the recording.
examples:
- 4
price:
anyOf:
- type: string
- type: 'null'
description: The cost for the recording.
examples:
- '-0.0025'
price_unit:
type: string
description: The currency of the price of the recording.
examples:
- USD
source:
allOf:
- $ref: '#/components/schemas/RecordingSource'
description: How the recording was made.
status:
allOf:
- $ref: '#/components/schemas/RecordingStatus'
description: The status of the recording.
error_code:
anyOf:
- type: string
- type: 'null'
description: Further details about a failed recording.
examples:
- null
uri:
type: string
description: The URI of the recording.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142.json
subresource_uris:
allOf:
- $ref: '#/components/schemas/RecordingSubresourceUris'
description: Subresource URIs.
encryption_details:
anyOf:
- type: string
- type: 'null'
description: Encryption details. Always null.
examples:
- null
trim:
type: string
description: Whether leading and trailing silence is trimmed from a recording.
examples:
- do-not-trim
unevaluatedProperties:
not: {}
description: Response containing a single recording.
RecordingSource:
type: string
enum:
- DialVerb
- Conference
- OutBoundApi
- Trunking
- RecordVerb
- StartCallRecordingApi
- StartConferenceRecording
description: Recording source.
RecordingStatus:
type: string
enum:
- queued
- in-progress
- paused
- resumed
- completed
- absent
- stopped
description: Recording status.
RecordingStatusCallbackPayload:
type: object
required:
- AccountSid
- CallSid
- RecordingSid
- RecordingUrl
- RecordingStatus
- RecordingDuration
- RecordingChannels
- RecordingSource
properties:
AccountSid:
type: string
description: The unique ID of the project this call is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
CallSid:
type: string
description: A unique identifier for the call. May be used to later retrieve this call from the REST API.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
RecordingSid:
type: string
description: The unique identifier for the recording.
examples:
- b3877c40-da60-4998-90ad-b792e984re01
RecordingUrl:
type: string
description: The URL for the audio recording.
examples:
- https://example.signalwire.com/api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Recordings/b3877c40-da60-4998-90ad-b792e984re01
RecordingStatus:
type: string
enum:
- in-progress
- completed
- absent
description: |-
The status of the recording.
- `in-progress`: Recording has begun.
- `completed`: File is available.
- `absent`: Recording was too short or no audio was detected.
examples:
- completed
RecordingDuration:
type: integer
format: int32
description: The duration, in seconds, of the recording.
examples:
- 94
RecordingChannels:
type: integer
format: int32
description: The number of channels in the recording.
examples:
- 1
RecordingSource:
type: string
description: The type of call that initiated the recording.
examples:
- RecordVerb
unevaluatedProperties:
not: {}
RecordingSubresourceUris:
type: object
required:
- transcriptions
properties:
transcriptions:
type: string
description: The URI for transcriptions.
examples:
- /api/laml/2010-04-01/Accounts/720796a0-8ee9-4350-83bd-2d07a3121f1e/Recordings/19e436af-5688-4307-b03b-bdb2b42b8142/Transcriptions.json
unevaluatedProperties:
not: {}
description: Recording subresource URIs.
SendFaxRequest:
type: object
required:
- MediaUrl
- To
- From
properties:
MediaUrl:
type: string
description: The URL hosting the fax media to send.
examples:
- https://example.com/fax.pdf
To:
type: string
description: The phone number, in E.164 format, or SIP URI the fax will be sent to.
examples:
- '+13104456789'
From:
type: string
description: The phone number, in E.164 format, or client identifier the fax will be sent from.
examples:
- '+13103383454'
Quality:
type: string
enum:
- standard
- fine
- superfine
description: The quality of the fax. Default is 'fine'.
examples:
- fine
default: fine
StatusCallback:
type: string
description: The URL to send status callback requests to when the fax status changes.
examples:
- https://your-api-endpoint.com/fax-status
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: The HTTP method to use for status callback requests. Default is 'POST'.
examples:
- POST
default: POST
StatusCallbackEvent:
type: array
items:
type: string
description: "The events that trigger status callback requests. Valid values: 'initiated', 'ringing', 'answered', 'completed', 'ringing_forwarded', 'ringing_queued'. Default is ['completed']."
examples:
- - completed
StoreMedia:
type: string
enum:
- 'true'
- 'false'
description: Whether to store the fax media. Default is 'true'.
examples:
- 'true'
default: 'true'
Ttl:
type: integer
format: int32
minimum: 5
maximum: 300
description: Time to live in minutes for the fax. Must be between 5 and 300. Default is 60.
examples:
- 60
default: 60
SipAuthUsername:
type: string
description: The username for SIP authentication.
examples:
- user123
SipAuthPassword:
type: string
description: The password for SIP authentication.
examples:
- password123
unevaluatedProperties:
not: {}
description: Request body for sending a fax.
SmsStatusCallbackPayload:
type: object
required:
- MessageStatus
- MessageSid
- AccountSid
- From
- To
- Body
- NumMedia
- NumSegments
properties:
MessageStatus:
type: string
enum:
- queued
- sending
- sent
- delivered
- undelivered
- failed
- receiving
- received
description: |-
The current status of the message at the time of the callback.
One of: `queued`, `sending`, `sent`, `delivered`, `undelivered`, `failed`, `receiving`, `received`.
examples:
- delivered
ErrorCode:
type: string
description: If the message has failed or is undelivered, the error code may provide more information about what went wrong.
examples:
- '30003'
MessageSid:
type: string
description: The unique ID of this message.
examples:
- b3877c40-da60-4998-90ad-b792e98472ms
AccountSid:
type: string
description: The unique ID of the project this message is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
From:
type: string
description: The From number of the message.
examples:
- '+15551234567'
To:
type: string
description: The To number of the message.
examples:
- '+15559876543'
Body:
type: string
description: The body of the message.
examples:
- Hey, your order has shipped!
NumMedia:
type: integer
format: int32
description: The number of media files that were included with the message.
examples:
- 0
NumSegments:
type: integer
format: int32
description: |-
The number of segments that make up the entire message.
If the body exceeds 160 GSM-7 characters or 70 UCS-2 characters, it is automatically split into
smaller segments that are annotated for reconstruction on the recipient handset.
examples:
- 1
unevaluatedProperties:
not: {}
StreamStatus:
type: string
enum:
- queued
- in-progress
- stopped
description: Stream status.
SubresourceUris:
type: object
required:
- addresses
- available_phone_numbers
- applications
- authorized_connect_apps
- calls
- conferences
- connect_apps
- incoming_phone_numbers
- keys
- notifications
- outgoing_caller_ids
- queues
- recordings
- sandbox
- sip
- short_codes
- messages
- transcriptions
- usage
properties:
addresses:
type: 'null'
description: URI for addresses. Not supported.
examples:
- null
available_phone_numbers:
type: string
description: URI for available phone numbers.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/AvailablePhoneNumbers
applications:
type: string
description: URI for applications.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Applications
authorized_connect_apps:
type: 'null'
description: URI for authorized connect apps. Not supported.
examples:
- null
calls:
type: string
description: URI for calls.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Calls
conferences:
type: string
description: URI for conferences.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Conferences
connect_apps:
type: 'null'
description: URI for connect apps. Not supported.
examples:
- null
incoming_phone_numbers:
type: string
description: URI for incoming phone numbers.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/IncomingPhoneNumbers
keys:
type: 'null'
description: URI for keys. Not supported.
examples:
- null
notifications:
type: 'null'
description: URI for notifications. Not supported.
examples:
- null
outgoing_caller_ids:
type: 'null'
description: URI for outgoing caller IDs. Not supported.
examples:
- null
queues:
type: string
description: URI for queues.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Queues
recordings:
type: string
description: URI for recordings.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Recordings
sandbox:
type: 'null'
description: URI for sandbox. Not supported.
examples:
- null
sip:
type: 'null'
description: URI for SIP. Not supported.
examples:
- null
short_codes:
type: 'null'
description: URI for short codes. Not supported.
examples:
- null
messages:
type: string
description: URI for messages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Messages
transcriptions:
type: string
description: URI for transcriptions.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Transcriptions
usage:
type: 'null'
description: URI for usage. Not supported.
examples:
- null
unevaluatedProperties:
not: {}
description: A Map of sub-resources that are linked to the given Project.
TokenResponse:
type: object
required:
- id
- name
- permissions
- token
properties:
id:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the created API Token.
examples:
- ea14556a-984f-11ee-b9d1-0242ac120002
name:
type: string
minLength: 1
description: The name of the created API Token.
examples:
- John Doe's Token
permissions:
type: array
items:
type: string
description: The permissions enabled for this token.
examples:
- - calling
- fax
- messaging
token:
type: string
description: The API token that can be used along with the project ID for basic authentication.
examples:
- PT037258e533e87ac63174ee136ed0798dc85d4f4f9e6d7191
unevaluatedProperties:
not: {}
description: Response containing a single token.
Transcription:
type: object
required:
- sid
- account_sid
- api_version
- recording_sid
- date_created
- date_updated
- duration
- price
- price_unit
- status
- transcription_text
- type
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the transcription.
examples:
- b3877c40-da60-4998-90ad-b792e98472tr
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this transcription.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
recording_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording that this transcription was created from.
examples:
- b3877c40-da60-4998-90ad-b792e98472re
date_created:
type: string
description: The date, in RFC 2822 format, this transcription was created.
examples:
- Thu, 27 Sep 2018 02:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this transcription was updated.
examples:
- Fri, 28 Sep 2018 03:00:00 +0000
duration:
type: integer
format: int32
minimum: 0
description: The duration, in seconds, of the transcribed audio.
examples:
- 60
price:
anyOf:
- type: string
- type: 'null'
description: The charge for the transcription. Null if cost has not been calculated.
examples:
- '-0.00025'
price_unit:
type: string
description: The currency, in ISO 4217 format, for the price of the transcription.
examples:
- USD
status:
type: string
description: The status of the transcription. Always 'completed' for transcriptions returned by the API.
examples:
- completed
transcription_text:
anyOf:
- type: string
- type: 'null'
description: The text content of the transcription. Null if transcription text is not available.
examples:
- Hello, this is a test transcription.
type:
type: string
description: The type of the transcription. Currently always an empty string.
examples:
- ''
uri:
type: string
description: The URI of this resource, relative to the API base URL.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/Transcriptions/b3877c40-da60-4998-90ad-b792e98472tr.json
unevaluatedProperties:
not: {}
description: Transcription model.
TranscriptionListResponse:
type: object
required:
- uri
- first_page_uri
- next_page_uri
- previous_page_uri
- page
- page_size
- transcriptions
properties:
uri:
type: string
description: The URI of the current page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/Transcriptions?Page=0&PageSize=50
first_page_uri:
type: string
description: The URI of the first page.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/Transcriptions
next_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the next page. Null if there are no more pages.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/Transcriptions?Page=1&PageSize=50&PageToken=PAb3877c40-da60-4998-90ad-b792e98472tr
previous_page_uri:
anyOf:
- type: string
- type: 'null'
description: The URI of the previous page. Null if this is the first page.
examples:
- null
page:
type: integer
format: int32
description: The current page number (zero-indexed).
examples:
- 0
page_size:
type: integer
format: int32
description: The number of items per page.
examples:
- 50
transcriptions:
type: array
items:
$ref: '#/components/schemas/Transcription'
description: List of transcriptions.
unevaluatedProperties:
not: {}
description: Response containing a list of transcriptions.
TranscriptionResponse:
type: object
required:
- sid
- account_sid
- api_version
- recording_sid
- date_created
- date_updated
- duration
- price
- price_unit
- status
- transcription_text
- type
- uri
properties:
sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the transcription.
examples:
- b3877c40-da60-4998-90ad-b792e98472tr
account_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the account that created this transcription.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
api_version:
type: string
description: The version of the SignalWire API.
examples:
- '2010-04-01'
recording_sid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the recording that this transcription was created from.
examples:
- b3877c40-da60-4998-90ad-b792e98472re
date_created:
type: string
description: The date, in RFC 2822 format, this transcription was created.
examples:
- Thu, 27 Sep 2018 02:00:00 +0000
date_updated:
type: string
description: The date, in RFC 2822 format, this transcription was updated.
examples:
- Fri, 28 Sep 2018 03:00:00 +0000
duration:
type: integer
format: int32
minimum: 0
description: The duration, in seconds, of the transcribed audio.
examples:
- 60
price:
anyOf:
- type: string
- type: 'null'
description: The charge for the transcription. Null if cost has not been calculated.
examples:
- '-0.00025'
price_unit:
type: string
description: The currency, in ISO 4217 format, for the price of the transcription.
examples:
- USD
status:
type: string
description: The status of the transcription. Always 'completed' for transcriptions returned by the API.
examples:
- completed
transcription_text:
anyOf:
- type: string
- type: 'null'
description: The text content of the transcription. Null if transcription text is not available.
examples:
- Hello, this is a test transcription.
type:
type: string
description: The type of the transcription. Currently always an empty string.
examples:
- ''
uri:
type: string
description: The URI of this resource, relative to the API base URL.
examples:
- /api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472ac/Transcriptions/b3877c40-da60-4998-90ad-b792e98472tr.json
unevaluatedProperties:
not: {}
description: Response containing a single transcription.
TranscriptionStatusCallbackPayload:
type: object
required:
- TranscriptionSid
- TranscriptionText
- TranscriptionStatus
- TranscriptionUrl
- RecordingSid
- RecordingUrl
properties:
TranscriptionSid:
type: string
description: The unique, 34-character ID of the transcription.
examples:
- b3877c40-da60-4998-90ad-b792e984tr01
TranscriptionText:
type: string
description: The text of the transcription.
examples:
- Hello, I'd like to schedule an appointment for next Tuesday.
TranscriptionStatus:
type: string
enum:
- completed
- failed
description: The status of the transcription.
examples:
- completed
TranscriptionUrl:
type: string
description: The URL for the transcription's REST API resource.
examples:
- https://example.signalwire.com/api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Transcriptions/b3877c40-da60-4998-90ad-b792e984tr01
RecordingSid:
type: string
description: The unique, 34-character identifier for the recording from which the transcription was generated.
examples:
- b3877c40-da60-4998-90ad-b792e984re01
RecordingUrl:
type: string
description: The URL for the audio recording from which the transcription was generated.
examples:
- https://example.signalwire.com/api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Recordings/b3877c40-da60-4998-90ad-b792e984re01
unevaluatedProperties:
not: {}
UpdateAccountRequest:
type: object
required:
- FriendlyName
properties:
FriendlyName:
type: string
maxLength: 250
description: The new name for the Project.
examples:
- My Project
unevaluatedProperties:
not: {}
description: Request body for updating an account.
UpdateApplicationRequest:
type: object
required:
- FriendlyName
properties:
FriendlyName:
type: string
maxLength: 64
description: A named unique identifier for the resource.
examples:
- My Friendly Name
VoiceUrl:
type: string
format: uri
description: The URL to request when a phone number receives a call or fax.
examples:
- http://example.com
VoiceMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `VoiceUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceFallbackUrl:
type: string
format: uri
description: The URL SignalWire will request if errors occur when fetching the `VoiceUrl`.
examples:
- http://example.com
VoiceFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `VoiceFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
StatusCallback:
type: string
format: uri
description: The URL to pass status updates to the Application.
examples:
- http://example.com
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to the `StatusCallback` URL is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsUrl:
type: string
format: uri
description: The URL to request when an SMS is received.
examples:
- http://example.com
SmsMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsFallbackUrl:
type: string
format: uri
description: The URL SignalWire will request if errors occur when fetching the `SmsUrl`.
examples:
- http://www.example.com/sms-fallback
SmsFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsStatusCallback:
type: string
format: uri
description: The URL to receive status updates for messages sent via this Application.
examples:
- http://www.example.com/sms-status-callback
SmsStatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsStatusCallback` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
unevaluatedProperties:
not: {}
description: Request body for updating an application.
UpdateCallRecordingRequest:
type: object
required:
- Status
properties:
Status:
type: string
enum:
- paused
- in-progress
- stopped
description: The status of the recording.
examples:
- paused
PauseBehavior:
type: string
enum:
- skip
- silence
description: What to do while recording is paused. Default is `silence`.
examples:
- silence
default: silence
unevaluatedProperties:
not: {}
description: Request body for updating a call recording.
UpdateCallRequest:
type: object
properties:
Url:
type: string
format: uri
description: The URL to handle the call.
examples:
- http://your-application.com/docs/voice.xml
Method:
type: string
enum:
- GET
- POST
description: Whether the request to `Url` is a `GET` or a `POST`.
examples:
- POST
Status:
type: string
enum:
- canceled
- completed
description: The status to update the call to.
examples:
- completed
FallbackUrl:
type: string
format: uri
description: The URL SignalWire will request if errors occur.
examples:
- https://your-api-endpoint.com/fallback
FallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `FallbackUrl` is a `GET` or a `POST`.
examples:
- POST
StatusCallback:
type: string
format: uri
description: The URL SignalWire will send webhooks to.
examples:
- https://your-api-endpoint.com/status
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `StatusCallback` is a `GET` or a `POST`.
examples:
- POST
unevaluatedProperties:
not: {}
description: Request body for updating a call.
UpdateCallStreamRequest:
type: object
required:
- Status
properties:
Status:
type: string
enum:
- stopped
description: The status of the stream. Only 'stopped' is allowed.
examples:
- stopped
unevaluatedProperties:
not: {}
description: Request body for updating a call stream.
UpdateConferenceParticipantRequest:
type: object
properties:
AnnounceUrl:
type: string
format: uri
description: The URL to send conference announcements to.
examples:
- https://your-api-endpoint.com/announce
AnnounceMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `AnnounceUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
Coaching:
type: boolean
description: Whether the participant is coaching another call. Requires `CallSidToCoach` to be set.
examples:
- false
CallSidToCoach:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the participant who is being coached. Required when `Coaching` is true.
examples:
- b3877c40-da60-4998-90ad-b792e98472co
Hold:
type: boolean
description: Whether or not a participant is on hold.
examples:
- false
HoldMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `HoldUrl` is a `GET` or a `POST`. Default is `GET`.
examples:
- GET
default: GET
HoldUrl:
type: string
format: uri
description: The URL to send hold music to that will be played when participant is on hold.
examples:
- https://your-api-endpoint.com/hold-music
Muted:
type: boolean
description: Whether or not a participant is muted.
examples:
- false
WaitUrl:
type: string
format: uri
description: The URL for wait music to be played while a conference is not yet started.
examples:
- https://your-api-endpoint.com/wait-music
WaitMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `WaitUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
unevaluatedProperties:
not: {}
description: Request body for updating a conference participant.
UpdateConferenceRecordingRequest:
type: object
required:
- Status
properties:
Status:
type: string
enum:
- paused
- in-progress
- stopped
description: The status of the recording.
examples:
- paused
PauseBehavior:
type: string
enum:
- skip
- silence
description: What to do while recording is paused. Default is `silence`.
examples:
- silence
default: silence
unevaluatedProperties:
not: {}
description: Request body for updating a conference recording.
UpdateConferenceRequest:
type: object
properties:
Status:
type: string
enum:
- completed
description: The status of this conference. Only 'completed' is allowed to end the conference.
examples:
- completed
AnnounceUrl:
type: string
format: uri
description: The URL to send conference announcements to.
examples:
- https://your-api-endpoint.com/announce
AnnounceMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `AnnounceUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
unevaluatedProperties:
not: {}
description: Request body for updating a conference.
UpdateConferenceStreamRequest:
type: object
required:
- Status
properties:
Status:
type: string
enum:
- stopped
description: The status of the stream. Only 'stopped' is allowed.
examples:
- stopped
unevaluatedProperties:
not: {}
description: Request body for updating a conference stream.
UpdateCxmlScriptRequest:
type: object
required:
- Name
properties:
Name:
type: string
minLength: 1
description: A friendly name given to the cXML script. Required.
examples:
- Death Star IVR
Contents:
type: string
description: The cXML contents of the script. Must be valid XML with proper Mustache syntax if templates are used.
examples:
- Hello!
unevaluatedProperties:
not: {}
description: Request body for updating a cXML script.
UpdateFaxRequest:
type: object
required:
- Status
properties:
Status:
type: string
enum:
- canceled
description: The status to set. Only 'canceled' is allowed. The fax must be in 'queued' status to be canceled.
examples:
- canceled
unevaluatedProperties:
not: {}
description: Request body for updating (canceling) a fax.
UpdateIncomingPhoneNumberRequest:
type: object
properties:
AccountSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for an account to which the number should be transferred. Must be within the same Space.
examples:
- b3877c40-da60-4998-90ad-b792e98472ac
EmergencyAddressSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier of the address associated with E911 for this phone number. Not supported for toll-free numbers or certain providers.
examples:
- b3877c40-da60-4998-90ad-b792e98472ad
FriendlyName:
type: string
minLength: 1
maxLength: 255
description: A friendly name for the phone number.
examples:
- My Business Line
SmsApplicationSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the application associated with SMS handling on this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472sa
SmsFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to `SmsFallbackUrl` is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsFallbackUrl:
type: string
format: uri
description: The URL to request if errors occur when fetching SmsUrl.
examples:
- https://example.com/sms-fallback
SmsMethod:
type: string
enum:
- GET
- POST
description: Whether the request to SmsUrl is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
SmsUrl:
type: string
format: uri
description: The URL to request when an incoming SMS is received.
examples:
- https://example.com/sms
StatusCallback:
type: string
format: uri
description: The URL to request to pass status updates to.
examples:
- https://example.com/status
StatusCallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to StatusCallback is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceApplicationSid:
allOf:
- $ref: '#/components/schemas/uuid'
description: The unique identifier for the application associated with call handling on this phone number.
examples:
- b3877c40-da60-4998-90ad-b792e98472va
VoiceFallbackMethod:
type: string
enum:
- GET
- POST
description: Whether the request to VoiceFallbackUrl is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceFallbackUrl:
type: string
format: uri
description: The URL to request if errors occur when fetching VoiceUrl.
examples:
- https://example.com/voice-fallback
VoiceMethod:
type: string
enum:
- GET
- POST
description: Whether the request to VoiceUrl is a `GET` or a `POST`. Default is `POST`.
examples:
- POST
default: POST
VoiceReceiveMode:
type: string
enum:
- voice
- fax
description: Whether this number can receive voice calls or faxes.
examples:
- voice
VoiceUrl:
type: string
format: uri
description: The URL to request when an incoming call is received.
examples:
- https://example.com/voice
unevaluatedProperties:
not: {}
description: Request body for updating an incoming phone number.
UpdateMessageRequest:
type: object
required:
- Body
properties:
Body:
type: string
maxLength: 0
description: The new body of the message. Must be an empty string to redact the message content.
examples:
- ''
unevaluatedProperties:
not: {}
description: Request body for updating (redacting) a message.
UpdateQueueMemberRequest:
type: object
required:
- Url
properties:
Url:
type: string
format: uri
description: The URL to redirect the dequeued member to. This URL should return cXML instructions for handling the call.
examples:
- https://your-application.com/dequeue-handler
Method:
type: string
enum:
- GET
- POST
description: The HTTP method to use when requesting the URL. Default is `POST`.
examples:
- POST
default: POST
unevaluatedProperties:
not: {}
description: Request body for dequeuing a queue member.
UpdateQueueRequest:
type: object
required:
- FriendlyName
properties:
FriendlyName:
type: string
minLength: 1
pattern: ^\w+$
description: A unique name for the queue. Must contain only alphanumeric characters and underscores.
examples:
- Queue1
MaxSize:
type: integer
format: int32
description: The maximum number of calls that are allowed to wait in a queue. Must be a positive integer.
exclusiveMinimum: 0
examples:
- 100
unevaluatedProperties:
not: {}
description: Request body for updating a queue.
UpdateTokenRequest:
type: object
properties:
name:
type: string
minLength: 1
description: The name representing the project API token.
examples:
- John Doe's Token
permissions:
type: array
items:
type: string
description: 'The permissions you would like to enable for this project API token. If not provided, existing permissions are kept. Valid permissions are: calling, chat, datasphere, fax, management, messaging, numbers, pubsub, storage, tasking, and video.'
examples:
- - calling
- fax
- messaging
unevaluatedProperties:
not: {}
description: Request body for updating an API token.
VoiceStatusCallbackPayload:
type: object
required:
- AccountSid
- ApiVersion
- AudioInAveragePtime
- AudioInDtmfPacketCount
- AudioInFlushPacketCount
- AudioInJitterMaxVariance
- AudioInJitterMinVariance
- AudioInLargestJbSize
- AudioInMos
- AudioInMediaPacketCount
- AudioInSkipPacketCount
- AudioOutDtmfPacketCount
- AudioOutMediaPacketCount
- CallbackSource
- CallSid
- CallStatus
- Direction
- From
- SequenceNumber
- Timestamp
- To
properties:
AccountSid:
type: string
description: The unique ID of the project this call is associated with.
examples:
- b3877c40-da60-4998-90ad-b792e98472af
ApiVersion:
type: string
description: |-
The version of the SignalWire API.
Incoming calls use the API version placed on the number called.
Outgoing calls use the version of the REST API request.
examples:
- '2010-04-01'
AudioInAveragePtime:
type: integer
format: int32
description: The average time between packets for the inbound stream.
examples:
- 20
AudioInDtmfPacketCount:
type: integer
format: int32
description: The number of DTMF packets in the inbound media stream.
examples:
- 0
AudioInFlushPacketCount:
type: integer
format: int32
description: |-
The number of incoming packets removed from the jitter buffer due to buffer overflow or underflow,
causing these packets to be discarded or lost.
examples:
- 2
AudioInJitterMaxVariance:
type: integer
format: int32
description: The maximum variance of jitter for incoming audio RTP packets.
examples:
- 8
AudioInJitterMinVariance:
type: integer
format: int32
description: The minimum variance of jitter for incoming audio RTP packets.
examples:
- 1
AudioInLargestJbSize:
type: integer
format: int32
description: The largest jitter buffer size recorded for incoming audio RTP packets during the session.
examples:
- 4
AudioInMos:
type: string
description: A mean opinion score on a scale of 1–5 that helps determine audio quality.
examples:
- '4.3'
AudioInMediaPacketCount:
type: integer
format: int32
description: The number of audio packets received in the inbound media stream.
examples:
- 1842
AudioInSkipPacketCount:
type: integer
format: int32
description: |-
Increased with every packet not received at a given ptime.
Increases with every lost packet from the inbound stream.
examples:
- 1
AudioOutDtmfPacketCount:
type: integer
format: int32
description: The total number of DTMF packets generated in the outbound media stream.
examples:
- 0
AudioOutMediaPacketCount:
type: integer
format: int32
description: The number of audio packets sent in the outbound media stream.
examples:
- 1840
CallbackSource:
type: string
description: The source of the status callback.
examples:
- call-progress-events
CallDuration:
type: integer
format: int32
description: The duration, in seconds, of the finished call. Only present on the `completed` event.
examples:
- 94
CallerName:
type: string
description: The name of the caller. Only available if Caller ID lookup is enabled.
examples:
- Jane Smith
CallSid:
type: string
description: A unique identifier for the call.
examples:
- b3877c40-da60-4998-90ad-b792e98472ca
CallStatus:
type: string
enum:
- initiated
- ringing
- in-progress
- queued
- failed
- busy
- no-answer
- completed
- canceled
description: |-
The status of the call.
| Status | Description |
|--------|-------------|
| `initiated` | The initial dial has begun. |
| `ringing` | The call is ringing. |
| `in-progress` | The call was answered and is in progress. |
| `queued` | The call is ready and in line to initiate. |
| `failed` | The call could not be completed. Usually occurs when the phone number does not exist. |
| `busy` | The caller encountered a busy signal. |
| `no-answer` | The call ended without an answer. |
| `completed` | The call was answered and ended normally. |
| `canceled` | The REST API canceled the call while it was ringing or queued. |
examples:
- completed
Direction:
type: string
enum:
- outbound-dial
- outbound-api
- inbound
description: |-
The direction of the call.
- `outbound-dial`: calls launched through the Dial verb.
- `outbound-api`: calls launched through the REST API.
- `inbound`: inbound calls.
examples:
- outbound-api
ForwardedFrom:
type: string
description: The number this call was forwarded from.
examples:
- '+15550001111'
From:
type: string
description: The phone number that sent this call, in E.164 format.
examples:
- '+15551234567'
ParentCallSid:
type: string
description: A unique identifier for the call that created this call.
examples:
- b3877c40-da60-4998-90ad-b792e98472pa
RecordingDuration:
type: integer
format: int32
description: The duration, in seconds, of the recording.
examples:
- 94
RecordingSid:
type: string
description: The unique identifier for the audio recording.
examples:
- b3877c40-da60-4998-90ad-b792e984re01
RecordingUrl:
type: string
description: The URL of the recorded audio call.
examples:
- https://example.signalwire.com/api/laml/2010-04-01/Accounts/b3877c40-da60-4998-90ad-b792e98472af/Recordings/b3877c40-da60-4998-90ad-b792e984re01
SequenceNumber:
type: integer
format: int32
description: |-
The order in which events occur, starting at 0.
Although events are fired in order, they each take time and may not appear in the order you expect.
examples:
- 4
SipInviteResultPhrase:
type: string
description: A textual description of the result of the SIP INVITE request, indicating success or failure with additional details.
examples:
- OK
SipResultCode:
type: string
description: The numeric SIP response code received for the INVITE request, indicating the outcome of the call attempt. See the [list of SIP response codes](https://en.wikipedia.org/wiki/List_of_SIP_response_codes) for possible values.
examples:
- '200'
Timestamp:
type: string
description: The timestamp, in RFC 2822 format, of when the event occurred.
examples:
- Thu, 04 Apr 2024 18:32:15 +0000
To:
type: string
description: The phone number of the call recipient, in E.164 format.
examples:
- '+15559876543'
unevaluatedProperties:
not: {}
uuid:
type: string
format: uuid
description: Universal Unique Identifier.
securitySchemes:
SignalWireBasicAuth:
type: http
scheme: Basic
description: |-
SignalWire Basic Authentication using Project ID and API Token.
The client sends HTTP requests with the Authorization header containing
the word Basic followed by a space and a base64-encoded string of project_id:token.
The project ID will be used as the username and the API token as the password.
Example:
```
Authorization: Basic base64(project_id:token)
```
x-fern-basic:
username:
name: project_id
env: SIGNALWIRE_PROJECT_ID
password:
name: api_token
env: SIGNALWIRE_API_TOKEN
servers:
- url: https://{space_name}.signalwire.com/api/laml/2010-04-01
description: SignalWire Compatibility API
variables:
space_name:
default: YOUR_SPACE
description: Your SignalWire Space name
webhooks:
incomingCallStatusCallback:
post:
operationId: incoming_call_status_callback
summary: Incoming call status callback
description: |-
Payload sent by SignalWire to your Inbound Call Status Callback URL for inbound calls to a phone number.
Configure `StatusCallback` at the phone number level via the dashboard
(**Phone Numbers** → select a number → **Phone Number Settings**) or programmatically via the
[create](/docs/compatibility-api/rest/incoming-phone-numbers/create-incoming-phone-number) or
[update](/docs/compatibility-api/rest/incoming-phone-numbers/update-incoming-phone-number) Incoming Phone Number API endpoints.
By default, the webhook fires only when the call is `completed` or `failed`, making it well-suited
for tracking inbound call success rate, call quality, and total call volume in a call center context.
Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).
parameters: []
responses:
'200':
description: Webhook received
tags:
- Incoming Phone Numbers
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/InboundCallStatusCallbackPayload'
security:
- {}
recordingStatusCallback:
post:
operationId: recording_status_callback
summary: Recording status callback
description: |-
Payload sent by SignalWire to your `RecordingStatusCallback` URL when a recording status event occurs.
Recordings are not always available immediately — especially at high call volumes. This callback lets
your app react as soon as a recording is ready, whether that means uploading it to external storage,
sending it via email, or forwarding the URL via SMS.
Configure `RecordingStatusCallback` when
[creating a call via the API](/docs/compatibility-api/rest/calls/create-a-call) or when using
[Dial](/docs/compatibility-api/cxml/reference/voice/dial),
[Conference](/docs/compatibility-api/cxml/reference/voice/conference), or
[Record](/docs/compatibility-api/cxml/reference/voice/record).
Use `RecordingStatusCallbackEvent` to request callbacks for specific events. If omitted, only the
`completed` event is sent. Possible values: `in-progress`, `completed`, `absent`.
| Status | Description |
|--------|-------------|
| `in-progress` | The recording has begun. |
| `completed` | The file is available for access. |
| `absent` | The recording was too short or the call was silent — no audio was detected. |
Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).
parameters: []
responses:
'200':
description: Webhook received
tags:
- Recordings
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RecordingStatusCallbackPayload'
security:
- {}
smsStatusCallback:
post:
operationId: sms_status_callback
summary: SMS status callback
description: |-
Payload sent by SignalWire to your SMS Status Callback URL when the status of an SMS/MMS message changes.
Configure this callback using the `StatusCallback` parameter when
[sending an outgoing message](/docs/compatibility-api/rest/messages/create-message).
There are 8 possible message statuses:
| Status | Description |
|--------|-------------|
| `queued` | The API request was processed and the message is waiting to be sent. |
| `sending` | The message is being transmitted to the nearest upstream carrier. |
| `sent` | The nearest upstream carrier has accepted the message. |
| `delivered` | The nearest upstream carrier confirmed receipt of the message. |
| `undelivered` | SignalWire received notice from the upstream carrier that the message was not delivered. |
| `failed` | SignalWire could not send the message. There is no charge for failed messages. |
| `receiving` | SignalWire has received and is currently processing an inbound message. |
| `received` | The inbound message has been received by a number in your account. |
SignalWire only marks a message as `delivered` when it receives a Delivery Receipt (DLR)
from the receiving carrier confirming entry into the end carrier's network. `sent` means the message
left SignalWire and reached the downstream peer. Some carriers send delayed DLRs; others send none
at all. MMS messages never receive DLRs, so they will only ever reach `sent` status.
Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).
parameters: []
responses:
'200':
description: Webhook received
tags:
- Messages
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SmsStatusCallbackPayload'
security:
- {}
transcriptionStatusCallback:
post:
operationId: transcription_status_callback
summary: Transcription status callback
description: |-
Payload sent by SignalWire to your Transcription Status Callback URL when the status of a transcription changes.
Configure this callback by enabling transcription on a recording via the
[Record](/docs/compatibility-api/cxml/reference/voice/record) verb (`transcribe=true`) and setting `transcribeCallback`
to your webhook URL.
Your app can use these parameters to handle the transcription — for example, uploading the text to
your CRM, sending it via email, or forwarding the body via SignalWire SMS.
Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).
parameters: []
responses:
'200':
description: Webhook received
tags:
- Recording Transcriptions
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/TranscriptionStatusCallbackPayload'
security:
- {}
voiceStatusCallback:
post:
operationId: voice_status_callback
summary: Voice status callback
description: |-
Payload sent by SignalWire to your Voice Status Callback URL when the status of a call changes.
Configure this callback using the `StatusCallback` and `StatusCallbackEvent` parameters when
[creating a call via the API](/docs/compatibility-api/rest/calls/create-a-call) or using
[Dial](/docs/compatibility-api/cxml/reference/voice/dial) with
[Number](/docs/compatibility-api/cxml/reference/voice/number),
[SIP](/docs/compatibility-api/cxml/reference/voice/sip), or
[Conference](/docs/compatibility-api/cxml/reference/voice/conference).
Use `StatusCallbackEvent` to receive every call progress event — not just the final status —
along with current call state and all parameters below.
Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability).
parameters: []
responses:
'200':
description: Webhook received
tags:
- Calls
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/VoiceStatusCallbackPayload'
security:
- {}