Overview
Casap sends one dispute.updated event whenever a dispute changes. The event carries the full state of the dispute after the change, including requiredActions: the list of things you are expected to do for that dispute right now.
Events are delivered by HTTP POST to the endpoint you register with us. See Getting set up to register one, and Events for everything Casap publishes.
Message envelope
Every message has the same four top level fields.
{
"type": "dispute.updated",
"disputeUuid": "228d0a21-68d0-4ce5-8efd-c8deaf2912df",
"occurredAt": "2026-09-28T19:21:55.37527287Z",
"data": {
"dispute": { },
"statusMessage": "Your dispute is under review.",
"timeline": [ ],
"requiredActions": [ ]
}
}
type(string) — Alwaysdispute.updated.disputeUuid(string) — The dispute this message is about.occurredAt(string) — RFC 3339 timestamp of the change.data.dispute(object) — Full dispute state after the change.data.statusMessage(string) — Member facing summary of the current state.data.timeline(array) — Member facing milestones for the dispute.data.requiredActions(array) — What you need to do. See Reading requiredActions.