OpenAPI Specification
openapi: 3.1.0
info:
contact:
email: support@telnyx.com
description: Telnyx provides global communications and connectivity APIs for developers — including SIP trunking, programmable voice, SMS, MMS, WhatsApp Business Messaging, Call Control, Fax, Wireless (IoT & eSIM), Phone Numbers (DID provisioning & porting), Emergency Services, and Network APIs for private interconnects and edge connectivity. Build, scale, and manage voice, messaging, and data networks with Telnyx's carrier-grade global infrastructure and API-first platform.
title: Telnyx Access Tokens FQDNs API
version: 2.0.0
x-endpoint-cost: light
servers:
- description: Version 2.0.0 of the Telnyx API
url: https://api.telnyx.com/v2
security:
- bearerAuth: []
tags:
- description: FQDN operations
name: FQDNs
paths:
/fqdns:
get:
description: Get all FQDNs belonging to the user that match the given filters.
operationId: ListFqdns
parameters:
- $ref: '#/components/parameters/connections_PageConsolidated'
- description: 'Consolidated filter parameter (deepObject style). Originally: filter[connection_id], filter[fqdn], filter[port], filter[dns_record_type]'
explode: true
in: query
name: filter
schema:
properties:
connection_id:
description: ID of the FQDN connection to which the FQDN belongs.
type: string
dns_record_type:
description: DNS record type used by the FQDN.
example: a
type: string
fqdn:
description: FQDN represented by the resource.
example: example.com
type: string
port:
description: Port to use when connecting to the FQDN.
example: 5060
type: integer
type: object
style: deepObject
responses:
'200':
$ref: '#/components/responses/ListFqdnsResponse'
'400':
$ref: '#/components/responses/connections_BadRequestResponse'
'401':
$ref: '#/components/responses/UnauthenticatedResponse'
summary: List FQDNs
tags:
- FQDNs
x-endpoint-cost: medium
x-group-parameters: 'true'
x-latency-category: responsive
post:
description: Create a new FQDN object.
operationId: CreateFqdn
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateFqdnRequest'
responses:
'201':
$ref: '#/components/responses/FqdnResponse'
'401':
$ref: '#/components/responses/UnauthenticatedResponse'
'403':
$ref: '#/components/responses/connections_UnauthorizedResponse'
'422':
$ref: '#/components/responses/connections_UnprocessableEntityResponse'
summary: Create an FQDN
tags:
- FQDNs
x-endpoint-cost: medium
x-latency-category: responsive
/fqdns/{id}:
delete:
description: Delete an FQDN.
operationId: DeleteFqdn
parameters:
- $ref: '#/components/parameters/FqdnId'
responses:
'200':
$ref: '#/components/responses/FqdnResponse'
'400':
$ref: '#/components/responses/connections_BadRequestResponse'
'401':
$ref: '#/components/responses/UnauthenticatedResponse'
'403':
$ref: '#/components/responses/connections_UnauthorizedResponse'
'404':
$ref: '#/components/responses/connections_NotFoundResponse'
summary: Delete an FQDN
tags:
- FQDNs
x-latency-category: responsive
get:
description: Return the details regarding a specific FQDN.
operationId: RetrieveFqdn
parameters:
- $ref: '#/components/parameters/FqdnId'
responses:
'200':
$ref: '#/components/responses/FqdnResponse'
'400':
$ref: '#/components/responses/connections_BadRequestResponse'
'401':
$ref: '#/components/responses/UnauthenticatedResponse'
'403':
$ref: '#/components/responses/connections_UnauthorizedResponse'
'404':
$ref: '#/components/responses/connections_NotFoundResponse'
summary: Retrieve an FQDN
tags:
- FQDNs
x-latency-category: responsive
patch:
description: Update the details of a specific FQDN.
operationId: UpdateFqdn
parameters:
- $ref: '#/components/parameters/FqdnId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateFqdnRequest'
responses:
'200':
$ref: '#/components/responses/FqdnResponse'
'401':
$ref: '#/components/responses/UnauthenticatedResponse'
'403':
$ref: '#/components/responses/connections_UnauthorizedResponse'
'404':
$ref: '#/components/responses/connections_NotFoundResponse'
'422':
$ref: '#/components/responses/connections_UnprocessableEntityResponse'
summary: Update an FQDN
tags:
- FQDNs
x-latency-category: responsive
components:
responses:
connections_BadRequestResponse:
content:
application/json:
examples:
missingParameter:
value:
errors:
- code: '10015'
detail: The request failed because it was not well-formed.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /
title: Bad Request
schema:
$ref: '#/components/schemas/ErrorResponse'
description: Bad request, the request was unacceptable, often due to missing a required parameter.
FqdnResponse:
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/Fqdn'
title: FQDN Response
type: object
description: Successful response with details about an FQDN connection.
connections_NotFoundResponse:
content:
application/json:
examples:
notFound:
value:
errors:
- code: '10005'
detail: The requested resource or URL could not be found.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10005
source:
pointer: /
title: Resource not found
schema:
$ref: '#/components/schemas/ErrorResponse'
description: The requested resource doesn't exist.
connections_UnauthorizedResponse:
content:
application/json:
examples:
notAuthorized:
value:
errors:
- code: '10010'
detail: You are not authorized to access the requested resource.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10010
source:
pointer: /
title: Not authorized
schema:
$ref: '#/components/schemas/ErrorResponse'
description: The user doesn't have the required permissions to perform the requested action.
ListFqdnsResponse:
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/Fqdn'
type: array
meta:
$ref: '#/components/schemas/connections_PaginationMeta'
title: List FQDNs Response
type: object
description: Successful response with a list of FQDN connections.
UnauthenticatedResponse:
content:
application/json:
examples:
Authentication Failed:
value:
errors:
- code: '10009'
detail: Could not understand the provided credentials.
meta:
url: https://developers.telnyx.com/docs/overview/errors/10009
title: Authentication failed
schema:
$ref: '#/components/schemas/ErrorResponse'
description: Unauthorized
connections_UnprocessableEntityResponse:
content:
application/json:
examples:
unprocessableEntity:
value:
errors:
- code: '10015'
detail: 'Invalid dnis_format: test, was provided. Acceptable formats are +e164, e164, national, sip_username'
meta:
url: https://developers.telnyx.com/docs/overview/errors/10015
source:
pointer: /inbound/dnis_number_format
title: Bad Request
schema:
$ref: '#/components/schemas/ErrorResponse'
description: The request was well-formed but was unable to be followed due to semantic errors.
schemas:
Fqdn:
example:
connection_id: '1516447646313612565'
created_at: '2018-02-02T22:25:27.521Z'
dns_record_type: a
fqdn: example.com
id: '1293384261075731499'
port: 5060
record_type: fqdn
updated_at: '2018-02-02T22:25:27.521Z'
properties:
connection_id:
description: ID of the FQDN connection to which this FQDN is attached.
type: string
created_at:
description: ISO 8601 formatted date indicating when the resource was created.
example: '2018-02-02T22:25:27.521Z'
type: string
dns_record_type:
description: The DNS record type for the FQDN. For cases where a port is not set, the DNS record type must be 'srv'. For cases where a port is set, the DNS record type must be 'a'. If the DNS record type is 'a' and a port is not specified, 5060 will be used.
example: a
type: string
fqdn:
description: FQDN represented by this resource.
example: example.com
type: string
id:
description: Identifies the resource.
example: '1293384261075731499'
type: string
x-format: int64
port:
default: 5060
description: Port to use when connecting to this FQDN.
example: 5060
type: integer
record_type:
description: Identifies the type of the resource.
example: fqdn
type: string
updated_at:
description: ISO 8601 formatted date indicating when the resource was updated.
example: '2018-02-02T22:25:27.521Z'
type: string
title: Fqdn
type: object
CreateFqdnRequest:
example:
connection_id: '1516447646313612565'
dns_record_type: a
fqdn: example.com
port: 8080
properties:
connection_id:
description: ID of the FQDN connection to which this IP should be attached.
type: string
dns_record_type:
description: The DNS record type for the FQDN. For cases where a port is not set, the DNS record type must be 'srv'. For cases where a port is set, the DNS record type must be 'a'. If the DNS record type is 'a' and a port is not specified, 5060 will be used.
example: a
type: string
fqdn:
description: FQDN represented by this resource.
example: example.com
type: string
port:
default: 5060
description: Port to use when connecting to this FQDN.
example: 5060
type:
- integer
- 'null'
required:
- fqdn
- dns_record_type
- connection_id
title: Create Fqdn Request
type: object
ErrorResponse:
properties:
errors:
items:
properties:
code:
type: string
detail:
type: string
meta:
properties:
url:
format: uri
type: string
type: object
source:
properties:
pointer:
type: string
type: object
title:
type: string
type: object
type: array
type: object
UpdateFqdnRequest:
example:
connection_id: '1516447646313612565'
dns_record_type: a
fqdn: example.com
port: 8080
properties:
connection_id:
description: ID of the FQDN connection to which this IP should be attached.
type: string
dns_record_type:
description: The DNS record type for the FQDN. For cases where a port is not set, the DNS record type must be 'srv'. For cases where a port is set, the DNS record type must be 'a'. If the DNS record type is 'a' and a port is not specified, 5060 will be used.
example: a
type: string
fqdn:
description: FQDN represented by this resource.
example: example.com
type: string
port:
default: 5060
description: Port to use when connecting to this FQDN.
example: 5060
type:
- integer
- 'null'
title: Update FQDN Request
type: object
connections_PaginationMeta:
properties:
page_number:
example: 2
type: integer
page_size:
example: 25
type: integer
total_pages:
example: 3
type: integer
total_results:
example: 55
type: integer
title: Pagination Meta
type: object
parameters:
FqdnId:
description: Identifies the resource.
in: path
name: id
required: true
schema:
example: '1517907029795014409'
type: string
x-format: int64
connections_PageConsolidated:
description: 'Consolidated page parameter (deepObject style). Originally: page[size], page[number]'
explode: true
in: query
name: page
schema:
properties:
number:
default: 1
description: The page number to load
minimum: 1
type: integer
size:
default: 250
description: The size of the page
maximum: 250
minimum: 1
type: integer
type: object
style: deepObject
securitySchemes:
bearerAuth:
scheme: bearer
type: http
branded-calling_bearerAuth:
description: API key passed as a Bearer token in the Authorization header
scheme: bearer
type: http
oauthClientAuth:
description: OAuth 2.0 authentication for Telnyx API and MCP integrations
flows:
authorizationCode:
authorizationUrl: https://api.telnyx.com/v2/oauth/authorize
refreshUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
tokenUrl: https://api.telnyx.com/v2/oauth/token
clientCredentials:
scopes:
admin: Administrative access to Telnyx resources
tokenUrl: https://api.telnyx.com/v2/oauth/token
type: oauth2
outbound-voice-profiles_bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http
pronunciation-dicts_bearerAuth:
description: Telnyx API v2 key. Obtain from https://portal.telnyx.com
scheme: bearer
type: http
stored-payment-transactions_bearerAuth:
bearerFormat: JWT
scheme: bearer
type: http