> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cartesia.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# List Phone Numbers



## OpenAPI

````yaml /latest.yml GET /agents/phone-numbers
openapi: 3.0.1
info:
  title: Cartesia API
  version: 0.0.1
servers:
  - url: https://api.cartesia.ai
    description: Production
security: []
paths:
  /agents/phone-numbers:
    get:
      tags:
        - Phone Numbers
      summary: List Phone Numbers
      operationId: phone_numbers_list
      parameters:
        - $ref: '#/components/parameters/CartesiaVersionHeader'
        - name: agent_id
          in: query
          description: Filter by assigned agent ID.
          required: false
          schema:
            type: string
        - name: provider_id
          in: query
          description: Filter by provider ID.
          required: false
          schema:
            type: string
        - name: type
          in: query
          description: Filter by provider type.
          required: false
          schema:
            type: string
            enum:
              - twilio
              - cartesia
        - name: q
          in: query
          description: Search by phone number, label, or agent name.
          required: false
          schema:
            type: string
        - name: starting_after
          in: query
          description: >-
            A cursor to use in pagination. `starting_after` is a phone number ID
            that defines your place in the list. For example, if you make a
            `/agents/phone-numbers` request and receive 20 objects, ending with
            `pn_abc123`, your subsequent call can include
            `starting_after=pn_abc123` to fetch the next page of the list.
          required: false
          schema:
            type: string
            nullable: true
        - name: ending_before
          in: query
          description: >-
            A cursor to use in pagination. `ending_before` is a phone number ID
            that defines your place in the list. For example, if you make a
            `/agents/phone-numbers` request and receive 20 objects, starting
            with `pn_abc123`, your subsequent call can include
            `ending_before=pn_abc123` to fetch the previous page of the list.
          required: false
          schema:
            type: string
            nullable: true
        - name: limit
          in: query
          description: >-
            (Pagination option) The number of phone numbers to return per page,
            ranging between 1 and 100. The default page limit is 10.
          required: false
          schema:
            type: integer
            nullable: true
      responses:
        '200':
          description: A paginated list of phone numbers.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/PhoneNumberResponse'
                  has_more:
                    type: boolean
                required:
                  - data
                  - has_more
      security:
        - APIKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: Search by query
          source: |
            curl -G "https://api.cartesia.ai/agents/phone-numbers" \
              -H "X-API-Key: your-api-key" \
              -H "Cartesia-Version: 2026-03-01" \
              -d q="support" \
              -d limit=10
components:
  parameters:
    CartesiaVersionHeader:
      name: Cartesia-Version
      in: header
      description: API version header.
      required: true
      schema:
        type: string
        format: date
        example: '2026-03-01'
        enum:
          - '2026-03-01'
  schemas:
    PhoneNumberResponse:
      title: PhoneNumberResponse
      description: A phone number with its provider and agent assignment details.
      allOf:
        - $ref: '#/components/schemas/PhoneNumberBaseResponse'
        - type: object
          properties:
            provider:
              $ref: '#/components/schemas/ProviderResponse'
          required:
            - provider
    PhoneNumberBaseResponse:
      title: PhoneNumberBaseResponse
      type: object
      description: Common phone number fields.
      properties:
        id:
          type: string
          description: Unique identifier for the phone number.
        label:
          type: string
          nullable: true
          description: A human-readable name for the phone number.
        number:
          type: string
          description: The phone number in E.164 format (e.g. +14155551234).
        agent:
          nullable: true
          description: The agent assigned to handle inbound calls, or null if unassigned.
          type: object
          properties:
            id:
              type: string
            name:
              type: string
          required:
            - id
            - name
        created_at:
          type: string
          format: date-time
          description: UTC timestamp when the phone number was created.
        updated_at:
          type: string
          format: date-time
          description: UTC timestamp when the phone number was last updated.
      required:
        - id
        - number
        - agent
        - created_at
        - updated_at
    ProviderResponse:
      title: Provider
      description: >-
        The telephony provider associated with a phone number. One of `Twilio`
        or `Cartesia`, determined by the `type` field.
      oneOf:
        - $ref: '#/components/schemas/TwilioProviderResponse'
        - $ref: '#/components/schemas/CartesiaProviderResponse'
      discriminator:
        propertyName: type
        mapping:
          twilio:
            $ref: '#/components/schemas/TwilioProviderResponse'
          cartesia:
            $ref: '#/components/schemas/CartesiaProviderResponse'
    TwilioProviderResponse:
      title: Twilio
      type: object
      description: >-
        A linked Twilio account. The `api_key_sid` field is partially masked in
        responses.
      properties:
        type:
          type: string
          enum:
            - twilio
          description: Always `"twilio"`.
        id:
          type: string
          description: Unique identifier for the provider.
        account_sid:
          type: string
          description: The Twilio account SID.
        api_key_sid:
          type: string
          description: The Twilio API key SID (partially masked).
        region:
          $ref: '#/components/schemas/TelephonyRegion'
      required:
        - type
        - id
        - account_sid
        - api_key_sid
        - region
    CartesiaProviderResponse:
      title: Cartesia
      type: object
      description: A Cartesia-managed provider. US phone numbers only.
      properties:
        type:
          type: string
          enum:
            - cartesia
          description: Always `"cartesia"`.
      required:
        - type
    TelephonyRegion:
      title: TelephonyRegion
      type: string
      enum:
        - us1
        - ie1
        - au1
      description: >-
        The Twilio region the phone number and API key are configured for. `us1`
        (US), `ie1` (Ireland), `au1` (Australia). Default is `us1`.
      default: us1
  securitySchemes:
    APIKeyAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        Cartesia API key (`sk_car_...`). Get one at
        [play.cartesia.ai/keys](https://play.cartesia.ai/keys).

````