Inbox (Polling) API
The Inbox API is the read side of messaging: your software polls it to fetch received faxes, inbound text messages, and voicemail. It's the pull-model companion to the send-side Messaging APIs — together they let an app do everything by phone that a person can.
How polling works
Each call passes an opaque since cursor (start with 0) and gets back the items that
are newer than that cursor, oldest first, plus a nextSince to use on your next poll. It's
stateless — no items are marked "read" on the server, so you can run it from multiple workers safely.
The endpoints
| Endpoint | Returns |
|---|---|
GET /api/inbox/faxes?since=&limit= | Received faxes (+ a link to the PDF). |
GET /api/inbox/sms?since=&limit= | Inbound text messages (body inline). |
GET /api/inbox/voicemails?ext=&since=&limit= | Voicemail for a mailbox (+ transcript & audio link). |
Each item includes a mediaUrl to download the document or audio. Authentication is the same
Authorization: Bearer <token> as the send endpoints.
Example response
GET /api/inbox/faxes?since=0&limit=100
Authorization: Bearer <token>
{
"items": [
{ "id": "6F1C…", "from": "16473673492", "to": "19055551234",
"pages": 1, "receivedAt": "2026-07-24T07:43:11Z",
"mediaUrl": "/api/inbox/faxes/6F1C….pdf" }
],
"nextSince": 1784893391000
}
Because you carry the cursor, a crashed poller resumes from its last position with no gaps and no duplicates —
just save nextSince and pass it next time.