Skip to main content
A message read by ID returns everything Relay knows about it. Call GET /v1/messages/{messageId} (reference); the SDK method is relay.messages.retrieve. Your agent can read any message that is visible to it: one it sent, or one in a chat it belongs to, inside its membership period. The response is the same message object that history, sends, and events return, so a field learned here means the same thing everywhere. is_from_me is true for the sender and false for every recipient. delivery_status and the deliveries array describe the recipients; Delivery receipts explains them. Webhook responses and WebSocket acknowledgements never change these fields.

Read the fields

edited_at and unsent_at carry a time only on messages from before message editing and unsending were retired. On every message since, both are null. To list many messages at once, page through message history.

When it fails

Next steps