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 Verified Numbers 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: Verified Numbers operations
name: Verified Numbers
paths:
/verified_numbers:
get:
description: Gets a paginated list of Verified Numbers.
operationId: ListVerifiedNumbers
parameters:
- description: 'Consolidated page parameter (deepObject style). Use page[size] and page[number] in the query string. Originally: page[size], page[number]'
explode: true
in: query
name: page
required: false
schema:
properties:
number:
default: 1
title: page[number]
type: integer
size:
default: 25
title: page[size]
type: integer
type: object
style: deepObject
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/ListVerifiedNumbersResponse'
description: Expected response to a valid request.
'400':
$ref: '#/components/responses/verified-numbers_GenericErrorResponse'
'401':
$ref: '#/components/responses/UnauthorizedRequestErrorResponse'
'422':
$ref: '#/components/responses/verified-numbers_UnprocessableEntityErrorResponse'
summary: List all Verified Numbers
tags:
- Verified Numbers
x-group-parameters: 'true'
x-latency-category: responsive
post:
description: Initiates phone number verification procedure. Supports DTMF extension dialing for voice calls to numbers behind IVR systems.
operationId: CreateVerifiedNumber
requestBody:
content:
application/json:
examples:
call_verification:
summary: Call verification
value:
phone_number: '+15551234567'
verification_method: call
call_with_extension:
description: Example for verifying a number behind an IVR system that requires extension dialing
summary: Call verification with DTMF extension
value:
extension: ww243w1
phone_number: '+15551234567'
verification_method: call
sms_verification:
summary: SMS verification
value:
phone_number: '+15551234567'
verification_method: sms
schema:
properties:
extension:
default: null
description: 'Optional DTMF extension sequence to dial after the call is answered. This parameter enables verification of phone numbers behind IVR systems that require extension dialing. Valid characters: digits 0-9, letters A-D, symbols * and #. Pauses: w = 0.5 second pause, W = 1 second pause. Maximum length: 50 characters. Only works with ''call'' verification method.'
example: ww243w1
maxLength: 50
pattern: ^[0-9A-D*#wW]*$
type: string
phone_number:
example: '+15551234567'
type: string
verification_method:
description: Verification method.
enum:
- sms
- call
example: sms
type: string
required:
- phone_number
- verification_method
title: Create Verified Number Request
type: object
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/CreateVerifiedNumberResponse'
description: Expected response to a valid request.
'400':
$ref: '#/components/responses/verified-numbers_GenericErrorResponse'
'401':
$ref: '#/components/responses/UnauthorizedRequestErrorResponse'
'422':
$ref: '#/components/responses/verified-numbers_UnprocessableEntityErrorResponse'
summary: Request phone number verification
tags:
- Verified Numbers
x-latency-category: responsive
/verified_numbers/{phone_number}:
delete:
operationId: DeleteVerifiedNumber
parameters:
- description: The phone number being deleted.
in: path
name: phone_number
required: true
schema:
description: +E164 formatted phone number.
example: '+15551234567'
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VerifiedNumberResponseDataWrapper'
description: Expected verifications response to a valid request.
'400':
$ref: '#/components/responses/verified-numbers_GenericErrorResponse'
'401':
$ref: '#/components/responses/UnauthorizedRequestErrorResponse'
'404':
$ref: '#/components/responses/verified-numbers_NotFoundErrorResponse'
summary: Delete a verified number
tags:
- Verified Numbers
x-latency-category: responsive
get:
operationId: GetVerifiedNumber
parameters:
- description: The phone number being requested.
in: path
name: phone_number
required: true
schema:
description: +E164 formatted phone number.
example: '+15551234567'
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VerifiedNumberResponseDataWrapper'
description: Expected verifications response to a valid request.
'400':
$ref: '#/components/responses/verified-numbers_GenericErrorResponse'
'401':
$ref: '#/components/responses/UnauthorizedRequestErrorResponse'
'404':
$ref: '#/components/responses/verified-numbers_NotFoundErrorResponse'
summary: Retrieve a verified number
tags:
- Verified Numbers
x-latency-category: responsive
/verified_numbers/{phone_number}/actions/verify:
post:
operationId: VerifyVerificationCode
parameters:
- description: The phone number being verified.
in: path
name: phone_number
required: true
schema:
description: +E164 formatted phone number.
example: '+15551234567'
type: string
requestBody:
content:
application/json:
schema:
properties:
verification_code:
example: '123456'
type: string
required:
- verification_code
title: Verify Verification Code Request
type: object
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/VerifiedNumberResponseDataWrapper'
description: Expected response to a valid request.
'400':
$ref: '#/components/responses/verified-numbers_GenericErrorResponse'
'401':
$ref: '#/components/responses/UnauthorizedRequestErrorResponse'
'404':
$ref: '#/components/responses/verified-numbers_NotFoundErrorResponse'
'422':
$ref: '#/components/responses/verified-numbers_UnprocessableEntityErrorResponse'
summary: Submit verification code
tags:
- Verified Numbers
x-latency-category: responsive
components:
schemas:
verified-numbers_Meta:
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
type: object
ListVerifiedNumbersResponse:
description: A paginated list of Verified Numbers
properties:
data:
items:
$ref: '#/components/schemas/VerifiedNumberResponse'
type: array
meta:
$ref: '#/components/schemas/verified-numbers_Meta'
required:
- data
- meta
title: ListVerifiedNumbersResponse
type: object
VerifiedNumberResponse:
properties:
phone_number:
example: '+15551234567'
type: string
record_type:
$ref: '#/components/schemas/VerifiedNumberRecordType'
verified_at:
example: '2020-09-14T17:03:32.965812'
type: string
title: VerifiedNumberResponse
type: object
VerifiedNumberResponseDataWrapper:
properties:
data:
$ref: '#/components/schemas/VerifiedNumberResponse'
additionalProperties: true
type: object
title: VerifiedNumberResponseDataWrapper
type: object
VerifiedNumberRecordType:
description: The possible verified numbers record types.
enum:
- verified_number
example: verified_number
title: VerifiedNumberRecordType
type: string
CreateVerifiedNumberResponse:
properties:
phone_number:
example: '+15551234567'
type: string
verification_method:
example: sms
type: string
title: CreateVerifiedNumberResponse
type: object
verified-numbers_Errors:
properties:
errors:
items:
$ref: '#/components/schemas/verified-numbers_Error'
type: array
type: object
verified-numbers_Error:
properties:
code:
type: string
detail:
type: string
meta:
properties:
url:
description: URL with additional information on the error.
type: string
type: object
source:
properties:
parameter:
description: Indicates which query parameter caused the error.
type: string
pointer:
description: JSON pointer (RFC6901) to the offending entity.
type: string
type: object
title:
type: string
required:
- code
- title
type: object
responses:
verified-numbers_GenericErrorResponse:
content:
application/json:
schema:
$ref: '#/components/schemas/verified-numbers_Errors'
description: Bad Request
UnauthorizedRequestErrorResponse:
content:
application/json:
schema:
$ref: '#/components/schemas/verified-numbers_Errors'
description: Unauthorized Request
verified-numbers_NotFoundErrorResponse:
content:
application/json:
schema:
$ref: '#/components/schemas/verified-numbers_Errors'
description: Resource Not Found
verified-numbers_UnprocessableEntityErrorResponse:
content:
application/json:
schema:
$ref: '#/components/schemas/verified-numbers_Errors'
description: Unprocessable Entity
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