Submit 10DLC campaign for review
The team must have an approved Business Verification (KYB): submitting without one returns 403 with code kyb_required. Submit a draft campaign for carrier review. The campaign must be in draft status and its brand must be verified. TCR's one-time registration fee is charged from your balance at submission ($15 for standard use cases, $2 for LOW_VOLUME), passed through at cost and refunded if the carrier rejects it. Once approved, the campaign's monthly TCR fee ($10 standard, $2 LOW_VOLUME) is charged from your balance while the campaign is active — see registrationCostCents and monthlyFeeCents on the campaign object.
Authorization
AuthorizationheaderrequiredBearer YOUR_API_KEY. Create a key in the dashboard.
Path parameters
campaignIdstringrequired10DLC campaign ID.
Responses
200Campaign submitted for review.
campaignobjectrequired29 properties
idstringrequiredbrandIdstringrequiredID of the brand this campaign belongs to.
namestringrequireduseCasestringrequiredCampaign use case type.
subUseCasesstring[]descriptionstringrequiredDescription of the messaging campaign.
sampleMessagesstring[]requiredSample messages representative of campaign content.
subscriberOptInbooleanrequiredsubscriberOptOutbooleanrequiredsubscriberHelpbooleanrequirednumberPoolingbooleanrequireddirectLendingbooleanrequiredembeddedLinkbooleanrequiredembeddedPhonebooleanrequiredaffiliateMarketingbooleanrequiredageGatedbooleanrequiredmessageFlowstringhelpMessagestringoptInKeywordsstring[]optOutKeywordsstring[]statusstringrequiredStatus of a 10DLC campaign registration.
draft: created, not yet submitted.pending: submitted, awaiting the carriers. Re-read from the carrier every 30 minutes, so it moves on its own.approved: SMS to +1 numbers can go out from numbers assigned to it. The monthly fee is charged while it is approved.rejected: refused by the carriers. The one-time registration fee is refunded.failed: the registration did not reach the carriers. The fee is refunded.expired: was approved and has lapsed.
One ofdraftpendingapprovedrejectedexpiredfaileddailyLimitintegerDaily message limit based on brand trust score.
failureReasonstringregistrationCostCentsintegerOne-time registration cost in cents.
monthlyFeeCentsintegerRecurring monthly fee in cents.
submittedAtstring<date-time>approvedAtstring<date-time>createdAtstring<date-time>requiredupdatedAtstring<date-time>required
400Campaign already submitted or invalid status.
codestringrequiredmessagestringrequireddetailsobject
401Unauthorized.
codestringrequiredmessagestringrequireddetailsobject
402The balance cannot cover the one-time registration fee, so nothing was charged and nothing reached the carrier. Add funds and submit again.
codestringrequiredmessagestringrequireddetailsobject
403Business verification (KYB) is not approved. Carriers register 10DLC against a vetted legal entity, so registration is blocked until it is.
codestringrequiredmessagestringrequireddetailsobject
404Campaign not found.
codestringrequiredmessagestringrequireddetailsobject