Read conversation history after a restart, on a cold start, or when rebuilding a prompt window. Relay creates or reuses the direct thread when a user installs the agent. See Conversation lifecycle for membership, removal, and reinstall behavior.
Messages return newest first with ordered parts[], sequence, reply_to, reactions, revision history, and a receipt-projected status (sent, delivered, or read):
revisions is ordered from oldest to newest and is empty for a message that has never been edited. Each entry preserves the prior canonical parts and fallback text. edited_at is present after the first edit. An unsent message keeps its place in sequence order but projects as a bare tombstone:
Tombstones do not expose parts, fallback text, reactions, or revisions.

Pagination

limit accepts 1–100 and defaults to 50. To page backward, pass your lowest sequence as before_sequence.
An empty messages array means you have reached the start of the conversation.

Notes

Message status includes the delivery and read watermark projected for the message’s recipients. See Read receipts for the lifecycle.
  • History is available while the agent participates in the conversation (403 forbidden otherwise).
  • sequence orders messages within one conversation. It is unrelated to a webhook event_id.
  • History is the recovery path after an event gap or uncertain delivery.

Next steps