Bird (MessageBird)
| Schemes | msgbird:// |
| Cargo feature | service-messagebird |
| Service | https://bird.com/ |
| Body formats | text (first is the default) |
| Attachments | no |
| Title length | no title (merged into the body) |
| Body length | 160 characters |
| Body lines | unlimited |
| Request throttle | none |
| Vendor URLs accepted | no |
URL formats
{schema}://{apikey}/{source}
{schema}://{apikey}/{source}/{targets}
{schema} is one of msgbird://.
URL tokens
| Token | Meaning | Type | Required | Default | Notes |
|---|---|---|---|---|---|
{apikey} | API Key | string | yes | secret; must match ^bk_[a-z0-9]+_[a-z0-9_-]+$ | |
{source} | Source Phone No | string | yes | prefix +; must match ^[0-9\s)(+-]+$ | |
{target_phone} | Target Phone No | string | no | prefix +; must match ^[0-9\s)(+-]+$ | |
{targets} | Targets | list | no | any of target_phone; separated by / |
Query parameters
| Parameter | Meaning | Type | Default | Notes |
|---|---|---|---|---|
category | Category | choice | transactional | one of transactional, marketing, authentication, service |
from | Source Phone No | string | sets {source} | |
to | Targets | list | sets {targets} |
The common URL parameters (format, overflow, verify, redirect, cto, rto, retry, wait, store, tag, tz, user, password, port, optional, emojis) apply as well.
Examples
Accepted URLs (tokens are fake):
msgbird://bk_eu1_bbbbbbbbbbbbbbbbbbbbbbbb/15551232000
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa/15551232000/15551232001/15551232002
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa/15551232000/15551232001?from=15551233000
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa/15551232000?category=Marketing
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa/?from=15551233000&to=15551232000
Rejected URLs:
msgbird://
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa/abcd
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa/123
msgbird://bk_us1_aaaaaaaaaaaaaaaaaaaaaaaaaaaa
Send one from the command line:
mercurio -t 'Backup' -b 'Finished in 42s' 'msgbird://bk_eu1_bbbbbbbbbbbbbbbbbbbbbbbb/15551232000'
Notes
Bird, formerly MessageBird, SMS (msgbird://).
POST https://{region}.platform.bird.com/v1/sms/messages with a Bird API key (bk_{region}_...) as a Bearer token, one request per target. Classic MessageBird keys (25 characters, rest.messagebird.com) stop working on 2026-12-31 and are rejected.
Differences with Apprise
- Apprise posts to the classic
rest.messagebird.com/messagesAPI with a 25-character key, while mercurio uses Bird’s SMS API ({region}.platform.bird.com/v1/sms/messages,bk_...key as Bearer, JSONfrom/to/text/category, new?category=); classic keys, which stop working on 2026-12-31, are rejected.