10DLCv4

Register the brand

PUT/10dlc/brand

Register the organization's brand, or resubmit it with corrected details. The registry reviews it asynchronously; registration.brand.updated fires as its status changes. A SOLE_PROPRIETOR brand must then verify its mobile number (requires_otp). OAuth apps need numbers:manage.

Headers

AuthorizationRequiredstring

Your API key, sent as a bearer token: Authorization: Bearer <api_key>. Editing this stays in sync with the API key box on the right.

Bearer

Body parameters

JSON
entity_typeRequiredstring
"PRIVATE_PROFIT""PUBLIC_PROFIT""NON_PROFIT""GOVERNMENT""SOLE_PROPRIETOR"
display_nameRequiredstring

The brand name recipients know you by.

company_nameoptionalstring

Legal company name. Required for every entity type but SOLE_PROPRIETOR.

einoptionalstring

US Employer Identification Number. Required for every entity type but SOLE_PROPRIETOR.

websiteoptionalstring

The brand's website.

first_nameoptionalstring

Required for SOLE_PROPRIETOR.

last_nameoptionalstring

Required for SOLE_PROPRIETOR.

emailRequiredstring

Contact email for the registration.

phoneoptionalstring

Business phone number.

mobile_phoneoptionalstring

Required for SOLE_PROPRIETOR: the mobile number that receives the verification PIN.

streetoptionalstring

Street address.

cityoptionalstring

City.

stateoptionalstring

State or region code.

postal_codeoptionalstring

Postal code.

countryRequiredstring

Two-letter country code, e.g. US.

verticalRequiredstring

Industry vertical; one of the verticals values from GET /10dlc/options.

stock_symboloptionalstring

Required for PUBLIC_PROFIT.

stock_exchangeoptionalstring

Required for PUBLIC_PROFIT, e.g. NASDAQ.

business_contact_emailoptionalstring

Required for PUBLIC_PROFIT: the email the registry verifies the company through.

Returns

dataoptionalTenDlcBrand
brand_idRequiredstring

Brand id (brand_...).

entity_typeRequiredstring
"PRIVATE_PROFIT""PUBLIC_PROFIT""NON_PROFIT""GOVERNMENT""SOLE_PROPRIETOR"
statusRequiredstring

registered once the registry has accepted the brand; campaigns need a registered brand.

"submitting""pending""registered""failed"
identity_statusRequiredstring | null

The registry's identity verification result, e.g. verified or unverified.

requires_otpRequiredboolean

A sole proprietor brand must confirm its mobile number: send a PIN with POST /10dlc/brand/otp, then submit it with PUT /10dlc/brand/otp.

detailsRequiredTenDlcBrandDetails

Who is sending. Every entity type needs display_name, email, country, and vertical. SOLE_PROPRIETOR also needs first_name, last_name, and mobile_phone; PRIVATE_PROFIT, NON_PROFIT, and GOVERNMENT need company_name and ein; PUBLIC_PROFIT needs company_name, ein, stock_symbol, stock_exchange, and business_contact_email.

display_nameoptionalstring

The brand name recipients know you by.

company_nameoptionalstring

Legal company name. Required for every entity type but SOLE_PROPRIETOR.

einoptionalstring

US Employer Identification Number. Required for every entity type but SOLE_PROPRIETOR.

websiteoptionalstring

The brand's website.

first_nameoptionalstring

Required for SOLE_PROPRIETOR.

last_nameoptionalstring

Required for SOLE_PROPRIETOR.

emailoptionalstring

Contact email for the registration.

phoneoptionalstring

Business phone number.

mobile_phoneoptionalstring

Required for SOLE_PROPRIETOR: the mobile number that receives the verification PIN.

streetoptionalstring

Street address.

cityoptionalstring

City.

stateoptionalstring

State or region code.

postal_codeoptionalstring

Postal code.

countryoptionalstring

Two-letter country code, e.g. US.

verticaloptionalstring

Industry vertical; one of the verticals values from GET /10dlc/options.

stock_symboloptionalstring

Required for PUBLIC_PROFIT.

stock_exchangeoptionalstring

Required for PUBLIC_PROFIT, e.g. NASDAQ.

business_contact_emailoptionalstring

Required for PUBLIC_PROFIT: the email the registry verifies the company through.

failure_reasonsRequiredstring | null

Why the registry rejected the brand.

created_atRequiredinteger

Epoch ms.

updated_atRequiredinteger

Epoch ms.

Response codes

200The brand
400`invalid_entity_type`, `missing_fields` (with the missing `fields`), or `invalid_field` (with the `field`).
401Your API key is missing or invalid. Pass it as a bearer token.
403`feature_not_enabled`: Blooio SMS and Blooio Voice aren't enabled on this organization.
409`brand_submission_in_progress`: another submission is still running.
422`brand_rejected`: the registry refused the brand.
502`upstream_unavailable`: the carrier network couldn't be reached. Retry with backoff.

Sends a live request with your values and shows the real response below. Your key is stored only in this browser.

Request
curl -X PUT https://api.blooio.com/v4/10dlc/brand \
Body object
Response objectexample
{  "data": {    "brand_id": "obj_a1b2c3d4",    "entity_type": "PRIVATE_PROFIT",    "status": "submitting",    "identity_status": "string",    "requires_otp": false,    "details": {      "display_name": "Jane Doe",      "company_name": "string",      "ein": "string",      "website": "string",      "first_name": "Jane",      "last_name": "Doe",      "email": "jane@example.com",      "phone": "+15551234567",      "mobile_phone": "+15551234567",      "street": "string",      "city": "San Francisco",      "state": "active",      "postal_code": "94105",      "country": "US",      "vertical": "string",      "stock_symbol": "string",      "stock_exchange": "string",      "business_contact_email": "jane@example.com"    },    "failure_reasons": "string",    "created_at": 0,    "updated_at": 0  }}