Skip to main content
POST
/
v1
/
10dlc
/
campaign
curl -X POST https://api.teli.ai/v1/10dlc/campaign \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brand_id": "B4KRR4F",
    "subgroup_id": "S9YNCY",
    "campaign_type": "STANDARD",
    "use_cases": ["CUSTOMER_CARE", "ACCOUNT_NOTIFICATION"],
    "description": "Customer support and appointment scheduling for real estate inquiries",
    "message_flow": "Users opt-in via website contact form with checkbox consent for SMS notifications. The checkbox text reads: By providing your phone number, you consent to receive SMS messages from us.",
    "phone_number_ids": ["86d52903-9b86-4701-8c11-2ac18326faad"],
    "privacy_policy_link": "https://example.com/privacy",
    "terms_and_conditions_link": "https://example.com/terms",
    "sample1": "Hi {{name}}, your appointment is confirmed for tomorrow at 2pm. Reply STOP to opt out.",
    "sample2": "Thanks for your inquiry! We will call you shortly. Reply STOP to opt out.",
    "sample3": "Your request has been received. We will respond within 24 hours. Reply STOP to opt out.",
    "sample4": "Reminder: Your appointment is in 1 hour. Reply STOP to opt out.",
    "sample5": "Thank you for choosing us! Let us know if you have any questions. Reply STOP to opt out.",
    "direct_lending": false,
    "age_gated": false,
    "subscriber_optin": true,
    "subscriber_optout": true,
    "subscriber_help": true,
    "help_message": "This is customer support. Reply STOP to opt out or call +15551234567.",
    "optout_message": "You have been unsubscribed. No more messages will be sent."
  }'
{
  "success": true,
  "campaign_id": "C1OTSR2",
  "status": "PENDING",
  "message": "Campaign submitted for carrier review. Approval typically takes 1-2 business days.",
  "carrier_qualification": [
    {
      "carrier": "AT&T",
      "qualified": true
    },
    {
      "carrier": "T-Mobile",
      "qualified": true
    },
    {
      "carrier": "Verizon Wireless",
      "qualified": true
    }
  ],
  "powered_by": "Teli"
}
Create a 10DLC campaign registration with sample messages and compliance details.
Campaign must include at least 5 sample messages and clear opt-in/opt-out messaging.

Authorizations

X-API-Key
string
required
Authentication header

Body

Required Fields

brand_id
string
required
Brand ID from brand registration (e.g., B4KRR4F)
subgroup_id
string
required
SubGroup ID to associate the campaign with
campaign_type
string
required
Campaign type: STANDARD or LOW_VOLUME
use_cases
array
required
Array of use cases (up to 5). Options:
  • CUSTOMER_CARE
  • 2FA
  • ACCOUNT_NOTIFICATION
  • DELIVERY_NOTIFICATION
  • FRAUD_ALERT
  • MARKETING
  • MIXED
  • POLLING_VOTING
  • PUBLIC_SERVICE_ANNOUNCEMENT
  • SECURITY_ALERT
description
string
required
Campaign description (40-4096 characters). Describes what messages will be sent.
message_flow
string
required
How subscribers opt-in (40-4096 characters). Describes the consent process.
phone_number_ids
array
required
Array of phone number UUIDs to assign to this campaign. Get IDs from GET /v1/voice/phone-numbers.
URL to your privacy policy
URL to your terms and conditions

Sample Messages (All 5 Required)

sample1
string
required
Sample message 1 (20-1024 characters). Must include opt-out language.
sample2
string
required
Sample message 2. Must include opt-out language.
sample3
string
required
Sample message 3. Must include opt-out language.
sample4
string
required
Sample message 4. Must include opt-out language.
sample5
string
required
Sample message 5. Must include opt-out language.

Compliance Options

direct_lending
boolean
Is this for direct lending? Default: false
age_gated
boolean
Age-restricted content? Default: false
subscriber_optin
boolean
Requires opt-in? Default: true
subscriber_optout
boolean
Has opt-out? Default: true
subscriber_help
boolean
Has help keywords? Default: true
number_pool
boolean
Uses number pooling? Default: false
Messages contain links? Default: false
embedded_phone
boolean
Messages contain phone numbers? Default: false

Keywords and Messages

optin_keywords
string
Opt-in keywords. Default: "START, YES, SUBSCRIBE"
optout_keywords
string
Opt-out keywords. Default: "STOP, QUIT, UNSUBSCRIBE, END"
help_keywords
string
Help keywords. Default: "HELP, INFO"
help_message
string
Message sent when user requests help (20-320 characters)
optout_message
string
Message sent when user opts out
curl -X POST https://api.teli.ai/v1/10dlc/campaign \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brand_id": "B4KRR4F",
    "subgroup_id": "S9YNCY",
    "campaign_type": "STANDARD",
    "use_cases": ["CUSTOMER_CARE", "ACCOUNT_NOTIFICATION"],
    "description": "Customer support and appointment scheduling for real estate inquiries",
    "message_flow": "Users opt-in via website contact form with checkbox consent for SMS notifications. The checkbox text reads: By providing your phone number, you consent to receive SMS messages from us.",
    "phone_number_ids": ["86d52903-9b86-4701-8c11-2ac18326faad"],
    "privacy_policy_link": "https://example.com/privacy",
    "terms_and_conditions_link": "https://example.com/terms",
    "sample1": "Hi {{name}}, your appointment is confirmed for tomorrow at 2pm. Reply STOP to opt out.",
    "sample2": "Thanks for your inquiry! We will call you shortly. Reply STOP to opt out.",
    "sample3": "Your request has been received. We will respond within 24 hours. Reply STOP to opt out.",
    "sample4": "Reminder: Your appointment is in 1 hour. Reply STOP to opt out.",
    "sample5": "Thank you for choosing us! Let us know if you have any questions. Reply STOP to opt out.",
    "direct_lending": false,
    "age_gated": false,
    "subscriber_optin": true,
    "subscriber_optout": true,
    "subscriber_help": true,
    "help_message": "This is customer support. Reply STOP to opt out or call +15551234567.",
    "optout_message": "You have been unsubscribed. No more messages will be sent."
  }'
{
  "success": true,
  "campaign_id": "C1OTSR2",
  "status": "PENDING",
  "message": "Campaign submitted for carrier review. Approval typically takes 1-2 business days.",
  "carrier_qualification": [
    {
      "carrier": "AT&T",
      "qualified": true
    },
    {
      "carrier": "T-Mobile",
      "qualified": true
    },
    {
      "carrier": "Verizon Wireless",
      "qualified": true
    }
  ],
  "powered_by": "Teli"
}

Response

success
boolean
Whether the campaign was submitted successfully
campaign_id
string
Campaign registration ID (e.g., C1OTSR2)
status
string
Campaign status: PENDING, ACTIVE, REJECTED
carrier_qualification
array
Carrier approval status for each carrier (AT&T, T-Mobile, Verizon, etc.)

Phone Number Assignment

When you create a campaign:
  1. The specified phone numbers are automatically assigned to the campaign
  2. Assigned phone numbers are marked as unavailable for other campaigns
  3. Each phone number can only be used for one active campaign

Next Steps

After creating a campaign:
  1. Save the campaign_id for tracking
  2. Wait for carrier approval (1-2 business days)
  3. Once approved, you can start sending messages from the assigned phone numbers
  4. Check campaign status via GET /v1/10dlc/campaigns