---
title: "Get 10DLC registration"
method: GET
path: "/api/v1/numbers/{id}/10dlc"
tags: ["phoneNumbers"]
---

# Get 10DLC registration

`GET /api/v1/numbers/{id}/10dlc`

Returns this number's 10DLC registration: the brand (who is registering) and the campaign (what they send), exactly as submitted.
A number's registration status is also available — without the submitted details — as the `tenDlc` object on the phone number itself.

## Path parameters

- `id` string, required

## Headers

- `Authorization` string, required

## Response `200`

The registration.

- PhoneNumbersGetTenDlcRegistrationResponse200
  - `registration` TenDlcRegistration — A number's 10DLC registration — the brand, the campaign, and where the registration stands. Returned by Get and Submit 10DLC registration.
    - `phoneNumberId` string, required
    - `status` 'in_review' | 'with_carrier' | 'approved' | 'rejected', required — Where the registration stands. Unlike the `tenDlc` summary on a phone number, this object only exists once something has been submitted, so `not_registered` never appears here.
    - `kind` 'sole_proprietor' | 'business', required — Who the number is registered as. 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.
    - `brand` TenDlcBrand, required — Who is registering — the business identity carriers vet. The `business`-only fields are absent on a sole proprietor registration.
      - `brandName` string, required — The registered business or DBA name; for a sole proprietor, the name they trade under. Carriers reject an account id or an email address.
      - `firstName` string, required
      - `lastName` string, required
      - `email` string, email, required
      - `phone` string, required — Mobile number in **E.164** — it must carry its country code, because a brand registered outside the US would otherwise be guessed at. For a sole proprietor this receives the carrier's verification SMS, answered by replying `YES` within 24 hours. It may not be a Dial number — carriers won't verify a number issued by a messaging provider.
      - `street` string, required
      - `city` string, required
      - `state` string, required — State or province of the registered address, required whatever the country. The two-letter code for the US and Canada; the region name elsewhere.
      - `zip` string, required
      - `country` string, required — ISO 3166-1 alpha-2 country code of the registered address, defaulting to `US`. The NUMBER being registered is always US — that is what 10DLC is — but the business need not be. A **business** may be registered from any country the registry accepts, with its own country's tax ID in `registrationNumber` (a non-US brand may draw additional vetting). A **sole proprietor** must be in the US or Canada, so only `US` and `CA` are accepted for that kind.
      - `businessType` 'Co-operative' | 'Corporation' | 'Limited Liability Corporation' | 'Non-profit Corporation' | 'Partnership' — `business` only. The legal form. A sole proprietorship is not a business brand — register as `sole_proprietor` instead.
      - `businessIndustry` 'AGRICULTURE' | 'AUTOMOTIVE' | 'BANKING' | 'CONSTRUCTION' | 'CONSUMER' | 'EDUCATION' | 'ELECTRONICS' | 'ENGINEERING' | 'ENERGY' | 'FAST_MOVING_CONSUMER_GOODS' | 'FINANCIAL' | 'FINTECH' | 'FOOD_AND_BEVERAGE' | 'GOVERNMENT' | 'HEALTHCARE' | 'HOSPITALITY' | 'INSURANCE' | 'JEWELRY' | 'LEGAL' | 'MANUFACTURING' | 'MEDIA' | 'NOT_FOR_PROFIT' | 'OIL_AND_GAS' | 'ONLINE' | 'PROFESSIONAL_SERVICES' | 'RAW_MATERIALS' | 'REAL_ESTATE' | 'RELIGION' | 'RETAIL' | 'TECHNOLOGY' | 'TELECOMMUNICATIONS' | 'TRANSPORTATION' | 'TRAVEL' — `business` only.
      - `vertical` 'AGRICULTURE' | 'COMMUNICATION' | 'CONSTRUCTION' | 'EDUCATION' | 'ENERGY' | 'ENTERTAINMENT' | 'FINANCIAL' | 'GAMBLING' | 'GOVERNMENT' | 'HEALTHCARE' | 'HOSPITALITY' | 'HUMAN_RESOURCES' | 'INSURANCE' | 'LEGAL' | 'MANUFACTURING' | 'NGO' | 'POLITICAL' | 'POSTAL' | 'PROFESSIONAL' | 'REAL_ESTATE' | 'RETAIL' | 'TECHNOLOGY' | 'TRANSPORTATION' — `sole_proprietor` only, and required. The trade the brand operates in. This is the sole proprietor's counterpart to `businessIndustry`, but **the two take different values** — the registry validates them against separate vocabularies. `PROFESSIONAL` here is `PROFESSIONAL_SERVICES` there, and several industries have no vertical at all (`TRAVEL`, `MEDIA`, `TELECOMMUNICATIONS`, `RELIGION`, `ONLINE`, `NOT_FOR_PROFIT`, `AUTOMOTIVE`, `BANKING`). Send a value from this list, not from `businessIndustry`'s.
      - `registrationIdType` 'EIN' | 'DUNS' | 'CBN' | 'CN' | 'ACN' | 'CIN' | 'VAT' | 'VATRN' | 'RN' | 'Other' — `business` only. Which registration number follows.
      - `registrationNumber` string — `business` only. In the US, the EIN.
      - `websiteUrl` string — `business` only. Reviewers check it matches the brand.
      - `jobPosition` 'Director' | 'GM' | 'VP' | 'CEO' | 'CFO' | 'General Counsel' | 'Other' — `business` only. The representative's role.
      - `businessTitle` string — `business` only. The actual job title, free text.
      - `businessRegionsOfOperation` 'USA_AND_CANADA' | 'AFRICA' | 'ASIA' | 'EUROPE' | 'LATIN_AMERICA' — `business` only. Where the business operates.
      - `companyType` 'private' | 'public' | 'non-profit' | 'government' — `business` only.
      - `stockExchange` 'NASDAQ' | 'NYSE' | 'AMEX' | 'AMX' | 'ASX' | 'B3' | 'BME' | 'BSE' | 'FRA' | 'ICEX' | 'JPX' | 'JSE' | 'KRX' | 'LON' | 'NSE' | 'OMX' | 'SEHK' | 'SGX' | 'SSE' | 'STO' | 'SWX' | 'SZSE' | 'TSX' | 'TWSE' | 'VSE' | 'OTHER' — `business` only, and required when `companyType` is `public`. Carriers check it against public sources.
      - `stockTicker` string — `business` only, and required when `companyType` is `public`.
    - `campaign` TenDlcCampaign, required — What the number sends — the use case carriers approve. A sole proprietor registration's use case is always `SOLE_PROPRIETOR`, and its policy URLs are the ones Dial publishes unless it supplied its own.
      - `useCase` 'MIXED' | 'MARKETING' | 'CUSTOMER_CARE' | '2FA' | 'ACCOUNT_NOTIFICATION' | 'DELIVERY_NOTIFICATION' | 'FRAUD_ALERT' | 'SECURITY_ALERT' | 'HIGHER_EDUCATION' | 'POLLING_VOTING' | 'PUBLIC_SERVICE_ANNOUNCEMENT' | 'SOLE_PROPRIETOR', required — What the campaign is for. Optional on submit for a `business`, defaulting to `MIXED`. Always `SOLE_PROPRIETOR` for a sole proprietor, which takes no value on submit.
      - `description` string, required — Who is messaged and why. Reviewers weigh this heavily — a single word like "Marketing" is rejected.
      - `messageFlow` string, required — How people opt in. If more than one method is used, all must be named.
      - `samples` string[], required — Sample messages. Each must name the brand and carry an opt-out instruction. If only one message text will ever be sent, repeat it — carriers require at least two.
      - `privacyPolicyUrl` string — The privacy policy registered with the campaign. Your own if you gave one; otherwise, for a sole proprietor, the notice Dial publishes for the brand.
      - `termsUrl` string — The terms registered with the campaign — your own, or the page Dial publishes for a sole proprietor who gave none.
      - `containsUrls` boolean, required — Whether messages will contain links. Defaults to false.
      - `containsPhones` boolean, required — Whether messages will contain phone numbers. Defaults to false.
      - `acceptPublishedNotice` boolean — Accepted on submit, never returned. Required on a sole proprietor campaign that sends neither `privacyPolicyUrl` nor `termsUrl`: it authorises Dial to publish those two pages for the brand and register them. Ignored when you send your own URLs.
    - `feeCents` integer, required — The one-time registration fee charged for this number, in USD cents.
    - `reason` string, nullable, required — What needs to change. Non-null only when `status` is `rejected`.
    - `submittedAt` string, date-time, required
    - `reviewedAt` string, date-time, nullable, required — When the registration was approved or rejected; null until then.

## Other responses

- `401` — Missing or invalid API key.
- `403` — 10DLC registration isn't available here. Either it doesn't apply to this number — it isn't US, or it has the `imessage` capability (error code `tendlc_not_applicable`) — or the account isn't pay-as-you-go and has no existing registration for the number (error code `tendlc_not_available`). The `tenDlc` object on the phone number is null in both cases.
- `404` — No registration has been submitted for this number, or the number doesn't exist on this account.

## Changes

- **2026-07-31** `a7fbff356f0a` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/getdial/apis/rest-api/changes/api/v1/numbers/:id/10dlc/get.md)

---

[API](https://skmtc.dev/getdial/apis/rest-api.md) · [All operations](https://skmtc.dev/getdial/apis/rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getdial/rest-api/revisions/a7fbff356f0a/schema)
