> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zavu.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Campaign Registration

> Register your messaging campaign for 10DLC SMS compliance

# Campaign Registration

A **Campaign** describes your messaging use case. After your brand is approved, you must register at least one campaign to start sending SMS messages in the United States.

## Prerequisites

Before registering a campaign:

1. **Approved Brand** - Your brand must be verified (see [Brand Registration](/guides/10dlc/brand-registration))
2. **US Phone Number** - At least one phone number to assign to your campaign

## Use Case Types

Select the use case that best describes your messaging:

| Use Case                    | Description                     | Monthly Fee |
| --------------------------- | ------------------------------- | ----------- |
| 2FA / Authentication        | One-time passwords, login codes | \$2/month   |
| Account Notifications       | Account updates, alerts         | \$2/month   |
| Customer Care               | Support conversations           | \$2/month   |
| Delivery Notifications      | Shipping updates, ETAs          | \$2/month   |
| Fraud Alerts                | Security warnings               | \$2/month   |
| Marketing                   | Promotional messages, offers    | \$10/month  |
| Low Volume Mixed            | Multiple use cases, low volume  | \$2/month   |
| Polling and Voting          | Surveys, feedback collection    | \$2/month   |
| Public Service Announcement | Non-profit, public info         | \$2/month   |
| Security Alerts             | Security notifications          | \$2/month   |

<Tip>
  Choose the most specific use case for your messaging. Marketing campaigns have higher fees but allow promotional content.
</Tip>

## Registration Steps

### Step 1: Campaign Basics

Provide general information about your campaign:

* **Campaign Name** - A descriptive name for internal reference
* **Use Case** - Select from the list above
* **Description** - Brief explanation of what messages you'll send
* **Subscriber Opt-in** - How users consent to receive messages

### Step 2: Sample Messages

Provide 2-5 sample messages that represent your typical content:

```
Example for 2FA:
"Your verification code is 123456. This code expires in 10 minutes."

Example for Delivery:
"Hi {{name}}, your order #{{order_id}} has shipped! Track it here: {{tracking_url}}"
```

<Warning>
  Sample messages must accurately represent your actual messaging. Misleading samples can result in campaign rejection.
</Warning>

### Step 3: Compliance Settings

Configure compliance options:

| Setting               | Description                                        |
| --------------------- | -------------------------------------------------- |
| **Opt-in Keywords**   | Words that subscribe users (e.g., START, YES)      |
| **Opt-out Keywords**  | Words that unsubscribe users (e.g., STOP, CANCEL)  |
| **Help Keywords**     | Words that trigger help message (e.g., HELP, INFO) |
| **Age-gated Content** | Whether content is restricted to adults            |
| **Direct Lending**    | Whether messages relate to lending services        |

<Note>
  Standard opt-out (STOP) handling is automatic. Users who reply STOP will be automatically unsubscribed.
</Note>

### Step 4: Review and Submit

Review all information before submitting:

1. Verify campaign details are accurate
2. Confirm sample messages are representative
3. Check compliance settings
4. Submit for review

### Via API

```bash theme={null}
# Step 1: Create campaign (draft)
curl -X POST https://api.zavu.dev/v1/10dlc/campaigns \
  -H "Authorization: Bearer $ZAVU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brandId": "brand_abc123",
    "name": "Order Notifications",
    "useCase": "ACCOUNT_NOTIFICATION",
    "description": "Send order status updates to customers who opted in at checkout.",
    "sampleMessages": [
      "Hi {{name}}, your order #{{order_id}} has shipped!",
      "Your order #{{order_id}} has been delivered."
    ],
    "subscriberOptIn": true,
    "subscriberOptOut": true,
    "subscriberHelp": true,
    "numberPooling": false,
    "directLending": false,
    "embeddedLink": true,
    "embeddedPhone": false,
    "affiliateMarketing": false,
    "ageGated": false
  }'

# Step 2: Submit for carrier review
curl -X POST https://api.zavu.dev/v1/10dlc/campaigns/{campaignId}/submit \
  -H "Authorization: Bearer $ZAVU_API_KEY"
```

## Cost

| Item                  | Cost     | Type                                                  |
| --------------------- | -------- | ----------------------------------------------------- |
| Campaign Registration | Included | Already paid during brand registration (\$35 upfront) |
| Monthly Fee           | \$2-15   | Recurring                                             |

<Note>
  The campaign registration fee (\~$20) is included in the $35 upfront fee charged during brand registration. Only the recurring monthly fee applies separately.
</Note>

## Approval Process

After submission, your campaign goes through carrier review:

```
Submitted → Under Review → Approved/Rejected
              1-7 days
```

### Review Timeline

| Use Case            | Typical Review Time |
| ------------------- | ------------------- |
| 2FA / Transactional | 1-2 business days   |
| Customer Care       | 2-3 business days   |
| Marketing           | 5-7 business days   |

### Status Meanings

| Status       | Description                         |
| ------------ | ----------------------------------- |
| **Pending**  | Campaign submitted, awaiting review |
| **Approved** | Ready to assign phone numbers       |
| **Rejected** | Campaign rejected (see reason)      |

## If Rejected

If your campaign is rejected:

1. Review the rejection reason provided
2. Update your campaign details or sample messages
3. Resubmit for review

Common rejection reasons:

* Sample messages don't match use case
* Missing opt-in/opt-out information
* Prohibited content type
* Incomplete description

## Campaign Limits

Each campaign has messaging limits based on your brand's Trust Score:

| Trust Score | Daily SMS Limit | Messages/Second |
| ----------- | --------------- | --------------- |
| Low         | 2,000           | 0.2             |
| Medium      | 10,000          | 1               |
| High        | 200,000         | 10+             |

<Tip>
  You can create multiple campaigns for different use cases. Each campaign can have its own phone numbers assigned.
</Tip>

## Next Steps

Once your campaign is approved:

<CardGroup cols={2}>
  <Card title="Assign Phone Numbers" icon="phone" href="/guides/10dlc/phone-assignment">
    Connect your numbers to the campaign
  </Card>

  <Card title="10DLC Overview" icon="book" href="/guides/10dlc/overview">
    Review the full process
  </Card>
</CardGroup>
