For AI agents: a documentation index is available at the root level at /llms.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Register a US number for 10DLC — the carrier registration required before
a number can send SMS or MMS to US phone numbers.
US carriers **block** outbound SMS and MMS sent from an unregistered
10-digit number to a US phone number. Registering this number lifts that
block. Inbound texts, voice calls in either direction, and messaging to
numbers outside the US are unaffected.
**Eligibility.** The number must be US, have the `sms` capability, and
not have the `imessage` capability (iMessage numbers send over Apple
Messages for Business, not carrier SMS). 10DLC registration is currently
offered on pay-as-you-go accounts only. An ineligible number returns
`403` — read the `tenDlc` object on the number to know in advance.
**Fee.** A one-time **$25.00** per number, taken from the account's credit
balance when the submission is accepted. A balance below the fee returns
`402`. **Resubmitting after a rejection is free** — the number is charged
at most once, ever.
**What happens next.** The submission lands in `in_review` while Dial
checks the details, moves to `with_carrier` once filed with the carrier
registry, and finishes as `approved` or `rejected`. Carriers usually
decide within 3–5 business days. Dial emails the account owner on approval
and on rejection; a rejection carries a `reason` explaining exactly what
to change before resubmitting.
**Body.** `multipart/form-data` only — a screenshot of the opt-in flow is
required. Send `kind`, a JSON `data` part carrying the field set for that
kind, and one `optInImage` file part.
### Fields — both kinds
Every field is required unless noted.
| Key | Description |
|---|---|
| `firstName`, `lastName` | The person responsible for the registration. |
| `email` | Contact email. |
| `phone` | Mobile number in E.164. Receives a verification SMS — reply `YES`. |
| `street`, `city`, `state`, `zip` | US mailing address; `state` is the 2-letter code. Carriers use it to verify the registration. |
| `country` | Always `US`. |
| `useCaseDescription` | Who is messaged and why. At least 40 characters. |
| `messageFlow` | How people opt in. At least 40 characters. |
| `containsUrls`, `containsPhones` | Booleans. Optional; default false. |
### Fields — `business` only
| Key | Description |
|---|---|
| `businessName` | Registered business or DBA name. |
| `numberCount` | How many numbers you plan to use. Whole number, at least 1. |
| `businessType` | One of `Partnership`, `Corporation`, `LLC`, `Co-operative`, `Sole Proprietorship`, `Non-profit`. |
| `industry` | The business's industry. |
| `position` | Your position, e.g. `Head of Operations`. |
| `ein` | Tax ID. |
| `regIdType` | One of `EIN`, `DUNS`, `GIIN`, `LEI`. Optional; defaults to `EIN`. |
| `companyType` | One of `Private`, `Public`, `Non profit`, `Government`. |
| `website`, `privacyUrl`, `termsUrl` | Full `https://` URLs. |
| `social` | Social media URL. Optional. |
| `regions` | Regions of operation. Optional; defaults to `USA AND CANADA`. |
| `useCase` | Campaign use case, e.g. `CUSTOMER CARE`. Optional; defaults to `MIXED`. |
| `sample1`, `sample2` | Two sample messages, at least 20 characters each. Each must name the brand and carry an opt-out instruction. |
Authentication
AuthorizationBearer
Your Dial API key, sent as Authorization: Bearer sk_live_...
Path parameters
idstringRequired
Request
This endpoint expects a multipart form containing a file.
kindenumRequired
Text part. Who is registering. A sole proprietor operates under their own name and has no EIN — lower throughput, quicker to approve. A business is a registered company with an EIN.
Allowed values:
datastringRequired
Text part. A JSON object carrying the field set for the chosen kind — see the tables above.
optInImagefileRequired
A single uploaded file part: a screenshot of the form, checkbox, or page where people opt in, with the consent wording and the checkbox both visible. jpeg, png, gif, or webp; max 2 MB.
Response
Submitted, and the fee charged unless this was a free resubmission.
registrationobject
A number's 10DLC registration, including the field set that was submitted. Returned by Get and Submit 10DLC registration.
Errors
400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error
413
Content Too Large Error
Register a US number for 10DLC — the carrier registration required before
a number can send SMS or MMS to US phone numbers.
US carriers block outbound SMS and MMS sent from an unregistered
10-digit number to a US phone number. Registering this number lifts that
block. Inbound texts, voice calls in either direction, and messaging to
numbers outside the US are unaffected.
Eligibility. The number must be US, have the sms capability, and
not have the imessage capability (iMessage numbers send over Apple
Messages for Business, not carrier SMS). 10DLC registration is currently
offered on pay-as-you-go accounts only. An ineligible number returns
403 — read the tenDlc object on the number to know in advance.
Fee. A one-time $25.00 per number, taken from the account’s credit
balance when the submission is accepted. A balance below the fee returns
402. Resubmitting after a rejection is free — the number is charged
at most once, ever.
What happens next. The submission lands in in_review while Dial
checks the details, moves to with_carrier once filed with the carrier
registry, and finishes as approved or rejected. Carriers usually
decide within 3–5 business days. Dial emails the account owner on approval
and on rejection; a rejection carries a reason explaining exactly what
to change before resubmitting.
Body.multipart/form-data only — a screenshot of the opt-in flow is
required. Send kind, a JSON data part carrying the field set for that
kind, and one optInImage file part.
Fields — both kinds
Every field is required unless noted.
Key
Description
firstName, lastName
The person responsible for the registration.
email
Contact email.
phone
Mobile number in E.164. Receives a verification SMS — reply YES.
street, city, state, zip
US mailing address; state is the 2-letter code. Carriers use it to verify the registration.
country
Always US.
useCaseDescription
Who is messaged and why. At least 40 characters.
messageFlow
How people opt in. At least 40 characters.
containsUrls, containsPhones
Booleans. Optional; default false.
Fields — business only
Key
Description
businessName
Registered business or DBA name.
numberCount
How many numbers you plan to use. Whole number, at least 1.
businessType
One of Partnership, Corporation, LLC, Co-operative, Sole Proprietorship, Non-profit.
industry
The business’s industry.
position
Your position, e.g. Head of Operations.
ein
Tax ID.
regIdType
One of EIN, DUNS, GIIN, LEI. Optional; defaults to EIN.
companyType
One of Private, Public, Non profit, Government.
website, privacyUrl, termsUrl
Full https:// URLs.
social
Social media URL. Optional.
regions
Regions of operation. Optional; defaults to USA AND CANADA.
useCase
Campaign use case, e.g. CUSTOMER CARE. Optional; defaults to MIXED.
sample1, sample2
Two sample messages, at least 20 characters each. Each must name the brand and carry an opt-out instruction.