> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # 10DLC status callback POST Payload sent by SignalWire to your 10DLC Status Callback URL when the state of a 10DLC registration object changes. Use this webhook to monitor the lifecycle of messaging brands, campaigns, number assignment orders, and number assignments in real time. Configure `status_callback_url` when [creating a brand](/docs/apis/rest/campaign-registry/brands/create-brand), [creating a campaign](/docs/apis/rest/campaign-registry/campaigns/create-campaign), or [creating a number assignment order](/docs/apis/rest/campaign-registry/phone-number-assignments/create-order). ### Brand event types | State transition | Event type | Description | |------------------|------------|-------------| | `pending` → `completed` | `brand_activated` | The brand has been successfully verified and activated. | | `pending` → `unverified` | `brand_unverified` | Brand verification failed or additional information is required. | | `unverified` → `completed` | `brand_activated` | The brand was previously unverified but is now active. | ### Campaign event types | State transition | Event type | Description | |------------------|------------|-------------| | `pending` → `active` | `campaign_activated` | The campaign has been approved and is now active. | | `active` → `inactive` | `campaign_deactivated` | The campaign has been deactivated and can no longer send. | ### Number assignment order event types | State transition | Event type | Description | |------------------|------------|-------------| | `pending` → `processed` | `number_assignment_order_processed` | The order has been processed and numbers assigned. | ### Number assignment event types | State transition | Event type | Description | |------------------|------------|-------------| | `pending` → `failed` | `number_assignment_failed` | The number was not assigned to the campaign. | | `failed` → `pending` | `number_assignment_pending` | A failed assignment is being retried. | | `pending` → `completed` | `number_assignment_activated` | The number has been successfully assigned to the campaign. | Status callbacks are advisory, best-effort notifications — delivery can be delayed or fail silently, so don't gate time-critical actions on receiving one. See [Status callback reliability](/docs/platform/webhooks#status-callback-reliability). Reference: https://signalwire.com/docs/apis/rest/webhooks/ten-dlc-status-callback ## Request ### Payload - `project_id` (string, required) — The unique ID of the project this object is associated with. - `event_at` (string, required) — The timestamp of when the event occurred, in ISO 8601 format. - `event_category` (enum, required) — The category of the event. - Allowed values: `brand`, `campaign`, `number_assignment_order`, `number_assignment` - `event_type` (enum, required) — The specific type of event that occurred. One of: `brand_activated`, `brand_unverified`, `campaign_activated`, `campaign_deactivated`, `number_assignment_order_processed`, `number_assignment_failed`, `number_assignment_pending`, `number_assignment_activated`. - Allowed values: `brand_activated`, `brand_unverified`, `campaign_activated`, `campaign_deactivated`, `number_assignment_order_processed`, `number_assignment_failed`, `number_assignment_pending`, `number_assignment_activated` - `state` (string, required) — The current state of the object after the event. Possible values depend on the object type. - `brand_id` (string, required) — The unique identifier for the brand. Present in all event types. - `campaign_id` (string, optional) — The unique identifier for the campaign. Present in campaign, number assignment order, and number assignment events. - `number_assignment_order_id` (string, optional) — The unique identifier for the number assignment order. Present in number assignment order and number assignment events. - `number_assignment_id` (string, optional) — The unique identifier for the number assignment. Present only in number assignment events. - `phone_number_id` (string, optional) — The unique identifier for the phone route itself. Present only in number assignment events. - `phone_number` (string, optional) — The phone number in E.164 format. Present only in number assignment events.