List conversations
GET/api/v1/email/threads
curl -X GET 'https://www.unitpost.com/api/v1/email/threads' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'User-Agent: my-app/1.0'{
"object": "list",
"has_more": false,
"data": [
{
"object": "email_thread",
"id": "id_123",
"subject": "Welcome to Acme",
"last_message_at": "2026-01-01T00:00:00.000Z",
"last_direction": "inbound",
"snippet": "string",
"from": "you@yourdomain.com",
"from_name": "string",
"inbox_address": "string",
"message_count": 1,
"has_attachments": false,
"flagged": false,
"replied": false
}
],
"next_cursor": "string"
}Your inbox's conversations, newest activity first, as Emails → Received shows them: each received message and the replies and forwards sent from it are one conversation. Every conversation is listed: read state and Spam are the dashboard's. q searches the subject, the sender and the opening words. Page with next_cursor as after. snippet is null when the newest message is one you sent (or a copy of your own send): sent bodies aren't on the API, and q never matches a withheld snippet, so a page can be shorter than limit while has_more is true. q shares the search rate policy. Any other query key is a 422. Requires the emails:read capability.
Parameters3 fields
| Field | Type | Description |
|---|---|---|
q | string · query | Search the subject, sender and opening words. |
limit | integer · query | 1–100 (default 50). |
after | string · query | The previous page's `next_cursor`. |
Response · 200 fields13 fields
| Field | Type | Description |
|---|---|---|
objectrequired | string | — |
idrequired | string | — |
subjectrequired | string | null | — |
last_message_atrequired | string | — |
last_directionrequired | enuminbound | outbound | — |
snippetrequired | string | null | The newest received message's opening words; null when the newest message is one you sent. |
fromrequired | string | null | The other party: the newest received message's sender. |
from_namerequired | string | null | — |
inbox_addressrequired | string | null | Your address it came in on (the newest received message's To). |
message_countrequired | integer | — |
has_attachmentsrequired | boolean | — |
flaggedrequired | boolean | A received message was flagged spam or virus, or failed SPF, DKIM or DMARC. |
repliedrequired | boolean | A reply or forward was sent from this conversation. |