Telnyx Credentials API

Credentials operations

Operations 5

GET /telephony_credentials List all credentials #
POST /telephony_credentials Create a credential #
DELETE /telephony_credentials/{id} Delete a credential #
GET /telephony_credentials/{id} Get a credential #
PATCH /telephony_credentials/{id} Update a credential #

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-credentials-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-credentials-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Telnyx Credentials 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 Credentials 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: Credentials
  description: Credentials operations
paths:
  /telephony_credentials:
    get:
      description: Returns a paginated list of the on-demand telephony credentials on your account, with support for filtering.
      summary: List all credentials
      operationId: FindTelephonyCredentials
      tags:
      - Credentials
      x-group-parameters: 'true'
      parameters:
      - $ref: '#/components/parameters/telephony-credentials_PageConsolidated'
      - $ref: '#/components/parameters/telephony-credentials_FilterConsolidated'
      responses:
        '200':
          description: Successful response with multiple credentials
          content:
            application/json:
              schema:
                type: object
                title: Get All Telephony Credential Response
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/TelephonyCredential'
                  meta:
                    $ref: '#/components/schemas/PaginationMeta'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Resource not found
    post:
      description: Creates a new on-demand telephony credential for the specified connection. The credential can then be used to generate access tokens for SIP or WebRTC clients.
      summary: Create a credential
      operationId: CreateTelephonyCredential
      tags:
      - Credentials
      parameters: []
      requestBody:
        description: Parameters that can be defined during credential creation
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TelephonyCredentialCreateRequest'
      responses:
        '201':
          description: Successful response with details about a credential
          content:
            application/json:
              schema:
                type: object
                title: Telephony Credential Response
                properties:
                  data:
                    $ref: '#/components/schemas/TelephonyCredential'
        '422':
          description: Bad request
    servers:
    - url: https://api.telnyx.com/v2
      description: Version 2.0.0 of the Telnyx API
  /telephony_credentials/{id}:
    delete:
      description: Permanently deletes the specified telephony credential, revoking any access it provided.
      summary: Delete a credential
      operationId: DeleteTelephonyCredential
      tags:
      - Credentials
      parameters:
      - name: id
        in: path
        description: Identifies the resource.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response with details about a credential
          content:
            application/json:
              schema:
                type: object
                title: Telephony Credential Response
                properties:
                  data:
                    $ref: '#/components/schemas/TelephonyCredential'
        '401':
          description: Unauthorized
        '404':
          description: Resource not found
        '422':
          description: Bad request
    get:
      description: Get the details of an existing On-demand Credential.
      summary: Get a credential
      operationId: GetTelephonyCredential
      tags:
      - Credentials
      parameters:
      - name: id
        in: path
        description: Identifies the resource.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response with details about a credential
          content:
            application/json:
              schema:
                type: object
                title: Telephony Credential Response
                properties:
                  data:
                    $ref: '#/components/schemas/TelephonyCredential'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: Resource not found
    patch:
      description: Updates the specified telephony credential and returns the updated credential.
      summary: Update a credential
      operationId: UpdateTelephonyCredential
      tags:
      - Credentials
      parameters:
      - name: id
        in: path
        description: Identifies the resource.
        required: true
        schema:
          type: string
      requestBody:
        description: Parameters that can be updated in a credential
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TelephonyCredentialUpdateRequest'
      responses:
        '200':
          description: Successful response with details about a credential
          content:
            application/json:
              schema:
                type: object
                title: Telephony Credential Response
                properties:
                  data:
                    $ref: '#/components/schemas/TelephonyCredential'
        '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:
    TelephonyCredential:
      type: object
      title: On-demand Credential
      properties:
        id:
          type: string
          description: Identifies the resource.
          example: c215ade3-0d39-418e-94be-c5f780760199
        record_type:
          type: string
          description: Identifies the type of the resource.
          example: credential
        name:
          type: string
        resource_id:
          type: string
          description: Identifies the resource this credential is associated with.
          example: connection:1234567890
        expired:
          type: boolean
          description: Defaults to false
        sip_username:
          type: string
          description: The randomly generated SIP username for the credential.
          example: gencrednCvHU5IYpSBPPsXI2iQsDX
        sip_password:
          type: string
          description: The randomly generated SIP password for the credential.
          example: a92dbcfb60184a8cb330b0acb2f7617b
        created_at:
          type: string
          description: ISO-8601 formatted date indicating when the resource was created.
          example: '2018-02-02T22:25:27.521Z'
        user_id:
          type: string
          description: Identifies the user this credential is associated with.
          example: user-id
        updated_at:
          type: string
          description: ISO-8601 formatted date indicating when the resource was updated.
          example: '2018-02-02T22:25:27.521Z'
        expires_at:
          type: string
          description: ISO-8601 formatted date indicating when the resource will expire.
          example: '2018-02-02T22:25:27.521Z'
      example:
        id: c215ade3-0d39-418e-94be-c5f780760199
        record_type: credential
        name: '2020-06-18 21:32:38.917732Z'
        expired: false
        user_id: user-id
        resource_id: connection:804252963366242252
        sip_password: a92dbcfb60184a8cb330b0acb2f7617b
        sip_username: gencrednCvHU5IYpSBPPsXI2iQsDX
        created_at: '2020-06-18T21:32:38'
        expires_at: '2042-06-18T21:32:38'
        updated_at: '2020-06-18T21:32:38.000Z'
    PaginationMeta:
      type: object
      properties:
        total_pages:
          type: integer
          example: 3
        total_results:
          type: integer
          example: 55
        page_number:
          type: integer
          example: 2
        page_size:
          type: integer
          example: 25
    TelephonyCredentialUpdateRequest:
      type: object
      title: TelephonyCredentialUpdateRequest
      properties:
        name:
          type: string
        tag:
          type: string
          description: Tags a credential. A single tag can hold at maximum 1000 credentials.
          example: some_tag
        connection_id:
          type: string
          description: Identifies the Credential Connection this credential is associated with.
          example: '987654321'
        expires_at:
          type: string
          description: ISO-8601 formatted date indicating when the credential will expire.
          example: '2018-02-02T22:25:27.521Z'
      example:
        name: My-new-updated-credential
        connection_id: '987654321'
    TelephonyCredentialCreateRequest:
      type: object
      title: TelephonyCredentialCreateRequest
      required:
      - connection_id
      properties:
        name:
          type: string
        tag:
          type: string
          description: Tags a credential. A single tag can hold at maximum 1000 credentials.
          example: some_tag
        connection_id:
          type: string
          description: Identifies the Credential Connection this credential is associated with.
          example: '1234567890'
        expires_at:
          type: string
          description: ISO-8601 formatted date indicating when the credential will expire.
          example: '2018-02-02T22:25:27.521Z'
      example:
        name: My-new-credential
        connection_id: '1234567890'
    TelephonyCredential_2:
      type: object
      title: On-demand Credential
      properties:
        id:
          type: string
          description: Identifies the resource.
          example: c215ade3-0d39-418e-94be-c5f780760199
        record_type:
          type: string
          description: Identifies the type of the resource.
          example: credential
        name:
          type: string
        resource_id:
          type: string
          description: Identifies the resource this credential is associated with.
          example: connection:1234567890
        expired:
          type: boolean
          description: Defaults to false
        sip_username:
          type: string
          description: The randomly generated SIP username for the credential.
          example: gencrednCvHU5IYpSBPPsXI2iQsDX
        sip_password:
          type: string
          description: The randomly generated SIP password for the credential.
          example: a92dbcfb60184a8cb330b0acb2f7617b
        created_at:
          type: string
          description: ISO-8601 formatted date indicating when the resource was created.
          example: '2018-02-02T22:25:27.521Z'
        user_id:
          type: string
          description: Identifies the user this credential is associated with.
          example: user-id
        updated_at:
          type: string
          description: ISO-8601 formatted date indicating when the resource was updated.
          example: '2018-02-02T22:25:27.521Z'
        expires_at:
          type: string
          description: ISO-8601 formatted date indicating when the resource will expire.
          example: '2018-02-02T22:25:27.521Z'
        token_material:
          $ref: '#/components/schemas/TokenMaterial'
          description: Returned when the credential is created. See `GET /telephony_credentials/{id}/token_material` to fetch it again.
      example:
        id: c215ade3-0d39-418e-94be-c5f780760199
        record_type: credential
        name: '2020-06-18 21:32:38.917732Z'
        expired: false
        user_id: user-id
        resource_id: connection:804252963366242252
        sip_password: a92dbcfb60184a8cb330b0acb2f7617b
        sip_username: gencrednCvHU5IYpSBPPsXI2iQsDX
        created_at: '2020-06-18T21:32:38'
        expires_at: '2042-06-18T21:32:38'
        updated_at: '2020-06-18T21:32:38.000Z'
    TokenMaterial:
      type: object
      title: Token Material
      description: 'What a server needs to mint login tokens for the credential itself, with no request per token (`TelephonyCredential#to_jwt` in telnyx-ruby 3.1.0 or later). As sensitive as `sip_password`: keep it on the server.'
      properties:
        kid:
          type: string
          description: Identifies the Telnyx signing key the `signing_secret` was derived with. Goes in the token header.
          example: v1
        tel_token:
          type: string
          description: Opaque value Telnyx uses to resolve the credential. Carried in the token's `tel_token` claim as is.
          example: rj_ZkkZUOZMxZOfOmLpEUB3siU7u6RjZFeM9s-gb_xCR56WFKFAJiMyF2T6CBRmlh_Sy0i_lfyT9AI8sEif8MTIIszyzSl_aDnG48aO50yaHGuRSYbUbSYm9WIiQ0g==
        signing_secret:
          type: string
          description: The HMAC-SHA256 key the token is signed with, base64url without padding.
          example: cCL985ACi7wpbe_2xh1VDF3NabPJ90u1wCKmJCPNpxw
  parameters:
    telephony-credentials_PageConsolidated:
      name: page
      in: query
      style: deepObject
      explode: true
      description: 'Consolidated page parameter (deepObject style). Originally: page[number], page[size]'
      schema:
        type: object
        properties:
          number:
            type: integer
            minimum: 1
            default: 1
            description: The page number to load
          size:
            type: integer
            minimum: 1
            maximum: 250
            default: 50
            description: The size of the page
    telephony-credentials_FilterConsolidated:
      name: filter
      in: query
      style: deepObject
      explode: true
      description: 'Consolidated filter parameter (deepObject style). Originally: filter[tag], filter[name], filter[status], filter[resource_id], filter[sip_username]'
      schema:
        type: object
        properties:
          tag:
            type: string
            description: Filter by tag
          name:
            type: string
            description: Filter by name
          status:
            type: string
            description: Filter by status
          resource_id:
            type: string
            description: Filter by resource_id
          sip_username:
            type: string
            description: Filter by sip_username
  responses:
    GetAllTelephonyCredentialResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                items:
                  $ref: '#/components/schemas/TelephonyCredential'
                type: array
              meta:
                $ref: '#/components/schemas/PaginationMeta'
            title: Get All Telephony Credential Response
            type: object
      description: Successful response with multiple credentials
    TelephonyCredentialResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/TelephonyCredential'
            title: Telephony Credential Response
            type: object
      description: Successful response with details about a credential
  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