API reference
List conversations
inbox_list_threads — Saved DM conversations, newest activity first: person, unread count, last message time, request flag, tags, manual-care flag, and (when message text is allowed) the last message preview.
inbox_list_threads · Reads saved data
Saved DM conversations, newest activity first: person, unread count, last message time, request flag, tags, manual-care flag, and (when message text is allowed) the last message preview. Use x_sync_inbox to refresh.
| REST | GET /api/public/v1/threads |
| MCP tool | inbox_list_threads |
| Permission needed | view — Owner, Manager, Operator, Viewer |
| Scope group | inbox:read |
| Group | Inbox |
| Shown up front in profiles | Operate X accounts |
Input
| Field | Type | Required | Description |
|---|---|---|---|
account |
string (1–100 chars) | No | Only this account (default: all allowed accounts). |
unread_only |
boolean | No | |
cursor |
string (0–500 chars) | No | Opaque cursor from a previous page's next_cursor. |
limit |
integer (1–200) | No | Page size (default 50, max 200). |
Result
Returned in the { data, meta } envelope, without creating a job on X. Lists include next_cursor and has_more.
Example
Call over REST
curl -X GET "https://reach-link-craft.lovable.app/api/public/v1/threads" \
-H "Authorization: Bearer $XBUDDY_API_KEY"
Call over MCP
{
"method": "tools/call",
"params": {
"name": "inbox_list_threads",
"arguments": {}
}
}
Errors you may get
| Code | HTTP | Retryable |
|---|---|---|
unauthorized |
401 | No |
key_expired |
401 | No |
integration_revoked |
401 | No |
connection_not_linked |
403 | No |
integration_paused |
403 | No |
workspace_integrations_paused |
403 | No |
integration_authorization_lost |
403 | No |
workspace_suspended |
403 | No |
forbidden |
403 | No |
invalid_input |
422 | No |
rate_limited |
429 | Yes |
internal |
500 | Yes |
ambiguous_account |
409 | No |
account_not_allowed |
403 | No |
not_found |
404 | No |