Telnyx Pronunciation Dictionaries API

Manage pronunciation dictionaries for text-to-speech synthesis. Dictionaries contain alias items (text replacement) and phoneme items (IPA pronunciation notation) that control how specific words are spoken.

Operations 5

GET /pronunciation_dicts List pronunciation dictionaries #
POST /pronunciation_dicts Create a pronunciation dictionary #
DELETE /pronunciation_dicts/{id} Delete a pronunciation dictionary #
GET /pronunciation_dicts/{id} Get a pronunciation dictionary #
PATCH /pronunciation_dicts/{id} Update a pronunciation dictionary #

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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/telnyx:telnyx-pronunciation-dictionaries-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

telnyx-pronunciation-dictionaries-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Telnyx Pronunciation Dictionaries API
  version: 2.0.0
  contact:
    email: support@telnyx.com
  x-endpoint-cost: light
  x-refined-note:
  - x-latency-category differs across the merged source definitions and was not carried
  description: 'Operations tagged Pronunciation Dictionaries across 3 of this provider''s published API definitions: telnyx-openapi.json, telnyx-openapi.yml, telnyx-openapi_2.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.telnyx.com/v2
  description: Version 2.0.0 of the Telnyx API
security:
- bearerAuth: []
tags:
- name: Pronunciation Dictionaries
  description: Manage pronunciation dictionaries for text-to-speech synthesis. Dictionaries contain alias items (text replacement) and phoneme items (IPA pronunciation notation) that control how specific words are spoken.
paths:
  /pronunciation_dicts:
    get:
      summary: List pronunciation dictionaries
      description: List all pronunciation dictionaries for the authenticated organization. Results are paginated using offset-based pagination.
      operationId: ListPronunciationDicts
      tags:
      - Pronunciation Dictionaries
      parameters:
      - name: page[number]
        in: query
        required: false
        description: Page number (1-based). Defaults to 1.
        schema:
          type: integer
          minimum: 1
          default: 1
      - name: page[size]
        in: query
        required: false
        description: Number of results per page. Defaults to 20, maximum 250.
        schema:
          type: integer
          minimum: 1
          maximum: 250
          default: 20
      responses:
        '200':
          description: A paginated list of pronunciation dictionaries.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PronunciationDictListResponse'
        '400':
          description: Invalid pagination parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
        '401':
          description: Unauthorized. Invalid or missing API key.
    post:
      summary: Create a pronunciation dictionary
      description: 'Create a new pronunciation dictionary for the authenticated organization. Each dictionary contains a list of items that control how specific words are spoken. Items can be alias type (text replacement) or phoneme type (IPA pronunciation notation).


        As an alternative to providing items directly as JSON, you can upload a dictionary file (PLS/XML or plain text format, max 1MB) using multipart/form-data. PLS files use the standard W3C Pronunciation Lexicon Specification XML format. Text files use a line-based format: `word=alias` for aliases, `word:/phoneme/` for IPA phonemes.


        Limits:

        - Maximum 50 dictionaries per organization

        - Maximum 100 items per dictionary

        - Text: max 200 characters

        - Alias/phoneme value: max 500 characters

        - File upload: max 1MB (1,048,576 bytes)'
      operationId: CreatePronunciationDict
      tags:
      - Pronunciation Dictionaries
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreatePronunciationDictRequest'
          multipart/form-data:
            schema:
              type: object
              required:
              - name
              - file
              properties:
                name:
                  type: string
                  description: Human-readable name. Must be unique within the organization.
                  minLength: 1
                  maxLength: 255
                  example: Brand Names
                file:
                  type: string
                  format: binary
                  description: 'Dictionary file to upload. Supported formats: PLS/XML (.pls, .xml) and plain text (.txt). Max size: 1MB (1,048,576 bytes).'
      responses:
        '201':
          description: Pronunciation dictionary created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PronunciationDictResponse'
        '401':
          description: Unauthorized. Invalid or missing API key.
        '422':
          description: Validation error or organization limit exceeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
              examples:
                validation_error:
                  summary: Validation failed
                  value:
                    errors:
                    - code: '90202'
                      title: Validation failed
                      detail: items must have at least one item
                      source:
                        pointer: /items
                limit_exceeded:
                  summary: Organization limit exceeded
                  value:
                    errors:
                    - code: '90203'
                      title: Limit exceeded
                      detail: Maximum number of pronunciation dictionaries (50) reached
                      source:
                        pointer: /
                duplicate_name:
                  summary: Duplicate dictionary name
                  value:
                    errors:
                    - code: '90202'
                      title: Validation failed
                      detail: organization_id, name a dictionary with this name already exists
                      source:
                        pointer: /organization_id, name
    servers:
    - url: https://api.telnyx.com/v2
      description: Version 2.0.0 of the Telnyx API
  /pronunciation_dicts/{id}:
    delete:
      summary: Delete a pronunciation dictionary
      description: Permanently delete a pronunciation dictionary.
      operationId: DeletePronunciationDict
      tags:
      - Pronunciation Dictionaries
      parameters:
      - $ref: '#/components/parameters/pronunciation_dict_id'
      responses:
        '204':
          description: Dictionary deleted successfully. No content returned.
        '401':
          description: Unauthorized. Invalid or missing API key.
        '404':
          description: Pronunciation dictionary not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
    get:
      summary: Get a pronunciation dictionary
      description: Retrieve a single pronunciation dictionary by ID.
      operationId: GetPronunciationDict
      tags:
      - Pronunciation Dictionaries
      parameters:
      - $ref: '#/components/parameters/pronunciation_dict_id'
      responses:
        '200':
          description: The requested pronunciation dictionary.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PronunciationDictResponse'
        '401':
          description: Unauthorized. Invalid or missing API key.
        '404':
          description: Pronunciation dictionary not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
              example:
                errors:
                - code: '90201'
                  title: Pronunciation dictionary not found
                  detail: The requested pronunciation dictionary does not exist
    patch:
      summary: Update a pronunciation dictionary
      description: Update the name and/or items of an existing pronunciation dictionary. Uses optimistic locking — if the dictionary was modified concurrently, the request returns 409 Conflict.
      operationId: UpdatePronunciationDict
      tags:
      - Pronunciation Dictionaries
      parameters:
      - $ref: '#/components/parameters/pronunciation_dict_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePronunciationDictRequest'
      responses:
        '200':
          description: Pronunciation dictionary updated successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PronunciationDictResponse'
        '401':
          description: Unauthorized. Invalid or missing API key.
        '404':
          description: Pronunciation dictionary not found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
        '409':
          description: Conflict. The dictionary was modified concurrently. Re-fetch and retry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
              example:
                errors:
                - code: '90200'
                  title: Pronunciation dictionary error
                  detail: Dictionary was modified concurrently, please retry
        '422':
          description: Validation error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/pronunciation-dicts_ErrorResponse'
    servers:
    - url: https://api.telnyx.com/v2
      description: Version 2.0.0 of the Telnyx API
components:
  schemas:
    PronunciationDictItem:
      description: A single pronunciation dictionary item. Use type 'alias' to replace matched text with a spoken alias, or type 'phoneme' to specify exact pronunciation using IPA notation.
      oneOf:
      - $ref: '#/components/schemas/PronunciationDictAliasItem'
      - $ref: '#/components/schemas/PronunciationDictPhonemeItem'
      discriminator:
        propertyName: type
        mapping:
          alias: '#/components/schemas/PronunciationDictAliasItem'
          phoneme: '#/components/schemas/PronunciationDictPhonemeItem'
    PronunciationDictResponse:
      type: object
      description: Response containing a single pronunciation dictionary.
      properties:
        data:
          $ref: '#/components/schemas/PronunciationDictData'
    PronunciationDictAliasItem:
      type: object
      description: An alias pronunciation item. When the `text` value is found in input, it is replaced with the `alias` before speech synthesis.
      required:
      - text
      - type
      - alias
      additionalProperties: false
      properties:
        text:
          type: string
          description: The text to match in the input. Case-insensitive matching is used during synthesis.
          minLength: 1
          maxLength: 200
          example: Telnyx
        type:
          type: string
          description: The item type.
          enum:
          - alias
          example: alias
        alias:
          type: string
          description: The replacement text that will be spoken instead.
          minLength: 1
          maxLength: 500
          example: tel-nicks
    CreatePronunciationDictRequest:
      type: object
      description: Request body for creating a pronunciation dictionary.
      required:
      - name
      - items
      properties:
        name:
          type: string
          description: Human-readable name. Must be unique within the organization.
          minLength: 1
          maxLength: 255
          example: Brand Names
        items:
          type: array
          description: List of pronunciation items (alias or phoneme type). At least one item is required.
          minItems: 1
          maxItems: 100
          items:
            $ref: '#/components/schemas/PronunciationDictItem'
    UpdatePronunciationDictRequest:
      type: object
      description: Request body for updating a pronunciation dictionary. At least one field must be provided.
      minProperties: 1
      properties:
        name:
          type: string
          description: Updated dictionary name.
          minLength: 1
          maxLength: 255
          example: Updated Brand Names
        items:
          type: array
          description: Updated list of pronunciation items (alias or phoneme type).
          minItems: 1
          maxItems: 100
          items:
            $ref: '#/components/schemas/PronunciationDictItem'
    PronunciationDictData:
      type: object
      description: A pronunciation dictionary record.
      properties:
        record_type:
          type: string
          description: Identifies the resource type.
          enum:
          - pronunciation_dict
          example: pronunciation_dict
        id:
          type: string
          format: uuid
          description: Unique identifier for the pronunciation dictionary.
          example: c215a3e1-be41-4701-97e8-1d3c22f9a5b7
        name:
          type: string
          description: Human-readable name for the dictionary. Must be unique within the organization.
          example: Brand Names
        items:
          type: array
          description: List of pronunciation items (alias or phoneme type).
          items:
            $ref: '#/components/schemas/PronunciationDictItem'
        version:
          type: integer
          description: Auto-incrementing version number. Increases by 1 on each update. Used for optimistic concurrency control and cache invalidation.
          example: 1
        created_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp with millisecond precision.
          example: '2026-03-25T12:00:00.000Z'
        updated_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp with millisecond precision.
          example: '2026-03-25T12:00:00.000Z'
    PronunciationDictListResponse:
      type: object
      description: Paginated list of pronunciation dictionaries.
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/PronunciationDictData'
          description: Array of pronunciation dictionary objects.
        meta:
          $ref: '#/components/schemas/pronunciation-dicts_PaginationMeta'
    pronunciation-dicts_ErrorResponse:
      type: object
      description: Standard Telnyx error response.
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/pronunciation-dicts_ErrorObject'
    PronunciationDictPhonemeItem:
      type: object
      description: A phoneme pronunciation item. When the `text` value is found in input, it is pronounced using the specified IPA phoneme notation.
      required:
      - text
      - type
      - phoneme
      - alphabet
      additionalProperties: false
      properties:
        text:
          type: string
          description: The text to match in the input. Case-insensitive matching is used during synthesis.
          minLength: 1
          maxLength: 200
          example: Telnyx
        type:
          type: string
          description: The item type.
          enum:
          - phoneme
          example: phoneme
        phoneme:
          type: string
          description: The phoneme notation representing the desired pronunciation.
          minLength: 1
          maxLength: 500
          example: ˈtɛl.nɪks
        alphabet:
          type: string
          description: The phonetic alphabet used for the phoneme notation.
          enum:
          - ipa
          example: ipa
    pronunciation-dicts_ErrorObject:
      type: object
      properties:
        code:
          type: string
          description: Machine-readable error code.
          example: '90202'
        title:
          type: string
          description: Short human-readable error title.
          example: Validation failed
        detail:
          type: string
          description: Detailed error description.
          example: items must have at least one item
        source:
          type: object
          description: Source of the error.
          properties:
            pointer:
              type: string
              description: JSON pointer to the field that caused the error.
              example: /items
    pronunciation-dicts_PaginationMeta:
      type: object
      description: Pagination metadata returned with list responses.
      properties:
        page_number:
          type: integer
          description: Current page number (1-based).
          example: 1
        page_size:
          type: integer
          description: Number of results per page.
          example: 20
        total_results:
          type: integer
          description: Total number of results across all pages.
          example: 3
        total_pages:
          type: integer
          description: Total number of pages.
          example: 1
    ErrorObject:
      properties:
        code:
          description: Machine-readable error code.
          example: '90202'
          type: string
        detail:
          description: Detailed error description.
          example: items must have at least one item
          type: string
        source:
          description: Source of the error.
          properties:
            pointer:
              description: JSON pointer to the field that caused the error.
              example: /items
              type: string
          type: object
        title:
          description: Short human-readable error title.
          example: Validation failed
          type: string
      type: object
    pronunciation-dicts_ErrorResponse_2:
      description: Standard Telnyx error response.
      properties:
        errors:
          items:
            $ref: '#/components/schemas/ErrorObject'
          type: array
      type: object
  parameters:
    pronunciation_dict_id:
      name: id
      in: path
      required: true
      description: The UUID of the pronunciation dictionary.
      schema:
        type: string
        format: uuid
        example: c215a3e1-be41-4701-97e8-1d3c22f9a5b7
  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
    pay-connectors_bearerAuth:
      type: http
      scheme: bearer
      description: Telnyx API key, not the processor bearer token.
    telnyxApiKey:
      type: http
      scheme: bearer
      description: Management-only Telnyx account credential.
x-refined-from:
- telnyx-openapi.json
- telnyx-openapi.yml
- telnyx-openapi_2.json
x-service-info:
  categories:
  - communication
  - developer-tools
  docs:
    apiReference: https://developers.telnyx.com
    homepage: https://telnyx.com
    llms: https://telnyx.com/llms.txt