10DLCv4

Verify the brand PIN

PUT/10dlc/brand/otp

Submit the PIN texted by POST /10dlc/brand/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
pinRequiredstring

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_otp`: `pin` must be 4 to 8 digits.
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.
404`brand_not_found`.
409`otp_not_required`: the brand isn't a sole proprietor.
422`invalid_otp`: the PIN is wrong or expired.
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/otp \
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  }}