[Cotlet](https://cotlet.dev/index.md) · [Integrations](https://cotlet.dev/integrations.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Use cases](https://cotlet.dev/use-cases.md) · [Security](https://cotlet.dev/security.md) · [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md) · [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [Contact](https://cotlet.dev/contact.md) · [Pricing](https://cotlet.dev/pricing.md) · [Sign up](https://cotlet.dev/signup)

# Create SMS campaign

> Send or schedule an SMS campaign to one contact list, with an opt-out. Inputs, cURL, Python and Node.js examples and an example response.

Source: https://cotlet.dev/docs/api/clicksend/create_sms_campaign

Docs sections: [Get started](https://cotlet.dev/docs.md) · [REST API](https://cotlet.dev/docs/api.md) · [MCP](https://cotlet.dev/docs/mcp.md) · [SDKs & CLI](https://cotlet.dev/docs/sdks.md) · [Integrations](https://cotlet.dev/docs/integrations.md)

Send or schedule an SMS campaign to one contact list, with an opt-out.

ClickSend API: https://cotlet.dev/docs/api/clicksend.md

`POST https://cotlet.dev/api/v1/clicksend/lists/{list_id}/sms-campaigns`

Access: write. Confirm: waits for the user's OK before it runs.

Creates a campaign as SMS campaigns > Add new campaign does, for one list of up to 20,000 recipients. It goes out now or at send_at, and everyone on the list at send time gets it, also contacts added after you scheduled it. opt_out adds Reply STOP or an unsubscribe link; a shared or dedicated number takes either, an own number only unsubscribe_link, an alpha tag only unsubscribe_link (or your dedicated number in the text). The confirmation shows the date and cost, as the dashboard does. By default you confirm each call; you can switch that off for this tool.

## Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `name` | string | yes | Campaign nickname, only for you. |
| `list_id` | integer | yes | Contact list ID from list_contact_lists. |
| `from` | string | yes | Sender as the From field shows it: a dedicated number, an own number you verified, an alpha tag (up to 11 characters, no spaces), a shared number or Smart Senders. |
| `message` | string | yes | Text of the message. Placeholders such as [First Name] and shortened links work. |
| `opt_out` | enum | no | reply_stop, unsubscribe_link or none. Marketing messages need one that fits the sender. |
| `send_at` | string | no | Send time, YYYY-MM-DD HH:MM, in the timezone set in your ClickSend Dashboard. Up to 4 months ahead. Leave out to send now. |

## Request

**cURL**

```bash
curl -X POST https://cotlet.dev/api/v1/clicksend/lists/128734/sms-campaigns \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Black Friday teaser","from":"+15550100188","message":"Hi [First Name], Black Friday starts Nov 27. Subscribers shop first: shop.example.com/bf","opt_out":"reply_stop","send_at":"2026-10-26 09:00"}'
```

**Python**

```python
result = client.call("clicksend", "create_sms_campaign", {"name":"Black Friday teaser","list_id":128734,"from":"+15550100188","message":"Hi [First Name], Black Friday starts Nov 27. Subscribers shop first: shop.example.com/bf","opt_out":"reply_stop","send_at":"2026-10-26 09:00"})
```

**Node.js**

```js
const result = await cotlet.call('clicksend', 'create_sms_campaign', {"name":"Black Friday teaser","list_id":128734,"from":"+15550100188","message":"Hi [First Name], Black Friday starts Nov 27. Subscribers shop first: shop.example.com/bf","opt_out":"reply_stop","send_at":"2026-10-26 09:00"});
```

**CLI**

```bash
cotlet call clicksend create_sms_campaign --data '{"name":"Black Friday teaser","list_id":128734,"from":"+15550100188","message":"Hi [First Name], Black Friday starts Nov 27. Subscribers shop first: shop.example.com/bf","opt_out":"reply_stop","send_at":"2026-10-26 09:00"}'
```

## Example response

```json
{
  "campaign_id": 48213,
  "name": "Black Friday teaser",
  "status": "scheduled",
  "list": "Newsletter subscribers",
  "recipients": 1840,
  "from": "+15550100188",
  "send_at": "2026-10-26 09:00",
  "message_parts": 1,
  "cost": "73.60"
}
```

Previous: [Send SMS](https://cotlet.dev/docs/api/clicksend/send_sms.md)
Next: [Cancel scheduled SMS](https://cotlet.dev/docs/api/clicksend/cancel_scheduled_sms.md)

---

Give your AI agents your signed-in browser.

**Product:** [Integrations](https://cotlet.dev/integrations.md) · [Use cases](https://cotlet.dev/use-cases.md) · [How it works](https://cotlet.dev/how-it-works.md) · [Pricing](https://cotlet.dev/pricing.md) · [Security](https://cotlet.dev/security.md)

**Resources:** [Blog](https://cotlet.dev/blog.md) · [API docs](https://cotlet.dev/docs.md) · [Help center](https://cotlet.dev/help.md) · [Changelog](https://cotlet.dev/changelog.md) · [GitHub](https://github.com/cotletdev/cotlet)

**Solutions:** [For developers](https://cotlet.dev/for-developers.md) · [For automation agencies](https://cotlet.dev/for-agencies.md)

**Company:** [About](https://cotlet.dev/about.md) · [AI info: company facts](https://cotlet.dev/ai-info.md) · [Contact](https://cotlet.dev/contact.md)

**Legal:** [Terms of service](https://cotlet.dev/terms) · [Privacy policy](https://cotlet.dev/privacy) · [Refund policy](https://cotlet.dev/refunds) · [Acceptable use](https://cotlet.dev/acceptable-use) · [Cookie policy](https://cotlet.dev/cookies) · [DPA](https://cotlet.dev/dpa) · [Subprocessors](https://cotlet.dev/subprocessors)

**Elsewhere:** [Status page](https://status.cotlet.dev) · [Cotlet on GitHub](https://github.com/cotletdev) · [Cotlet on X](https://x.com/cotletdev) · [Cotlet on LinkedIn](https://www.linkedin.com/company/cotletdev) · [Cotlet on Product Hunt](https://www.producthunt.com/products/cotlet) · [Cotlet on Crunchbase](https://www.crunchbase.com/organization/cotlet) · [Cotlet on SaaSHub](https://www.saashub.com/cotlet)

Cotlet.dev is built by Bart Krawczyk and Jake Slugocki, the founders of Take Group sp. z o.o., ul. Wincentego Janasa 4, 40-855 Katowice, Poland. KRS 0000871398, NIP 6342984273, VAT EU: PL6342984273. [About us](https://cotlet.dev/about.md)

Cotlet is an independent service. It is not affiliated with, endorsed by or sponsored by any of the products listed on this site. Product names are trademarks of their respective owners.
