Telnyx Bundles API
The Bundles API from Telnyx — 2 operation(s) for bundles.
The Bundles API from Telnyx — 2 operation(s) for bundles.
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 Bundles 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:
- name: Bundles
paths:
/bundle_pricing/billing_bundles:
get:
description: Get all allowed bundles.
operationId: GetUserBillingBundles
parameters:
- $ref: '#/components/parameters/bundle-pricing_FilterConsolidated'
- $ref: '#/components/parameters/bundle-pricing_PageConsolidated'
- $ref: '#/components/parameters/AuthorizationBearer'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedBillingBundlesResponse'
description: Successful Response
'400':
$ref: '#/components/responses/bundle-pricing_BadRequestErrorResponse'
'401':
$ref: '#/components/responses/UnauthorizedErrorResponse'
default:
$ref: '#/components/responses/bundle-pricing_GenericErrorResponse'
summary: Retrieve Bundles
tags:
- Bundles
x-latency-category: responsive
/bundle_pricing/billing_bundles/{bundle_id}:
get:
description: Get a single bundle by ID.
operationId: GetBillingBundleById
parameters:
- $ref: '#/components/parameters/BundleId'
- $ref: '#/components/parameters/AuthorizationBearer'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/BillingBundleResponse'
description: Successful Response
'401':
$ref: '#/components/responses/UnauthorizedErrorResponse'
'404':
$ref: '#/components/responses/bundle-pricing_NotFoundErrorResponse'
default:
$ref: '#/components/responses/bundle-pricing_GenericErrorResponse'
summary: Get Bundle By Id
tags:
- Bundles
x-latency-category: responsive
components:
schemas:
PaginatedBillingBundlesResponse:
properties:
data:
items:
$ref: '#/components/schemas/BillingBundleSummary'
title: Data
type: array
meta:
$ref: '#/components/schemas/PaginationResponse'
required:
- meta
- data
title: PaginatedBillingBundlesResponse
type: object
BundleLimitSchema:
properties:
billing_service:
example: emergency
title: Billing Service
type: string
country:
deprecated: true
description: Use country_iso instead
title: Country
type: string
country_code:
example: 61
title: Country Code
type: integer
country_iso:
example: AU
title: Country Iso
type: string
created_at:
format: date
title: Created At
type: string
direction:
$ref: '#/components/schemas/BundleLimitDirection'
id:
example: e6a32ea9-953b-4622-bbba-9f7bcf7e6717
format: uuid
title: Id
type: string
limit:
example: 1
title: Limit
type: integer
metric:
example: number
title: Metric
type: string
rate:
example: '5'
title: Rate
type: string
service:
example: E911
title: Service
type: string
types:
items:
example: local
type: string
title: Types
type: array
updated_at:
format: date
title: Updated At
type: string
required:
- id
- service
- metric
- created_at
- updated_at
title: BundleLimitSchema
type: object
BillingBundleSummary:
properties:
cost_code:
description: Bundle's cost code, this is used to identify the bundle in the billing system.
example: BUNDLE-PRICING-BASIC-MRC
title: Cost Code
type: string
created_at:
description: Date the bundle was created.
format: date
title: Created At
type: string
currency:
description: Bundle's currency code.
example: USD
title: Currency
type: string
id:
description: Bundle's ID, this is used to identify the bundle in the API.
example: 7ecd040e-6bac-4139-9160-3c0427d98fea
format: uuid
title: Id
type: string
is_public:
description: Available to all customers or only to specific customers.
title: Is Public
type: boolean
mrc_price:
description: Monthly recurring charge price.
example: 2.0
format: float
title: Mrc Price
type: number
name:
description: Bundle's name, this is used to identify the bundle in the UI.
example: Australia Basic
title: Name
type: string
slug:
description: Slugified version of the bundle's name.
example: basic-au-e4f8
title: Slug
type: string
specs:
example:
- 1 AU Number
- Emergency Calling
- All inbound and outbound calling billed pay-as-you-go
items:
type: string
title: Specs
type: array
required:
- id
- name
- cost_code
- is_public
- created_at
title: BillingBundleSummary
type: object
BillingBundleResponse:
properties:
data:
$ref: '#/components/schemas/BillingBundleSchema'
required:
- data
title: BillingBundleResponse
type: object
BundleLimitDirection:
description: An enumeration.
enum:
- inbound
- outbound
title: BundleLimitDirection
type: string
PaginationResponse:
properties:
page_number:
description: The current page number.
example: 2
title: Page Number
type: integer
page_size:
description: The number of results per page.
example: 25
title: Page Size
type: integer
total_pages:
description: Total number of pages from the results.
example: 3
title: Total Pages
type: integer
total_results:
description: Total number of results returned.
example: 55
title: Total Results
type: integer
required:
- total_results
- total_pages
- page_number
- page_size
title: PaginationResponse
type: object
BillingBundleSchema:
properties:
active:
description: If that bundle is active or not.
title: Active
type: boolean
bundle_limits:
items:
$ref: '#/components/schemas/BundleLimitSchema'
title: Bundle Limits
type: array
cost_code:
description: Bundle's cost code, this is used to identify the bundle in the billing system.
example: BUNDLE-PRICING-BASIC-MRC
title: Cost Code
type: string
created_at:
description: Date the bundle was created.
format: date
title: Created At
type: string
id:
description: Bundle's ID, this is used to identify the bundle in the API.
example: 7ecd040e-6bac-4139-9160-3c0427d98fea
format: uuid
title: Id
type: string
is_public:
description: Available to all customers or only to specific customers.
title: Is Public
type: boolean
name:
description: Bundle's name, this is used to identify the bundle in the UI.
example: Australia Basic
title: Name
type: string
slug:
description: Slugified version of the bundle's name.
example: basic-au-e4f8
title: Slug
type: string
required:
- id
- name
- cost_code
- active
- is_public
- created_at
- bundle_limits
title: BillingBundleSchema
type: object
parameters:
bundle-pricing_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: 20
description: The size of the page.
maximum: 250
minimum: 1
type: integer
type: object
style: deepObject
AuthorizationBearer:
description: 'Format: Bearer <TOKEN>'
in: header
name: authorization_bearer
schema:
description: Authenticates the request with your Telnyx API V2 KEY
type: string
bundle-pricing_FilterConsolidated:
description: 'Consolidated filter parameter (deepObject style). Supports filtering by country_iso and resource. Examples: filter[country_iso]=US or filter[resource]=+15617819942'
explode: true
in: query
name: filter
schema:
properties:
country_iso:
description: Filter by country code.
items:
example: US
type: string
title: Filter[Country Iso]
type: array
resource:
description: Filter by resource.
items:
description: Filter by resource.
example: '+15617819942'
type: string
title: Filter[Resource]
type: array
type: object
style: deepObject
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
responses:
bundle-pricing_NotFoundErrorResponse:
content:
application/json:
schema:
properties:
errors:
items:
properties:
code:
type: string
detail:
type: string
title:
type: string
type: object
type: array
type: object
description: Resource not found
bundle-pricing_GenericErrorResponse:
content:
application/json:
schema:
properties:
errors:
items:
properties:
code:
type: string
detail:
type: string
title:
type: string
type: object
type: array
type: object
description: Unexpected error
bundle-pricing_BadRequestErrorResponse:
content:
application/json:
schema:
properties:
errors:
items:
properties:
code:
type: string
detail:
type: string
title:
type: string
type: object
type: array
type: object
description: Invalid request parameters
UnauthorizedErrorResponse:
content:
application/json:
schema:
properties:
errors:
items:
properties:
code:
type: string
detail:
type: string
title:
type: string
type: object
type: array
type: object
description: Authentication required or invalid credentials
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