---
title: "List carrier registrations"
description: "Your carrier registrations (10DLC brand and campaign, toll-free) with their review state and the carrier's feedback; a 10DLC campaign also carries the number it backs and one setup state. `GET /api/v1/sms/registrations`"
url: https://www.unitpost.com/docs/sms/get-sms-registrations
section: "SMS API reference"
updated: 2026-10-13
---
# List carrier registrations

`GET /api/v1/sms/registrations`

Your carrier registrations (10DLC brand and campaign, toll-free) with their review state and the carrier's feedback; a 10DLC campaign also carries the number it backs and one setup state. Submitting or resubmitting a 10DLC one is an SMS quote, then its confirm; toll-free verification and removing one happen in the dashboard. Requires the `sms:read` capability.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `limit` | query | integer | no | Max rows to return (default 20, max 100). |
| `after` | query | string | no | Return rows after this id (forward paging). |
| `before` | query | string | no | Return rows before this id (backward paging). |

## Response fields (200)

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `object` | string | yes | — |
| `id` | string | yes | — |
| `type` | string | yes | `us_ten_dlc_brand`, `us_ten_dlc_campaign`, or a toll-free verification. |
| `brand_id` | string \| null | yes | — |
| `status` | string | yes | The carrier review state: `draft`, `submitted`, `reviewing`, `requires_updates`, `complete`, `closed`, … |
| `requires_action` | boolean | yes | The customer must act (the carrier asked for changes). |
| `feedback` | object[] \| null | yes | The carrier's reasons when it asks for changes or closes it (`reason`, `description`, `field_path`, `link`). |
| `use_case` | string \| null | yes | — |
| `message_type` | string \| null | yes | — |
| `parent_registration_id` | string \| null | yes | — |
| `auto_provision_number` | boolean \| null | yes | 10DLC campaigns: a number is leased when carriers approve. |
| `sender` | object \| null | yes | 10DLC campaigns: the number it backs, once one exists. |
| `setup_state` | string \| null | yes | 10DLC campaigns: one customer-facing state over the campaign and its number. |
| `number_withheld_reason` | string \| null | yes | Why an approved campaign's number isn't being leased (e.g. the plan has no carrier resources). |
| `archived_at` | string \| null | yes | — |
| `submitted_at` | string \| null | yes | — |
| `completed_at` | string \| null | yes | — |
| `created_at` | string | yes | — |

## Responses

| Status | Description |
| --- | --- |
| 200 | Registrations. |
| 401 | Missing or invalid API key. |
| 403 | Insufficient scope. |
| 404 | Not found, or SMS is not enabled for this workspace. |
| 422 | A bad `limit`, `after` or `before`, or an unknown query key. |

## Example request

```bash
curl -X GET 'https://www.unitpost.com/api/v1/sms/registrations' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'User-Agent: my-app/1.0'
```

## Example response (200)

```json
{
  "object": "list",
  "has_more": false,
  "data": [
    {
      "object": "sms_registration",
      "id": "id_123",
      "type": "string",
      "brand_id": "brand_123",
      "status": "queued",
      "requires_action": false,
      "feedback": [
        {}
      ],
      "use_case": "string",
      "message_type": "string",
      "parent_registration_id": "parent_registration_123",
      "auto_provision_number": false,
      "sender": {
        "id": "id_123",
        "status": "queued",
        "phone_number": "string"
      },
      "setup_state": "string",
      "number_withheld_reason": "string",
      "archived_at": "2026-01-01T00:00:00.000Z",
      "submitted_at": "2026-01-01T00:00:00.000Z",
      "completed_at": "2026-01-01T00:00:00.000Z",
      "created_at": "2026-01-01T00:00:00.000Z"
    }
  ]
}
```

## Links

- HTML reference (with Node.js, Python, Ruby, PHP, Laravel, Go, Java, Rust, .NET and CLI examples): https://www.unitpost.com/docs/sms/get-sms-registrations
- OpenAPI 3.1 (full schemas): https://www.unitpost.com/api/v1/openapi.json
