Telnyx AI API
AI assistants, streaming chat completions, speech, and embeddings.
AI assistants, streaming chat completions, speech, and embeddings.
components:
callbacks: {}
examples:
Maximum20JobsAllowed:
value:
errors:
- code: '10015'
detail: You can have at most 20 pending or in progress jobs
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /base
title: Bad Request
MaximumAllowedPhoneNumbers:
value:
errors:
- code: '10015'
detail: 1000 numbers is the maximum allowed.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /phone_numbers
title: Bad Request
MinimumAllowedPhoneNumbers:
value:
errors:
- code: '10015'
detail: You must provide at least 1 phone number.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /phone_numbers
title: Bad Request
MixedIdsAndE164Values:
value:
errors:
- code: '10015'
detail: You must specify either all phone numbers in the e164 format or
all as phone number ids
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /phone_numbers
title: Bad Request
NotAuthorized:
value:
errors:
- code: '10006'
detail: You are not authorized to access the requested resource.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10006
title: Not authorized
PhoneNumberOwnership:
value:
errors:
- code: '10015'
detail: You must own every number in the bulk request
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /phone_numbers
title: Bad Request
PhoneNumbersMustBePresent:
value:
errors:
- code: '10015'
detail: must be present
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /phone_numbers
title: Bad Request
headers: {}
links: {}
parameters:
10dlc_FilterConsolidated:
description: 'Consolidated filter parameter (deepObject style). Originally:
filter[telnyx_campaign_id], filter[telnyx_brand_id], filter[tcr_campaign_id],
filter[tcr_brand_id]'
explode: true
in: query
name: filter
schema:
properties:
tcr_brand_id:
description: Filter results by the TCR Brand id
example: BRANDID
type: string
tcr_campaign_id:
description: Filter results by the TCR Campaign id
example: CAMPID3
type: string
telnyx_brand_id:
description: Filter results by the Telnyx Brand id
example: f3575e15-32ce-400e-a4c0-dd78800c20b0
format: uuid
type: string
telnyx_campaign_id:
description: Filter results by the Telnyx Campaign id
example: f3575e15-32ce-400e-a4c0-dd78800c20b0
format: uuid
type: string
type: object
style: deepObject
AccountSid:
description: The id of the account the resource belongs to.
in: path
name: account_sid
required: true
schema:
type: string
AuthorizationBearer:
description: 'Format: Bearer <TOKEN>'
in: header
name: authorization_bearer
schema:
description: Authenticates the request with your Telnyx API V2 KEY
type: string
BundleId:
in: path
name: bundle_id
required: true
schema:
description: Billing bundle's ID, this is used to identify the billing bundle
in the API.
example: 8661948c-a386-4385-837f-af00f40f111a
format: uuid
title: Bundle Id
type: string
CallControlId:
description: Unique identifier and token for controlling the call
in: path
name: call_control_id
required: true
schema:
type: string
CallSid:
description: The CallSid that identifies the call to update.
in: path
name: call_sid
required: true
schema:
type: string
CallSidOrParticipantLabel:
description: CallSid or Label of the Participant to update.
in: path
name: call_sid_or_participant_label
required: true
schema:
type: string
ConferenceRegion:
description: Region where the conference data is located
in: query
name: region
required: false
schema:
enum:
- Australia
- Europe
- Middle East
- US
type: string
ConferenceSid:
description: The ConferenceSid that uniquely identifies a conference.
in: path
name: conference_sid
required: true
schema:
type: string
ConferenceStatus:
description: Filters conferences by status.
example: in-progress
in: query
name: Status
required: false
schema:
enum:
- init
- in-progress
- completed
type: string
ConnectionId:
description: Telnyx connection id
in: path
name: connection_id
required: true
schema:
example: '1293384261075731461'
type: string
DateCreated:
description: Filters conferences by the creation date. Expected format is YYYY-MM-DD.
Also accepts inequality operators, e.g. DateCreated>=2023-05-22.
example: '>=2023-05-22'
in: query
name: DateCreated
required: false
schema:
type: string
DateUpdated:
description: Filters conferences by the time they were last updated. Expected
format is YYYY-MM-DD. Also accepts inequality operators, e.g. DateUpdated>=2023-05-22.
example: '>=2023-05-22'
in: query
name: DateUpdated
required: false
schema:
type: string
DocReqsRequirementId:
description: Uniquely identifies the requirement_type record
example: a9dad8d5-fdbd-49d7-aa23-39bb08a5ebaa
in: path
name: id
required: true
schema:
format: uuid
type: string
DocReqsRequirementTypeId:
description: Uniquely identifies the requirement_type record
example: a38c217a-8019-48f8-bff6-0fdd9939075b
in: path
name: id
required: true
schema:
format: uuid
type: string
EndTime:
description: Filters calls by their end date. Expected format is YYYY-MM-DD
example: '2023-05-22'
in: query
name: EndTime
required: false
schema:
type: string
EndTime_gt:
description: Filters calls by their end date (after). Expected format is YYYY-MM-DD
example: '2023-05-22'
in: query
name: EndTime_gt
required: false
schema:
type: string
EndTime_lt:
description: Filters calls by their end date (before). Expected format is YYYY-MM-DD
example: '2023-05-22'
in: query
name: EndTime_lt
required: false
schema:
type: string
EnterpriseId:
description: Unique identifier of the enterprise (UUID)
in: path
name: enterprise_id
required: true
schema:
example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58
format: uuid
type: string
FilterBasicStatusLifecycle:
description: Filter by a specific status of the resource's lifecycle.
in: query
name: filter[status]
required: false
schema:
enum:
- in-progress
- completed
- failed
example: in-progress
type: string
FilterCivicAddressesConsolidated:
description: Filter parameter for civic addresses (deepObject style). Supports
filtering by country.
explode: true
in: query
name: filter
schema:
properties:
country:
description: The country (or countries) to filter addresses by.
example:
- US
- CA
- MX
- BR
items:
description: The ISO 3166-1 alpha-2 country code (2 characters)
type: string
type: array
type: object
style: deepObject
FilterConnectionsConsolidated:
description: Filter parameter for external connections (deepObject style). Supports
filtering by connection_name, external_sip_connection, id, created_at, and
phone_number.
explode: true
in: query
name: filter
schema:
properties:
connection_name:
properties:
contains:
default: null
description: If present, connections with <code>connection_name</code>
containing the given value will be returned. Matching is not case-sensitive.
Requires at least three characters.
example: My Connection
type: string
type: object
created_at:
default: null
description: If present, connections with <code>created_at</code> date
matching the given YYYY-MM-DD date will be returned.
example: '2022-12-31'
type: string
external_sip_connection:
description: If present, connections with <code>external_sip_connection</code>
matching the given value will be returned.
enum:
- zoom
- operator_connect
example: zoom
type: string
id:
default: null
description: If present, connections with <code>id</code> matching the
given value will be returned.
example: '1930241863466354012'
type: string
phone_number:
description: 'Phone number filter for connections. Note: Despite the ''contains''
name, this requires a full E164 match per the original specification.'
properties:
contains:
description: If present, connections associated with the given phone_number
will be returned. A full match is necessary with a e164 format.
example: '+15555555555'
type: string
type: object
type: object
style: deepObject
FilterConsolidated:
description: 'Consolidated filter parameter (deepObject style). Originally:
filter[customer_reference][eq], filter[customer_reference][contains], filter[used_as_emergency],
filter[street_address][contains], filter[address_book][eq]'
explode: true
in: query
name: filter
schema:
properties:
address_book:
properties:
eq:
description: If present, only returns results with the <code>address_book</code>
flag equal to the given value.
type: string
type: object
customer_reference:
oneOf:
- description: If present, addresses with <code>customer_reference</code>
containing the given value will be returned. Matching is not case-sensitive.
type: string
- properties:
contains:
description: Partial match for customer_reference. Matching is not
case-sensitive.
type: string
eq:
description: Exact match for customer_reference.
type: string
type: object
street_address:
properties:
contains:
description: If present, addresses with <code>street_address</code>
containing the given value will be returned. Matching is not case-sensitive.
Requires at least three characters.
type: string
type: object
used_as_emergency:
description: 'If set as ''true'', only addresses used as the emergency
address for at least one active phone-number will be returned. When
set to ''false'', the opposite happens: only addresses not used as the
emergency address from phone-numbers will be returned.'
type: string
type: object
style: deepObject
FilterDocumentLinksConsolidated:
description: 'Consolidated filter parameter for document links (deepObject style).
Originally: filter[linked_record_type], filter[linked_resource_id]'
explode: true
in: query
name: filter
required: false
schema:
additionalProperties: false
properties:
linked_record_type:
description: The linked_record_type of the document to filter on.
example: porting_order
type: string
linked_resource_id:
description: The linked_resource_id of the document to filter on.
example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58
format: uuid
type: string
type: object
style: deepObject
FilterDocumentsConsolidated:
description: 'Consolidated filter parameter for documents (deepObject style).
Originally: filter[filename][contains], filter[customer_reference][eq], filter[customer_reference][in][],
filter[created_at][gt], filter[created_at][lt]'
explode: true
in: query
name: filter
required: false
schema:
additionalProperties: false
example:
created_at:
gt: '2021-01-01T00:00:00Z'
customer_reference:
in:
- REF001
- REF002
filename:
contains: invoice
properties:
created_at:
additionalProperties: false
properties:
gt:
description: Filter by created at greater than provided value.
example: '2021-04-09T22:25:27.521Z'
format: date-time
type: string
lt:
description: Filter by created at less than provided value.
example: '2021-04-09T22:25:27.521Z'
format: date-time
type: string
type: object
customer_reference:
additionalProperties: false
properties:
eq:
description: Filter documents by a customer reference.
example: MY REF 001
type: string
in:
description: Filter documents by a list of customer references.
example:
- MY REF 001
- MY REF 002
items:
type: string
type: array
type: object
filename:
additionalProperties: false
properties:
contains:
description: Filter by string matching part of filename.
example: invoice
type: string
type: object
type: object
style: deepObject
FilterLogMessagesConsolidated:
description: Filter parameter for log messages (deepObject style). Supports
filtering by external_connection_id and telephone_number with eq/contains
operations.
explode: true
in: query
name: filter
schema:
properties:
external_connection_id:
description: The external connection ID to filter by or "null" to filter
for logs without an external connection ID
example: 67ea7693-9cd5-4a68-8c76-abb3aa5bf5d2
type: string
telephone_number:
description: Telephone number filter operations for log messages. Use
'eq' for exact matches or 'contains' for partial matches.
properties:
contains:
description: The partial phone number to filter log messages for.
Requires 3-15 digits.
example: '+123'
type: string
eq:
description: The phone number to filter log messages for or "null"
to filter for logs without a phone number
example: '+1234567890'
type: string
x-format: E164
type: object
type: object
style: deepObject
FilterMobileNetworkOperatorsConsolidated:
description: 'Consolidated filter parameter for mobile network operators (deepObject
style). Originally: filter[name][starts_with], filter[name][contains], filter[name][ends_with],
filter[country_code], filter[mcc], filter[mnc], filter[tadig], filter[network_preferences_enabled]'
explode: true
in: query
name: filter
schema:
properties:
country_code:
description: Filter by exact country_code.
example: US
type: string
mcc:
description: Filter by exact MCC.
example: '310'
type: string
mnc:
description: Filter by exact MNC.
example: '410'
type: string
name:
description: Advanced name filtering operations
properties:
contains:
description: Filter by name containing match.
example: T&T
type: string
ends_with:
description: Filter by name ending with.
example: T
type: string
starts_with:
description: Filter by name starting with.
example: AT
type: string
type: object
network_preferences_enabled:
description: Filter by network_preferences_enabled.
example: true
type: boolean
tadig:
description: Filter by exact TADIG.
example: USACG
type: string
type: object
FilterName:
description: Case-insensitive substring filter on the name field.
in: query
name: filter[name]
required: false
schema:
type: string
FilterOTAUpdatesConsolidated:
description: 'Consolidated filter parameter for OTA updates (deepObject style).
Originally: filter[status], filter[sim_card_id], filter[type]'
explode: true
in: query
name: filter
schema:
properties:
sim_card_id:
description: The SIM card identification UUID.
type: string
status:
description: Filter by a specific status of the resource's lifecycle.
enum:
- in-progress
- completed
- failed
example: in-progress
type: string
type:
description: Filter by type.
enum:
- sim_card_network_preferences
example: sim_card_network_preferences
type: string
type: object
FilterOrganizationUserEmail:
description: Filter by email address (partial match)
in: query
name: filter[email]
schema:
type: string
FilterOrganizationUserStatus:
description: Filter by user status
in: query
name: filter[user_status]
schema:
enum:
- enabled
- disabled
- blocked
type: string
FilterPhoneNumbersConsolidated:
description: Filter parameter for phone numbers (deepObject style). Supports
filtering by phone_number, civic_address_id, and location_id with eq/contains
operations.
explode: true
in: query
name: filter
required: false
schema:
properties:
civic_address_id:
properties:
eq:
description: The civic address ID to filter by
example: '19990261512338516954'
type: string
type: object
location_id:
properties:
eq:
description: The location ID to filter by
example: '19995665508264022121'
type: string
type: object
phone_number:
properties:
contains:
description: The phone number to filter by (partial match)
example: '+1970'
type: string
eq:
description: The phone number to filter by (exact match)
example: '+19705555098'
type: string
type: object
type: object
style: deepObject
FilterProvider:
description: Filter by voice synthesis provider. Case-insensitive.
in: query
name: filter[provider]
required: false
schema:
enum:
- telnyx
- minimax
- Telnyx
- Minimax
type: string
FilterReleasesConsolidated:
description: Filter parameter for releases (deepObject style). Supports filtering
by status, civic_address_id, location_id, and phone_number with eq/contains
operations.
explode: true
in: query
name: filter
schema:
properties:
civic_address_id:
properties:
eq:
description: The civic address ID to filter by
example: '19990261512338516954'
type: string
type: object
location_id:
properties:
eq:
description: The location ID to filter by
example: '19995665508264022121'
type: string
type: object
phone_number:
description: Phone number filter operations. Use 'eq' for exact matches
or 'contains' for partial matches.
properties:
contains:
description: The partial phone number to filter by. Requires 3-15
digits.
example: '+123'
type: string
eq:
description: The phone number to filter by
example: '+1234567890'
type: string
x-format: E164
type: object
status:
properties:
eq:
description: The status of the release to filter by
example:
- pending
- in_progress
items:
enum:
- pending_upload
- pending
- in_progress
- complete
- failed
- expired
- unknown
type: string
type: array
type: object
type: object
style: deepObject
FilterRequirementTypesConsolidated:
description: 'Consolidated filter parameter for requirement types (deepObject
style). Originally: filter[name]'
explode: true
in: query
name: filter
required: false
schema:
additionalProperties: false
properties:
name:
additionalProperties: false
properties:
contains:
description: Filters requirement types to those whose name contains
a certain string.
example: utility bill
type: string
type: object
type: object
style: deepObject
FilterRequirementsConsolidated:
description: 'Consolidated filter parameter for requirements (deepObject style).
Originally: filter[country_code], filter[phone_number_type], filter[action]'
explode: true
in: query
name: filter
required: false
schema:
additionalProperties: false
properties:
action:
description: Filters requirements to those applying to a specific action.
enum:
- branded_calling
- ordering
- porting
example: porting
type: string
country_code:
description: Filters results to those applying to a 2-character (ISO 3166-1
alpha-2) country code
example: US
type: string
phone_number_type:
description: Filters results to those applying to a specific phone_number_type
enum:
- local
- national
- toll_free
example: local
type: string
type: object
style: deepObject
FilterSIMCardActionsConsolidated:
description: 'Consolidated filter parameter for SIM card actions (deepObject
style). Originally: filter[sim_card_id], filter[status], filter[bulk_sim_card_action_id],
filter[action_type]'
explode: true
in: query
name: filter
schema:
properties:
action_type:
description: Filter by action type.
enum:
- enable
- enable_standby_sim_card
- disable
- set_standby
- remove_public_ip
- set_public_ip
example: disable
type: string
bulk_sim_card_action_id:
description: Filter by a bulk SIM card action ID.
example: 47a1c2b0-cc7b-4ab1-bb98-b33fb0fc61b9
format: uuid
type: string
sim_card_id:
description: A valid SIM card ID.
example: 47a1c2b0-cc7b-4ab1-bb98-b33fb0fc61b9
format: uuid
type: string
status:
description: Filter by a specific status of the resource's lifecycle.
enum:
- in-progress
- completed
- failed
example: in-progress
type: string
type: object
FilterSIMCardConsolidated:
description: 'Consolidated filter parameter for SIM cards (deepObject style).
Originally: filter[iccid], filter[msisdn], filter[status], filter[tags]'
explode: true
in: query
name: filter
schema:
properties:
iccid:
description: A search string to partially match for the SIM card's ICCID.
example: '89310410106543789301'
type: string
msisdn:
description: A search string to match for the SIM card's MSISDN.
example: '+13109976224'
type: string
status:
description: Filter by a SIM card's status.
items:
enum:
- enabled
- disabled
- standby
- data_limit_exceeded
- unauthorized_imei
type: string
type: array
tags:
description: "A list of SIM card tags to filter on.<br/><br/>\n If the\
\ SIM card contains <b><i>all</i></b> of the given <code>tags</code>\
\ they will be found.<br/><br/>\nFor example, if the SIM cards have\
\ the following tags: <ul>\n <li><code>['customers', 'staff', 'test']</code>\n\
\ <li><code>['test']</code></li>\n <li><code>['customers']</code></li>\n\
</ul>\nSearching for <code>['customers', 'test']</code> returns only\
\ the first because it's the only one with both tags.<br/> Searching\
\ for <code>test</code> returns the first two SIMs, because both of\
\ them have such tag.<br/> Searching for <code>customers</code> returns\
\ the first and last SIMs.<br/>\n"
example:
- personal
- customers
- active-customers
items:
type: string
type: array
type: object
FilterSIMCardGroupId:
description: A valid SIM card group ID.
in: query
name: filter[sim_card_group_id]
schema:
example: 47a1c2b0-cc7b-4ab1-bb98-b33fb0fc61b9
format: uuid
type: string
FilterSIMCardId:
description: A valid SIM card ID.
in: query
name: filter[sim_card_id]
schema:
example: 47a1c2b0-cc7b-4ab1-bb98-b33fb0fc61b9
format: uuid
type: string
FilterSIMCardOrdersConsolidated:
description: 'Consolidated filter parameter for SIM card orders (deepObject
style). Originally: filter[created_at], filter[updated_at], filter[quantity],
filter[cost.amount], filter[cost.currency], filter[address.id], filter[address.street_address],
filter[address.extended_address], filter[address.locality], filter[address.administrative_area],
filter[address.country_code], filter[address.postal_code]'
explode: true
in: query
name: filter
schema:
properties:
address.administrative_area:
description: Filter by state or province where the address is located.
example: TX
type: string
address.country_code:
description: Filter by the mobile operator two-character (ISO 3166-1 alpha-2)
origin country code.
example: US
type: string
address.extended_address:
description: Returns entries with matching name of the supplemental field
for address information.
example: 14th Floor
type: string
address.id:
description: Uniquely identifies the address for the order.
example: '1293384261075731499'
type: string
address.locality:
description: Filter by the name of the city where the address is located.
example: Austin
type: string
address.postal_code:
description: Filter by postal code for the address.
example: '78701'
type: string
address.street_address:
description: Returns entries with matching name of the street where the
address is located.
example: 600 Congress Avenue
type: string
cost.amount:
description: The total monetary amount of the order.
example: '2.53'
type: string
cost.currency:
description: Filter by ISO 4217 currency string.
example: USD
type: string
created_at:
description: Filter by ISO 8601 formatted date-time string matching resource
creation date-time.
example: '2018-02-02T22:25:27.521Z'
format: date-time
type: string
quantity:
description: Filter orders by how many SIM cards were ordered.
example: 21
type: integer
updated_at:
description: Filter by ISO 8601 formatted date-time string matching resource
last update date-time.
example: '2018-02-02T22:25:27.521Z'
format: date-time
type: string
type: object
FilterUploadsConsolidated:
description: Filter parameter for uploads (deepObject style). Supports filtering
by status, civic_address_id, location_id, and phone_number with eq/contains
operations.
explode: true
in: query
name: filter
required: false
schema:
properties:
civic_address_id:
properties:
eq:
description: The civic address ID to filter by
example: '19990261512338516954'
type: string
type: object
location_id:
properties:
eq:
description: The location ID to filter by
example: '19995665508264022121'
type: string
type: object
phone_number:
properties:
contains:
description: The phone number to filter by (partial match)
example: '+1970'
type: string
eq:
description: The phone number to filter by (exact match)
example: '+19705555098'
type: string
type: object
st
# --- truncated at 32 KB (3538 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/telnyx/refs/heads/main/openapi/telnyx-openapi.yml