Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/telnyx-pricing-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
version: 2.0.0
x-latency-category: responsive
x-endpoint-cost: light
title: Telnyx Pricing API
description: SIP trunking, SMS, MMS, Call Control and Telephony Data Services.
contact:
email: support@telnyx.com
servers:
- url: https://api.telnyx.com/v2
description: Version 2.0.0 of the Telnyx API
security:
- bearerAuth: []
tags:
- name: Pricing
description: Public pricing operations
paths:
/pricing/products:
get:
summary: List products
description: Returns the full product catalog with pagination. Each entry contains a slug, display name, and description. Use the slug to fetch per-product pricing via GET /pricing/products/{slug}.
operationId: listPricingProducts
tags:
- Pricing
parameters:
- name: page[number]
in: query
description: Page number (1-based).
required: false
schema:
type: integer
minimum: 1
title: Page Number
default: 1
- name: page[size]
in: query
description: Number of items per page (max 100).
required: false
schema:
type: integer
minimum: 1
maximum: 100
title: Page Size
default: 20
responses:
'200':
description: Product catalog listing
content:
application/json:
schema:
$ref: '#/components/schemas/PricingProductListResponse'
example:
data:
- slug: string
name: string
description: string
meta:
page_number: 0
page_size: 0
total_pages: 0
total_results: 0
'400':
description: Invalid pagination parameters
x-latency-category: responsive
security: []
/pricing/products/{slug}:
get:
summary: Get product pricing
description: 'Returns pricing entries for a single product. Most products return standard rate entries with fields like rate, unit, country_iso, direction, and tiers. Inference products return model-specific fields (model, input_rate, output_rate, cached_input_rate) with tiered pricing. Some products use rate decks (pricing_type: rate_deck) where rates are determined dynamically.'
operationId: getProductPricing
tags:
- Pricing
parameters:
- name: slug
in: path
description: Product slug from the catalog listing.
required: true
schema:
type: string
- name: page[number]
in: query
description: Page number (1-based).
required: false
schema:
type: integer
minimum: 1
title: Page Number
default: 1
- name: page[size]
in: query
description: Number of items per page (max 100).
required: false
schema:
type: integer
minimum: 1
maximum: 100
title: Page Size
default: 20
- name: filter[country_iso]
description: Two-letter ISO 3166-1 alpha-2 country code (uppercase, e.g. US) to filter pricing to a single country.
in: query
required: false
schema:
anyOf:
- type: string
maxLength: 2
minLength: 2
pattern: ^[A-Z]{2}$
- type: 'null'
title: Filter[Country Iso]
responses:
'200':
description: Product pricing entries
content:
application/json:
schema:
$ref: '#/components/schemas/PricingEntryListResponse'
example:
data:
- name: string
rate: 0
unit: string
currency: string
type: string
tiers:
- min: 0
rate: 0
max: 1000000
model: string
input_rate: string
cached_input_rate: string
output_rate: string
input_tiers:
- min: 0
rate: 0
max: 1000000
cached_input_tiers:
- min: 0
rate: 0
max: 1000000
output_tiers:
- min: 0
rate: 0
max: 1000000
meta:
page_number: 0
page_size: 0
total_pages: 0
total_results: 0
'404':
description: Product not found
x-latency-category: responsive
security: []
components:
schemas:
PricingEntryListResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/PricingEntry'
meta:
$ref: '#/components/schemas/pricing_PaginationMeta'
required:
- data
- meta
pricing_PaginationMeta:
type: object
properties:
page_number:
type: integer
page_size:
type: integer
total_pages:
type: integer
total_results:
type: integer
required:
- page_number
- page_size
- total_pages
- total_results
PricingEntry:
type: object
description: A single pricing entry. Standard products include rate, unit, currency, type, country_iso, direction, and tiers. Inference products include model, input_rate, output_rate, cached_input_rate, and their respective tier arrays. Rate-deck products include pricing_type and note fields with null rate and empty tiers.
properties:
name:
type: string
description: Human-readable name describing the pricing entry.
rate:
oneOf:
- type: number
description: Rate for standard products (e.g., 0.004).
- type: string
description: Rate for inference products (e.g., "0.001").
- type: 'null'
description: Per-unit rate. Numeric for standard products, string for inference products. Null for rate-deck products.
unit:
type: string
description: Unit of measurement (e.g., part, message, GB, per_1k_tokens).
currency:
type: string
description: ISO currency code (e.g., USD).
type:
type: string
description: Pricing type (e.g., usage).
country_iso:
type:
- string
- 'null'
description: ISO country code. Null for non-geographic products.
direction:
type:
- string
- 'null'
description: Direction (e.g., termination). Null for non-directional products.
tiers:
type: array
items:
$ref: '#/components/schemas/PricingTier'
description: Volume-based tiered pricing. Empty for rate-deck products.
pricing_type:
type:
- string
- 'null'
description: Pricing type for non-standard products (e.g., rate_deck). Absent on standard products.
note:
type:
- string
- 'null'
description: Additional note for rate-deck products (e.g., "Pricing is determined by the WhatsApp rate deck.").
model:
type: string
description: Model identifier. Present only on inference product entries.
input_rate:
type: string
description: Input token rate. Present only on inference product entries.
cached_input_rate:
type: string
description: Cached input token rate. Present only on inference product entries.
output_rate:
type: string
description: Output token rate. Present only on inference product entries.
input_tiers:
type: array
items:
$ref: '#/components/schemas/PricingTier'
description: Input token tiered pricing. Present only on inference product entries.
cached_input_tiers:
type: array
items:
$ref: '#/components/schemas/PricingTier'
description: Cached input token tiered pricing. Present only on inference product entries.
output_tiers:
type: array
items:
$ref: '#/components/schemas/PricingTier'
description: Output token tiered pricing. Present only on inference product entries.
PricingProduct:
type: object
properties:
slug:
type: string
description: Product identifier used in the per-product pricing endpoint.
name:
type: string
description: Display name of the product.
description:
type: string
description: Human-readable description of the product.
required:
- slug
- name
- description
PricingTier:
type: object
properties:
min:
type: integer
minimum: 0
description: Lower bound of the tier (inclusive).
max:
type:
- integer
- 'null'
description: Upper bound of the tier (exclusive). Null means no upper limit.
rate:
oneOf:
- type: number
- type: string
description: Rate for this tier. Numeric for standard products, string for inference products.
required:
- min
- max
- rate
PricingProductListResponse:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/PricingProduct'
meta:
$ref: '#/components/schemas/pricing_PaginationMeta'
required:
- data
- meta
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: API key
description: 'Telnyx API key supplied as `Authorization: Bearer <token>`. In production, auth may be validated by the API gateway and forwarded via Telnyx auth headers.'
Payment:
type: apiKey
in: header
name: Authorization
description: 'Machine Payment Protocol credential used on paid retries, sent as `Authorization: Payment ...`. Obtained by paying a challenge returned in the `WWW-Authenticate` header of a 402 response. This is not a Telnyx API key; initial challenge requests use standard bearer authentication instead.'
agent-memory_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key
bearerAuth:
type: http
scheme: bearer
branded-calling_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Generate one at https://portal.telnyx.com/#/app/api-keys.
collections_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Collections and results are automatically scoped to the authenticated user's organization.
number-reputation_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Generate one at https://portal.telnyx.com/#/app/api-keys.
oauthClientAuth:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
authorizationCode:
authorizationUrl: https://api.telnyx.com/v2/oauth/authorize
tokenUrl: https://api.telnyx.com/v2/oauth/token
refreshUrl: https://api.telnyx.com/v2/oauth/token
scopes:
admin: Administrative access to Telnyx resources
description: OAuth 2.0 authentication for Telnyx API and MCP integrations
outbound-voice-profiles_bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
pronunciation-dicts_bearerAuth:
type: http
scheme: bearer
description: Telnyx API v2 key. Obtain from https://portal.telnyx.com
rcs-registration_bearerAuth:
type: http
scheme: bearer
bearerFormat: API key
stored-payment-transactions_bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
transcriptions-search_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key. Results are automatically scoped to the authenticated user's organization.
web-search_bearerAuth:
type: http
scheme: bearer
description: Telnyx API key
x-service-info:
categories:
- communication
- developer-tools
docs:
apiReference: https://developers.telnyx.com
homepage: https://telnyx.com
llms: https://telnyx.com/llms.txt