“Should we use the dashboard or integrate the API?” is one of the first questions any team asks when adopting bulk SMS and the honest answer is that they're built for two different jobs. Most businesses that grow past their first campaign end up using both.
The dashboard: for a human sending a message right now
A dashboard is built around a person making a decision in the moment, picking a contact group, writing a message, checking the live character and segment count before hitting send. It's the right tool when the send isn't triggered by your own software: a festival greeting to your customer list, a one-off announcement, a reminder you're composing by hand today.
- Single, group, or bulk (pasted/uploaded list) sends, each with a live cost preview.
- Saved contact groups and reusable message templates, so a recurring send doesn't start from a blank box.
- Scheduling a campaign to send automatically, up to 90 days out.
- Exportable delivery reports, filterable by status, operator, or date range.
The API: for your own software to send automatically
An API is built for the opposite case, a message that needs to go out the moment something happens in your own system, with no human in the loop. An order confirmation, a password-reset code, a payment receipt: all of these need to fire the instant an event occurs, not whenever someone next opens a dashboard.
- A REST endpoint your backend calls directly, with the same real segment-based billing as the dashboard.
- Webhooks that notify your system when a campaign completes, instead of polling for status.
- Idempotency support, so a retried request after a network blip never sends the same message twice.
- Per-token limits, requests per day, sender IDs a token is allowed to use, so a compromised key has a bounded blast radius.
Side by side
| Dashboard | API | |
|---|---|---|
| Who triggers the send | A person, in the moment | Your own software, automatically |
| Best for | Campaigns, announcements, one-off sends | OTPs, transactional alerts, event-driven messages |
| Setup | None, sign in and compose | A token and a backend integration |
| Billing | Same real segment-based rate | Same real segment-based rate |
In practice
If you're integrating the API, the developer documentation covers authentication, request shapes, and webhook payloads in full.