Telnyx Requirements API

Requirements for international numbers and porting orders

OpenAPI Specification

telnyx-requirements-api-openapi.yml Raw ↑
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 Requirements 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:
- description: Requirements for international numbers and porting orders
  name: Requirements
paths:
  /requirements:
    get:
      description: List all requirements with filtering, sorting, and pagination
      operationId: ListRequirements
      parameters:
      - $ref: '#/components/parameters/FilterRequirementsConsolidated'
      - $ref: '#/components/parameters/SortRequirementsConsolidated'
      - $ref: '#/components/parameters/documents_PageConsolidated'
      responses:
        '200':
          $ref: '#/components/responses/ListRequirementsResponse'
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/documents_Errors'
          description: Unprocessable entity. Check the 'detail' field in response for details.
        default:
          $ref: '#/components/responses/documents_GenericErrorResponse'
      summary: List all requirements
      tags:
      - Requirements
      x-latency-category: responsive
  /requirements/{id}:
    get:
      description: Retrieve a document requirement record
      operationId: RetrieveDocumentRequirements
      parameters:
      - $ref: '#/components/parameters/DocReqsRequirementId'
      responses:
        '200':
          $ref: '#/components/responses/DocReqsRequirementResponse'
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/documents_Errors'
          description: Unprocessable entity. Check the 'detail' field in response for details.
        default:
          $ref: '#/components/responses/documents_GenericErrorResponse'
      summary: Retrieve a document requirement
      tags:
      - Requirements
      x-latency-category: responsive
components:
  schemas:
    documents_Errors:
      properties:
        errors:
          items:
            $ref: '#/components/schemas/documents_Error'
          type: array
      type: object
    DocReqsRequirementList:
      items:
        $ref: '#/components/schemas/DocReqsRequirement'
      type: array
    DocReqsRequirementType:
      properties:
        acceptance_criteria:
          description: Specifies objective criteria for acceptance
          properties:
            acceptable_characters:
              description: Specifies the allowed characters as a string
              example: abcdef0123456789
              readOnly: false
              type: string
            acceptable_values:
              description: Specifies the list of strictly possible values for the requirement. Ignored when empty
              items:
                example: US
                type: string
              readOnly: false
              type: array
            locality_limit:
              description: Specifies geography-based acceptance criteria
              example: Issued by the same country that the phone number belongs to
              readOnly: false
              type: string
            max_length:
              description: Maximum length allowed for the value
              example: 20
              readOnly: false
              type: integer
            min_length:
              description: Minimum length allowed for the value
              example: 16
              readOnly: false
              type: integer
            time_limit:
              description: Specifies time-based acceptance criteria
              example: Current and not expired
              readOnly: false
              type: string
          type: object
        created_at:
          description: ISO 8601 formatted date-time indicating when the resource was created.
          example: '2021-04-09T22:25:27.521Z'
          readOnly: true
          type: string
        description:
          description: Describes the requirement type
          example: Proves the customer has a physical address in the same locality as the phone number
          readOnly: false
          type: string
        example:
          description: Provides one or more examples of acceptable documents
          example: Utility bill, internet bill, phone bill, or lease
          readOnly: false
          type: string
        id:
          description: Identifies the associated document
          example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58
          format: uuid
          readOnly: true
          type: string
        name:
          description: A short descriptive name for this requirement_type
          example: Proof of Address
          readOnly: true
          type: string
        record_type:
          description: Identifies the type of the resource
          example: requirement_type
          readOnly: true
          type: string
        type:
          description: Defines the type of this requirement type
          enum:
          - document
          - address
          - textual
          example: document
          readOnly: false
          type: string
        updated_at:
          description: ISO 8601 formatted date-time indicating when the resource was last updated.
          example: '2021-04-12T20:20:20.020Z'
          readOnly: true
          type: string
      type: object
    PaginationMeta:
      properties:
        page_number:
          example: 2
          type: integer
        page_size:
          example: 25
          type: integer
        total_pages:
          example: 3
          type: integer
        total_results:
          example: 55
          type: integer
      type: object
    DocReqsRequirement:
      properties:
        action:
          description: Indicates whether this requirement applies to branded_calling, ordering, porting, or both ordering and porting
          enum:
          - both
          - branded_calling
          - ordering
          - porting
          example: ordering
          readOnly: false
          type: string
        country_code:
          description: The 2-character (ISO 3166-1 alpha-2) country code where this requirement applies
          example: FR
          readOnly: false
          type: string
        created_at:
          description: ISO 8601 formatted date-time indicating when the resource was created.
          example: '2021-04-09T22:25:27.521Z'
          readOnly: true
          type: string
        id:
          description: Identifies the associated document
          example: 6a09cdc3-8948-47f0-aa62-74ac943d6c58
          format: uuid
          readOnly: true
          type: string
        locality:
          description: The locality where this requirement applies
          example: Nice
          readOnly: false
          type: string
        phone_number_type:
          description: Indicates the phone_number_type this requirement applies to. Leave blank if this requirement applies to all number_types.
          enum:
          - local
          - national
          - toll_free
          example: local
          readOnly: false
          type: string
        record_type:
          description: Identifies the type of the resource.
          example: requirement
          readOnly: true
          type: string
        requirements_types:
          description: Lists the requirement types necessary to fulfill this requirement
          items:
            $ref: '#/components/schemas/DocReqsRequirementType'
          readOnly: true
          type: array
        updated_at:
          description: ISO 8601 formatted date-time indicating when the resource was last updated.
          example: '2021-04-12T20:20:20.020Z'
          readOnly: true
          type: string
      type: object
    documents_Error:
      properties:
        code:
          type: string
        detail:
          type: string
        meta:
          additionalProperties: true
          type: object
        source:
          properties:
            parameter:
              description: Indicates which query parameter caused the error.
              type: string
            pointer:
              description: JSON pointer (RFC6901) to the offending entity.
              type: string
          type: object
        title:
          type: string
      required:
      - code
      - title
      type: object
  parameters:
    documents_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
    FilterRequirementsConsolidated:
      description: 'Consolidated filter parameter for requirements (deepObject style). Originally: filter[country_code], filter[phone_number_type], filter[action]'
      explode: true
      in: query
      name: filter
      required: false
      schema:
        additionalProperties: false
        properties:
          action:
            description: Filters requirements to those applying to a specific action.
            enum:
            - branded_calling
            - ordering
            - porting
            example: porting
            type: string
          country_code:
            description: Filters results to those applying to a 2-character (ISO 3166-1 alpha-2) country code
            example: US
            type: string
          phone_number_type:
            description: Filters results to those applying to a specific phone_number_type
            enum:
            - local
            - national
            - toll_free
            example: local
            type: string
        type: object
      style: deepObject
    DocReqsRequirementId:
      description: Uniquely identifies the requirement_type record
      example: a9dad8d5-fdbd-49d7-aa23-39bb08a5ebaa
      in: path
      name: id
      required: true
      schema:
        format: uuid
        type: string
    SortRequirementsConsolidated:
      description: 'Consolidated sort parameter for requirements (deepObject style). Originally: sort[]'
      in: query
      name: sort
      required: false
      schema:
        description: Specifies the sort order for results. If you want to sort by a field in ascending order, include it as a sort parameter. If you want to sort in descending order, prepend a `-` in front of the field name.
        example:
        - country_code
        items:
          enum:
          - created_at
          - updated_at
          - country_code
          - phone_number_type
          - -created_at
          - -updated_at
          - -country_code
          - -phone_number_type
          type: string
        type: array
  responses:
    documents_GenericErrorResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/documents_Errors'
      description: Unexpected error
    DocReqsRequirementResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DocReqsRequirement'
            type: object
      description: Successful response
    ListRequirementsResponse:
      content:
        application/json:
          schema:
            properties:
              data:
                $ref: '#/components/schemas/DocReqsRequirementList'
              meta:
                $ref: '#/components/schemas/PaginationMeta'
            type: object
      description: Successful response
  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