canonical: https://jentic.com/apis/messagebird.com/messagebird-sms-api

# MessageBird SMS API

Jentic publishes the only available OpenAPI specification for MessageBird SMS API, keeping it validated and agent-ready. The MessageBird SMS API sends and manages SMS messages through MessageBird's global mobile network, returning delivery metadata for each send. Agents can dispatch a message, list previously sent messages, look up a single message by ID, and delete a stored message record from the same compact surface. Authentication uses MessageBird's `AccessKey` scheme and the API is suitable for transactional SMS, OTP delivery, and outbound notifications.

## For AI agents

Send SMS messages and inspect or delete previously sent message records via MessageBird's REST surface, in 4 endpoints.

## Scope

Does not handle voice calls, WhatsApp, intent classification, or NER - use for SMS sending and message record management only.

## Capabilities

- Send a transactional SMS to a customer phone number with a custom originator name
- List recently sent SMS messages for a status reconciliation sweep
- Look up a specific message by ID to confirm it left the gateway
- Delete a stored SMS message record once it has been processed downstream
- Dispatch one-time passcodes (OTP) over SMS for account verification flows

## Use cases

### Transactional SMS Delivery

Send order confirmations, shipping updates, and appointment reminders by posting a message to the SMS endpoint with the recipient and body. The API returns a message ID and gateway acknowledgment, which the workflow can store for later auditing. This is the core path for any product that needs to reach customers reliably on their phone.

Example prompt: POST to /messages with the recipient number, originator, and message body, then store the returned message ID against the order record

### OTP and Two-Factor Codes

Generate a numeric one-time passcode in your application, send it via the SMS endpoint, and verify the user-entered code on submission. MessageBird handles delivery across carriers and the response confirms the message was accepted by the gateway. Pair this with a short TTL and a per-user rate limit to keep the flow secure.

Example prompt: POST a 6-digit OTP to /messages addressed to the user's phone and persist the code with a 5-minute expiry for verification

### Delivery Audit and Cleanup

List previously sent messages and look up individual records by ID to reconcile delivery against an internal database. After audit and reporting, the DELETE endpoint removes the stored record from MessageBird so retention is managed centrally. This is useful for compliance regimes that require message log purging on a schedule.

Example prompt: GET /messages, reconcile each message ID against the internal log, then DELETE /messages/{messageId} for records older than the retention window

### AI Agent Integration via Jentic

An AI agent uses Jentic to discover the SMS API by intent search ('send an SMS'). Jentic returns the POST /messages operation with its input schema (recipient, originator, body) so the agent can dispatch a message in a single load-and-execute step. The MessageBird AccessKey is held in your Jentic One instance and never enters the agent's prompt.

Example prompt: Use Jentic to search 'send an SMS', load the POST /messages schema, and execute it to send a delivery notification to the customer

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /messages | Send an SMS message |
| GET | /messages | List sent SMS messages |
| GET | /messages/{messageId} | Get a single message by ID |
| DELETE | /messages/{messageId} | Delete a stored message record by ID |

## Key resources

- **Messages** — Outbound SMS messages - create, list, retrieve by ID, and delete

## Why Jentic

- **Setup:** Wiring the MessageBird SMS API by hand means placing your AccessKey in the Authorization header on every request against the rest.messagebird host, shaping the message body, and handling retries yourself. Through Jentic you install once, import the SMS API from the API Directory, store the AccessKey once, and your agent calls it.
- **Permission scoping:** The SMS API takes the recipients and text in the request body when sending, with the message id appearing in the path only for reads and deletes (/messages/{messageId}), so scope your agent by operation: limit it to sending and listing messages, and the delete operation stays out of reach unless you add it.
- **Credential handling:** Your MessageBird AccessKey is stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'send an SMS' or 'look up a message record', and Jentic returns the matching operation such as POST /messages with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Twilio** — Competing global SMS gateway with broader voice and channel coverage
- **Sinch** — Global SMS and CPaaS provider with a similar transactional SMS surface
- **Plivo** — Cloud SMS and voice API with worldwide reach
- **MessageBird Intent** — Classify the intent of inbound replies to the SMS messages you send

## FAQ

### Why is there no official OpenAPI spec for MessageBird SMS API?

MessageBird does not publish an OpenAPI specification for its SMS API. Jentic generates and maintains this spec so that AI agents and developers can call SMS sending via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the MessageBird SMS API use?

An API key in the `Authorization` header, prefixed with the word `AccessKey` (for example `Authorization: AccessKey w223tVQTcLO4ufBTuJxjvzwJ22`). Through Jentic the key is held in your Jentic One instance and never appears in the agent's prompt.

### Can I look up the status of a specific SMS after sending?

Yes. Capture the message ID returned from POST /messages and call GET /messages/{messageId} to retrieve the stored record, which includes the gateway acknowledgment fields.

### How do I delete an old SMS record?

Call DELETE /messages/{messageId} once the record has been processed and is past your retention policy. Listing is available via GET /messages so you can iterate and prune programmatically.

### How do I send an SMS through Jentic?

Search Jentic for `send an SMS`, load the POST /messages operation, and execute it with the recipient, originator, and body fields. Jentic returns the gateway response including the message ID.

### Are there published rate limits?

The OpenAPI spec does not declare quantitative rate limits. Check your MessageBird account dashboard for the limits attached to your plan and design retry-with-backoff into the workflow before sending bulk traffic.

### Can I limit what my agent is allowed to do with the MessageBird SMS API?

Yes. Because you run Jentic One yourself, your own rules decide which of the four operations the agent may call, so you can allow it to send messages with POST /messages and list them with GET /messages while keeping the rest off limits. The DELETE /messages/{messageId} operation that removes a stored record stays out of reach unless you explicitly grant it, and the same applies to the GET /messages/{messageId} lookup. Your MessageBird AccessKey is held by your Jentic One instance and injected at execution time, so the agent never sees the credential or gains access to operations you have not enabled.
