Telnyx Voicemail API

Voicemail API

Business capability
Voice & Telephony AE-150.50

Operations 3

GET /phone_numbers/{phone_number_id}/voicemail Get voicemail #
PATCH /phone_numbers/{phone_number_id}/voicemail Update voicemail #
POST /phone_numbers/{phone_number_id}/voicemail Create voicemail #

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-voicemail-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-voicemail-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Telnyx Voicemail 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 Voicemail 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: Voicemail
  description: Voicemail API
paths:
  /phone_numbers/{phone_number_id}/voicemail:
    parameters:
    - name: phone_number_id
      in: path
      description: The ID of the phone number.
      example: '123455678900'
      required: true
      schema:
        type: string
    get:
      description: Returns the voicemail settings for a phone number
      summary: Get voicemail
      operationId: GetVoicemail
      tags:
      - Voicemail
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/VoicemailPrefResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Resource not found
    patch:
      description: 'Update voicemail settings for a phone number. You can also configure a custom greeting by setting the `greeting` object: use `mode` `custom_greeting` together with a `media_name` that points to an audio file uploaded through the Media Storage API, or `mode` `default` to use the standard system greeting.'
      summary: Update voicemail
      operationId: UpdateVoicemail
      tags:
      - Voicemail
      requestBody:
        description: Details to update
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VoicemailRequest'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/VoicemailPrefResponse'
        '401':
          description: Unauthorized
        '404':
          description: Resource not found
        '422':
          description: Bad request
    post:
      description: 'Create voicemail settings for a phone number. You can also configure a custom greeting by setting the `greeting` object: use `mode` `custom_greeting` together with a `media_name` that points to an audio file uploaded through the Media Storage API, or `mode` `default` to use the standard system greeting.'
      summary: Create voicemail
      operationId: CreateVoicemail
      tags:
      - Voicemail
      requestBody:
        description: Details to create
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VoicemailRequest'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/VoicemailPrefResponse'
        '401':
          description: Unauthorized
        '404':
          description: Resource not found
        '422':
          description: Bad request
    servers:
    - url: https://api.telnyx.com/v2
      description: Version 2.0.0 of the Telnyx API
components:
  schemas:
    VoicemailPrefResponse:
      type: object
      example:
        enabled: true
        pin: '1234'
        greeting:
          mode: custom_greeting
          media_name: my_voicemail_greeting
      properties:
        enabled:
          type: boolean
          example: true
          description: Whether voicemail is enabled.
        pin:
          type: string
          example: '1234'
          description: The pin used for the voicemail.
        greeting:
          type: object
          description: Controls the greeting a caller hears before leaving a voicemail. Set `mode` to `default` to play the standard system greeting, or to `custom_greeting` to play your own audio. When `mode` is `custom_greeting`, `media_name` is required and must reference an audio file already uploaded to your account through the Media Storage API.
          properties:
            mode:
              type: string
              enum:
              - default
              - custom_greeting
              default: default
              example: custom_greeting
              description: The greeting mode. `default` plays the standard system greeting. `custom_greeting` plays the audio referenced by `media_name`.
            media_name:
              type:
              - string
              - 'null'
              example: my_voicemail_greeting
              description: The name of the media file to play as the greeting. Required when `mode` is `custom_greeting`; ignored when `mode` is `default`. The value must match the `media_name` of a file you previously uploaded with the Media Storage API (`POST /v2/media`).
    VoicemailRequest:
      type: object
      properties:
        pin:
          type: string
          example: '1234'
          description: The pin used for voicemail
        enabled:
          type: boolean
          example: true
          description: Whether voicemail is enabled.
        greeting:
          type: object
          description: Controls the greeting a caller hears before leaving a voicemail. Set `mode` to `default` to play the standard system greeting, or to `custom_greeting` to play your own audio. When `mode` is `custom_greeting`, `media_name` is required and must reference an audio file already uploaded to your account through the Media Storage API.
          properties:
            mode:
              type: string
              enum:
              - default
              - custom_greeting
              default: default
              example: custom_greeting
              description: The greeting mode. `default` plays the standard system greeting. `custom_greeting` plays the audio referenced by `media_name`.
            media_name:
              type:
              - string
              - 'null'
              example: my_voicemail_greeting
              description: The name of the media file to play as the greeting. Required when `mode` is `custom_greeting`; ignored when `mode` is `default`. The value must match the `media_name` of a file you previously uploaded with the Media Storage API (`POST /v2/media`).
      example:
        enabled: true
        pin: '1234'
        greeting:
          mode: custom_greeting
          media_name: my_voicemail_greeting
    VoicemailRequest_2:
      properties:
        enabled:
          description: Whether voicemail is enabled.
          example: true
          type: boolean
        pin:
          description: The pin used for voicemail
          example: '1234'
          type: string
      type: object
    VoicemailPrefResponse_2:
      example:
        enabled: true
        pin: '1234'
      properties:
        enabled:
          description: Whether voicemail is enabled.
          example: true
          type: boolean
        pin:
          description: The pin used for the voicemail.
          example: '1234'
          type: string
      type: object
  responses:
    VoicemailResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/VoicemailPrefResponse_2'
            type: object
      description: Successful response
  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