Telnyx Whatsapp Business Accounts API
Manage Whatsapp business accounts
Manage Whatsapp business accounts
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 Whatsapp Business Accounts 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: Manage Whatsapp business accounts
name: Whatsapp Business Accounts
paths:
/v2/whatsapp/business_accounts:
get:
operationId: ListWabas
parameters:
- $ref: '#/components/parameters/PageConsolidated'
responses:
'200':
$ref: '#/components/responses/WabasListResponse'
description: List of Whatsapp Business Accounts
4XX:
$ref: '#/components/responses/messaging_GenericErrorResponse'
summary: List Whatsapp Business Accounts
tags:
- Whatsapp Business Accounts
x-latency-category: responsive
/v2/whatsapp/business_accounts/{id}:
delete:
operationId: deleteWaba
parameters:
- $ref: '#/components/parameters/WabaId'
responses:
'204':
description: Deleted
4XX:
$ref: '#/components/responses/messaging_GenericErrorResponse'
summary: Delete a Whatsapp Business Account
tags:
- Whatsapp Business Accounts
x-latency-category: responsive
get:
operationId: GetSingleWaba
parameters:
- $ref: '#/components/parameters/WabaId'
responses:
'200':
$ref: '#/components/responses/WabaSingleResponse'
description: Whatsapp Business Account details
4XX:
$ref: '#/components/responses/messaging_GenericErrorResponse'
summary: Get a single Whatsapp Business Account
tags:
- Whatsapp Business Accounts
x-latency-category: responsive
/v2/whatsapp/business_accounts/{id}/phone_numbers:
get:
operationId: ListWabaPhones
parameters:
- $ref: '#/components/parameters/WabaId'
- $ref: '#/components/parameters/PageConsolidated'
responses:
'200':
$ref: '#/components/responses/WhatsappPhonesListResponse'
description: List of phone numbers
4XX:
$ref: '#/components/responses/messaging_GenericErrorResponse'
summary: List phone numbers for a WABA
tags:
- Whatsapp Business Accounts
x-latency-category: responsive
/v2/whatsapp/business_accounts/{id}/settings:
get:
operationId: GetWabaSettings
parameters:
- $ref: '#/components/parameters/WabaId'
responses:
'200':
$ref: '#/components/responses/WabaSettingsResponse'
description: WABA settings
4XX:
$ref: '#/components/responses/messaging_GenericErrorResponse'
summary: Get WABA settings
tags:
- Whatsapp Business Accounts
x-latency-category: responsive
patch:
operationId: PatchWabaSettings
parameters:
- $ref: '#/components/parameters/WabaId'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchWabaSettingsRequest'
required: true
responses:
'200':
$ref: '#/components/responses/WabaSettingsResponse'
description: Updated settings
4XX:
$ref: '#/components/responses/messaging_GenericErrorResponse'
summary: Update WABA settings
tags:
- Whatsapp Business Accounts
x-latency-category: responsive
components:
responses:
WhatsappPhonesListResponse:
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/WhatsappPhoneResponse'
type: array
meta:
$ref: '#/components/schemas/messaging_PaginationMeta'
type: object
description: Successful response with Whatsapp phone numbers
messaging_GenericErrorResponse:
content:
application/json:
schema:
$ref: '#/components/schemas/messaging_Errors'
description: Unexpected error
WabasListResponse:
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/WabaResponse'
type: array
meta:
$ref: '#/components/schemas/messaging_PaginationMeta'
type: object
description: Successful response with list of Whatsapp business accounts
WabaSettingsResponse:
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/WabaSettings'
type: object
description: Successful response with Whatsapp business account settings
WabaSingleResponse:
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/WabaResponse'
type: object
description: Successful response with Whatsapp business account
schemas:
messaging_Errors:
properties:
errors:
items:
$ref: '#/components/schemas/messaging_Error'
type: array
messaging_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
required:
- total_pages
- total_results
- page_size
- page_number
type: object
PatchWabaSettingsRequest:
properties:
name:
type: string
timezone:
description: IANA timezone identifier
example: America/New_York
type: string
webhook_enabled:
description: Enable/disable receiving Whatsapp events
type: boolean
webhook_events:
items:
description: Whatsapp event to subscribe to
type: string
type: array
webhook_failover_url:
description: Failover URL to send Whatsapp events
format: url
type: string
webhook_url:
description: URL to send Whatsapp events
format: url
type: string
type: object
WabaResponse:
properties:
account_review_status:
description: Account review status of Whatsapp business account
type: string
business_verification_status:
description: Business verification status of Whatsapp business account
type: string
country:
description: Country associated with Whatsapp business account
type: string
created_at:
format: date-time
type: string
id:
description: Internal ID of Whatsapp business account
format: uuid
type: string
name:
description: Name of Whatsapp business account
type: string
phone_numbers_count:
description: Count of phone numbers associated with Whatsapp business account
type: integer
record_type:
example: whatsapp_business_account
type: string
status:
description: Status of Whatsapp business account
type: string
waba_id:
description: WABA ID of Whatsapp business account
type: string
type: object
messaging_Error:
properties:
code:
type: string
x-format: integer
detail:
type: string
meta:
type: object
source:
properties:
parameter:
description: Indicates which query parameter caused the error.
type: string
pointer:
description: JSON pointer (RFC6901) to the offending entity.
format: json-pointer
type: string
type: object
title:
type: string
required:
- code
- title
WhatsappPhoneResponse:
properties:
calling_enabled:
type: boolean
created_at:
format: date-time
type: string
display_name:
type: string
enabled:
type: boolean
phone_number:
description: Phone number in E164 format
type: string
phone_number_id:
description: Whatsapp phone number ID
type: string
quality_rating:
description: Whatsapp quality rating
type: string
record_type:
example: whatsapp_business_phone_number
type: string
status:
type: string
user_id:
description: User ID
type: string
waba_id:
description: WABA ID of Whatsapp business account
type: string
type: object
WabaSettings:
properties:
id:
description: Internal ID of Whatsapp business account
format: uuid
type: string
name:
type: string
record_type:
example: whatsapp_business_account_settings
type: string
timezone:
example: America/Chicago
type: string
updated_at:
format: date-time
type: string
webhook_enabled:
description: Enable/disable receiving Whatsapp events
type: boolean
webhook_events:
items:
description: Whatsapp event to subscribe to
type: string
type: array
webhook_failover_url:
description: Failover URL to receive Whatsapp events
format: url
type: string
webhook_url:
description: URL to receive Whatsapp events
format: url
type: string
type: object
parameters:
WabaId:
description: Whatsapp Business Account ID
in: path
name: id
required: true
schema:
type: string
PageConsolidated:
description: 'Consolidated page parameter (deepObject style). Originally: page[number], page[size]'
explode: true
in: query
name: page
schema:
properties:
number:
default: 1
description: The page number to load
minimum: 1
type: integer
size:
default: 20
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