Update an SMS brand
PATCH/api/v1/sms/brands/{id}
PATCH /sms/brands/{id}
curl -X PATCH 'https://www.unitpost.com/api/v1/sms/brands/sms_123' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'User-Agent: my-app/1.0' \
-H 'Content-Type: application/json' \
-d '{ }'Response · 200
{
"object": "sms_brand",
"id": "id_123",
"name": "Example",
"legal_name": "string",
"website": "string",
"domain": "string",
"contact_email": "string",
"status": "incomplete",
"missing": [
"string"
],
"ten_dlc_verified": false,
"tax_id_on_file": false,
"number_count": 1,
"editable": false,
"dba_name": "string",
"sender_id_name": "string",
"vertical": "string",
"legal_organization_type": "string",
"registration_number_type": "string",
"tax_country": "string",
"stock_symbol": "string",
"stock_exchange": "string",
"contact": {
"first_name": "string",
"last_name": "string",
"phone": "string"
},
"address": {
"address1": "string",
"address2": "string",
"city": "string",
"state": "string",
"zip_code": "string",
"iso_country_code": "string"
},
"revision": 0,
"archived_at": "2026-01-01T00:00:00.000Z",
"created_at": "2026-01-01T00:00:00.000Z"
}Edit a brand: only the fields sent change (null clears an optional one), or send { archived } alone to archive or restore it. A brand carriers are reviewing or have approved, or with numbers attached, refuses carrier-field edits (409 brand_locked, details names each field) except those a correction request opened. Renaming the Sender ID while it is enabled in several countries is a 409 sender_id_in_use. Archiving a brand with numbers or open registrations is a 409 resource_in_use. Requires the sms:manage capability.
Parameters1 field
| Field | Type | Description |
|---|---|---|
idrequired | string · path | — |
Request body16 fields
| Field | Type | Description |
|---|---|---|
name | string | null | The brand name recipients see. |
website | string | null | The brand's website; a bare host gets https://. |
contact_email | string | null | An address on the website's domain (carriers check). |
sender_id_name | string | null | The one Sender ID the brand sends under abroad: 1–11 letters, digits or hyphens, with a letter. |
vertical | string | null | The industry, in the carriers' words (e.g. `RETAIL`). |
legal_name | string | null | The exact registered legal name. |
dba_name | string | null | — |
legal_organization_type | string | null | `PRIVATE_PROFIT`, `PUBLIC_PROFIT`, `NON_PROFIT`, `GOVERNMENT`, … |
tax_id | string | The company tax id (EIN in the US). Write-only: stored encrypted, read back as `tax_id_on_file`; it can be replaced, not removed. |
registration_number_type | string | null | — |
tax_country | string | null | Two-letter ISO country code. |
stock_symbol | string | null | — |
stock_exchange | string | null | — |
contact | object | — |
address | object | — |
archived | boolean | Archive (`true`) or restore (`false`) the brand; send it alone. |
Response · 200 fields26 fields
| Field | Type | Description |
|---|---|---|
objectrequired | string | — |
idrequired | string | Prefixed brand id, e.g. `sbrand_…`. |
namerequired | string | Public-facing brand name. |
legal_namerequired | string | Registered legal entity name. |
websiterequired | string | null | Brand website URL. |
domainrequired | string | null | Registrable domain derived from the website. The brand contact email must be on this domain. |
contact_emailrequired | string | null | — |
statusrequired | enumincomplete | ready | pending | action_required | verified | rejected | archived | `incomplete` and `action_required` need the customer to act in the dashboard; `pending` is waiting on the carrier. |
missingrequired | string[] | Human-readable list of what is still required before this brand can back a number. Empty when nothing is missing. |
ten_dlc_verifiedrequired | boolean | True when the 10DLC brand registration is approved. |
tax_id_on_filerequired | boolean | — |
number_countrequired | integer | Non-released senders on this brand (phone numbers and Sender ID countries, any status). |
editablerequired | boolean | False once the brand is locked: carriers approved or are reviewing its 10DLC registration, or senders are registered with its details. Locked brands are corrected only when carriers ask. |
dba_name | string | null | The name the business trades under, when it isn't the legal name. |
sender_id_name | string | null | The one Sender ID the brand sends under abroad (1–11 characters). |
vertical | string | null | The brand's industry, in the carriers' words (e.g. `RETAIL`). |
legal_organization_type | string | null | `PRIVATE_PROFIT`, `PUBLIC_PROFIT`, `NON_PROFIT`, `GOVERNMENT`, … |
registration_number_type | string | null | — |
tax_country | string | null | — |
stock_symbol | string | null | — |
stock_exchange | string | null | — |
contact | object | Who carriers reach about the brand (the email is `contact_email`). |
address | object | The registered business address. |
revision | integer | Moves on every material change; a registration keeps the revision it was submitted with. |
archived_at | string | null | — |
created_atrequired | string | — |
200400401403404409422429503