Report Chat Receipts (Delivered / Opened)

View as Markdown
Batch-report delivered + read receipts for in-app chat messages. The caller's Participant row in the thread is auto-resolved from the authenticated User; non-participants get 403, cross-tenant threads get 404. Optional: delivered (array of message UUIDs that just rendered on the client - each becomes delivered_at=now for that recipient; idempotent). Optional: opened_up_to (single message UUID - anything in the thread with id<=ceiling gets opened_at=now for that recipient in one shot). Both may be sent together. Forward-only state machine: backward transitions are silently refused but audit-logged. Fires MessageDelivered / MessageOpened which the sender's app picks up via a silent push (debounced 3s). Returns 204 No Content.

Headers

{{tenant_key_name}}stringOptional

Request

This endpoint expects an object.
deliveredlist of stringsRequired
opened_up_tostringRequired

Response

Successful response