> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# list

> List short codes in the project.

List short codes in the project.

### Schema

```yaml
openapi: 3.1.0
info:
  title: API
  version: 1.0.0
paths:
  /api/relay/rest/short_codes:
    get:
      operationId: list_short_codes
      summary: List short codes
      description: >-
        Returns a list of your short codes. The short codes are returned sorted

        by creation date, with the most recent appearing first.


        #### Permissions


        The API token used to authenticate must have the following scope(s)
        enabled to make a successful request: _Numbers_.


        [Learn more about API scopes](/docs/platform/your-signalwire-api-space).
      tags:
        - subpackage_shortCodes
      parameters:
        - name: filter_name
          in: query
          description: >-
            Filter by name. Returns all short codes containing this value as a
            substring.
          required: false
          schema:
            type: string
        - name: filter_number
          in: query
          description: >-
            Filter by number. Returns all short codes containing this value as a
            substring.
          required: false
          schema:
            type: string
        - name: page_number
          in: query
          description: The page number to retrieve.
          required: false
          schema:
            type: integer
            default: 0
        - name: page_size
          in: query
          description: The number of results per page.
          required: false
          schema:
            type: integer
            default: 50
        - name: page_token
          in: query
          description: Token for cursor-based pagination.
          required: false
          schema:
            type: string
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShortCodeListResponse'
        '400':
          description: The request is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode400'
        '401':
          description: Access is unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode401'
        '500':
          description: An internal server error occurred.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Types.StatusCodes.StatusCode500'
servers:
  - url: https://%7BYour_Space_Name%7D.signalwire.com
    description: SignalWire API
components:
  schemas:
    PaginationLinks:
      type: object
      properties:
        self:
          type: string
          description: Link to the current page.
        first:
          type: string
          description: Link to the first page.
        next:
          type: string
          description: Link to the next page. Only present when there are more results.
        prev:
          type: string
          description: Link to the previous page. Only present when not on the first page.
      required:
        - self
        - first
      description: Pagination links for list responses.
      title: PaginationLinks
    uuid:
      type: string
      format: uuid
      description: Universal Unique Identifier.
      title: uuid
    ShortCodeCapability:
      type: string
      enum:
        - sms
        - mms
      description: Short code capabilities.
      title: ShortCodeCapability
    ShortCodeNumberType:
      type: string
      enum:
        - shortcode
      description: The type of number (always 'shortcode').
      title: ShortCodeNumberType
    ShortCodeType:
      type: string
      enum:
        - vanity
        - random
      description: Short code type.
      title: ShortCodeType
    ShortCodeMessageHandler:
      type: string
      enum:
        - relay_context
        - laml_webhooks
        - laml_application
      description: Message handler type for short codes.
      title: ShortCodeMessageHandler
    HttpMethod:
      type: string
      enum:
        - GET
        - POST
      description: HTTP method type.
      title: HttpMethod
    ShortCode:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/uuid'
          description: The unique identifier of the short code.
        name:
          type:
            - string
            - 'null'
          description: The name given to the short code.
        number:
          type: string
          description: The short code number.
        capabilities:
          type: array
          items:
            $ref: '#/components/schemas/ShortCodeCapability'
          description: The messaging capabilities of the short code.
        number_type:
          $ref: '#/components/schemas/ShortCodeNumberType'
          description: The type of number (always 'shortcode').
        code_type:
          $ref: '#/components/schemas/ShortCodeType'
          description: The type of short code.
        country_code:
          type: string
          description: The ISO 3166-1 alpha-2 country code.
        created_at:
          type: string
          description: The date and time when the short code was created.
        updated_at:
          type: string
          description: The date and time when the short code was last updated.
        next_billed_at:
          type:
            - string
            - 'null'
          description: The date and time when the short code will next be billed.
        lease_duration:
          type:
            - string
            - 'null'
          description: The lease duration of the short code (e.g., '12 months').
        message_handler:
          oneOf:
            - $ref: '#/components/schemas/ShortCodeMessageHandler'
            - type: 'null'
          description: The message handler type for incoming messages.
        message_request_url:
          type:
            - string
            - 'null'
          description: >-
            The URL to send message requests to when using laml_webhooks
            handler.
        message_request_method:
          oneOf:
            - $ref: '#/components/schemas/HttpMethod'
            - type: 'null'
          description: The HTTP method to use for message requests.
        message_fallback_url:
          type:
            - string
            - 'null'
          description: The fallback URL for message requests.
        message_fallback_method:
          oneOf:
            - $ref: '#/components/schemas/HttpMethod'
            - type: 'null'
          description: The HTTP method to use for fallback requests.
        message_laml_application_id:
          oneOf:
            - $ref: '#/components/schemas/uuid'
            - type: 'null'
          description: >-
            The ID of the LāML application to handle messages when using
            laml_application handler.
        message_relay_context:
          type:
            - string
            - 'null'
          description: The Relay context to use when using relay_context handler.
      required:
        - id
        - name
        - number
        - capabilities
        - number_type
        - code_type
        - country_code
        - created_at
        - updated_at
        - next_billed_at
        - lease_duration
        - message_handler
        - message_request_url
        - message_request_method
        - message_fallback_url
        - message_fallback_method
        - message_laml_application_id
        - message_relay_context
      description: Short code model.
      title: ShortCode
    ShortCodeListResponse:
      type: object
      properties:
        links:
          $ref: '#/components/schemas/PaginationLinks'
          description: Pagination links.
        data:
          type: array
          items:
            $ref: '#/components/schemas/ShortCode'
          description: List of short codes.
      required:
        - links
        - data
      description: Response containing a list of short codes.
      title: ShortCodeListResponse
    TypesStatusCodesStatusCode400Error:
      type: string
      enum:
        - Bad Request
      title: TypesStatusCodesStatusCode400Error
    Types.StatusCodes.StatusCode400:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/TypesStatusCodesStatusCode400Error'
      required:
        - error
      description: The request is invalid.
      title: Types.StatusCodes.StatusCode400
    TypesStatusCodesStatusCode401Error:
      type: string
      enum:
        - Unauthorized
      title: TypesStatusCodesStatusCode401Error
    Types.StatusCodes.StatusCode401:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/TypesStatusCodesStatusCode401Error'
      required:
        - error
      description: Access is unauthorized.
      title: Types.StatusCodes.StatusCode401
    TypesStatusCodesStatusCode500Error:
      type: string
      enum:
        - Internal Server Error
      title: TypesStatusCodesStatusCode500Error
    Types.StatusCodes.StatusCode500:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/TypesStatusCodesStatusCode500Error'
      required:
        - error
      description: An internal server error occurred.
      title: Types.StatusCodes.StatusCode500

```

## **Response Example**

### Response (200)

```json
{
  "links": {
    "self": "string",
    "first": "string",
    "next": "string",
    "prev": "string"
  },
  "data": [
    {
      "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "name": "My Short Code",
      "number": "12345",
      "capabilities": [
        "sms"
      ],
      "number_type": "shortcode",
      "code_type": "vanity",
      "country_code": "US",
      "created_at": "2023-01-15T10:30:00Z",
      "updated_at": "2023-01-15T10:30:00Z",
      "next_billed_at": "2024-01-15T10:30:00Z",
      "lease_duration": "12 months",
      "message_handler": "relay_context",
      "message_request_url": "https://example.com/message",
      "message_request_method": "GET",
      "message_fallback_url": "https://example.com/fallback",
      "message_fallback_method": "GET",
      "message_laml_application_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "message_relay_context": "my-context"
    }
  ]
}
```

## **Example**

```python {9}
from signalwire.rest import RestClient

client = RestClient(
    project="your-project-id",
    token="your-api-token",
    host="your-space.signalwire.com",
)

result = client.short_codes.list()
for code in result.get("data", []):
    print(code.get("short_code"), code.get("id"))
```