Skip to content

Create 10DLC brand

View .md
POST

Create a 10DLC brand registration. The brand starts in draft status. Submit it for review using the submit endpoint.

Authorization

  • Authorizationheaderrequired

    Bearer YOUR_API_KEY. Create a key in the dashboard.

Body

application/json

  • entityTypestringrequired

    Business entity type for 10DLC brand registration.

    One ofPRIVATE_PROFITPUBLIC_PROFITNON_PROFITGOVERNMENTSOLE_PROPRIETOR
  • displayNamestringrequired

    Display name of the brand.

    Limitsmax length 100
  • companyNamestring

    Legal company name.

    Limitsmax length 200
  • einstring

    Tax id of the business. For a US brand (country US), the 9-digit Employer Identification Number, as XX-XXXXXXX or XXXXXXXXX. For a brand outside the US, the tax id exactly as it appears in its country's business register (for example a Swiss UID, CHE-123.456.789): 4 to 30 characters, starting with a letter or digit, made of letters, digits, spaces, ., - and /. Any other value is refused with 400. Required to submit every entity type except SOLE_PROPRIETOR: a brand without it can be created as a draft, and POST /v1/10dlc/brands/{brandId}/submit refuses it with 400.

  • firstNamestring
    Limitsmax length 50
  • lastNamestring
    Limitsmax length 50
  • emailstring<email>required
  • phonestringrequired

    Contact phone in E.164 format. For a SOLE_PROPRIETOR, a mobile number: the carrier texts a verification code to it.

  • streetstringrequired
    Limitsmax length 200
  • citystringrequired
    Limitsmax length 100
  • statestringrequired
    Limitsmax length 50
  • postalCodestringrequired
    Limitsmax length 20
  • countrystringrequired

    Two-letter ISO country code.

    Limitsmin length 2 · max length 2
  • websitestring<uri>
  • verticalstringrequired

    Industry vertical.

    Limitsmax length 50
  • stockSymbolstring
    Limitsmax length 10
  • stockExchangestring
    Limitsmax length 50

Responses

201Brand created in draft status.
  • brandobjectrequired
    27 properties
    • idstringrequired
    • entityTypestringrequired

      Business entity type for 10DLC brand registration.

      One ofPRIVATE_PROFITPUBLIC_PROFITNON_PROFITGOVERNMENTSOLE_PROPRIETOR
    • displayNamestringrequired

      Display name of the brand.

    • companyNamestringnullable

      Legal company name.

    • einstringnullable

      Tax id of the business: the Employer Identification Number (EIN) for a US brand, or the tax id from its own country's business register for a brand outside the US.

    • firstNamestringnullable
    • lastNamestringnullable
    • emailstring<email>required
    • phonestringrequired

      Contact phone number in E.164 format.

    • streetstringrequired
    • citystringrequired
    • statestringrequired
    • postalCodestringrequired
    • countrystringrequired

      Two-letter ISO country code.

    • websitestring<uri>nullable
    • verticalstringrequired

      Industry vertical.

    • stockSymbolstringnullable
    • stockExchangestringnullable
    • statusstringrequired

      Status of a 10DLC brand registration.

      • draft: created, not yet submitted to the carrier.
      • pending: submitted, awaiting the carrier's answer.
      • verified: the carrier registered the brand AND verified the business behind it.
      • unverified: the carrier registered the brand but did not verify the business — the registration exists, the identity check did not pass or has not been resolved. Campaigns are allowed, with lower daily limits. Read identityStatus for the carrier's own wording.
      • rejected: refused by the carrier.
      • failed: the registration never reached the carrier; the fee is refunded.
      One ofdraftpendingverifiedunverifiedrejectedfailed
    • identityStatusstringnullable

      The carrier's raw identity verdict on the business, as the carrier spells it (VERIFIED, VETTED_VERIFIED, SELF_DECLARED, UNVERIFIED). Null while the identity has not been resolved — which is not the same as verified, and is why such a brand reports status: unverified.

    • brandScoreintegernullable

      Trust score assigned by TCR after vetting.

    • brandRelationshipstringnullable
    • failureReasonstringnullable

      Reason for rejection, if applicable.

    • submittedAtstring<date-time>nullable
    • verifiedAtstring<date-time>nullable
    • createdAtstring<date-time>required
    • updatedAtstring<date-time>required
400Invalid request.
  • codestringrequired
  • messagestringrequired
  • detailsobject
401Unauthorized.
  • codestringrequired
  • messagestringrequired
  • detailsobject