sayintel
Endpoint

List messages

GET/api/public/v1/messagesread

List drafted/sent messages across a campaign, with QA fields (qa_score, qa_evaluated_at, needs_human, needs_redo). Filter by sent. Paginated: pass next_cursor while has_more is true.

Request

curl "https://sayintel.com/api/public/v1/messages?campaign_id=<campaign_id>" \
  -H "Authorization: Bearer $SAYINTEL_TOKEN"

Try it out

Try it outGET/api/public/v1/messagesread

Sent as a bearer token to this site only, and kept in this tab's session storage. It is never written to disk or sent anywhere else.

Paste an API key to run.

Query parameters

NameInTypeRequiredDescription
campaign_idquerystringyes
sentquerybooleanno
limitquerynumberno
cursorquerystringnoOpaque cursor from a previous call's next_cursor. Omit for the first page.

Response

{
  "ok": true,
  "tool": "list_messages",
  "kind": "read",
  "data": { ... },
  "error": null
}

Notes

  • Scope required: read. How scopes work.
  • Paginated. Pass the returned next_cursor while has_more is true.
  • Same capability over MCP as the tool list_messages. MCP setup.