{
"schemaVersion": "1.0",
"sourceEventId": "evt_01K7Q4A1F3H5K7M9P1R3T5V7X9",
"eventType": "ca.restriction.added",
"objectType": "RESTRICTION",
"objectId": "rst_01K7Q4A0D2F4H6J8K0M2P4R6T8",
"version": 1,
"stream": {
"type": "TOKEN",
"id": "7f3b2c10-5d4e-4a6b-9c8d-1e2f3a4b5c6d"
},
"sequence": 145,
"occurredAt": "2026-10-20T13:57:07.491Z",
"publishedAt": "2026-10-20T13:57:10.707Z",
"environment": "sandbox",
"changedFields": [],
"data": {
"restrictionId": "rst_01K7Q4A0D2F4H6J8K0M2P4R6T8",
"version": 1,
"scope": "ASSET",
"scopeId": "c0a8e2f4-1b3d-4e5f-8a9b-0c1d2e3f4a5b",
"restrictionType": "TRADING_SUSPENSION",
"reasonCode": "EXCHANGE_SUSPENSION",
"reasonText": "Suspended by the listing exchange",
"source": "LISTING_EXCHANGE",
"marketHaltCode": null,
"effectiveFrom": "2026-10-20T13:57:07.491Z",
"expectedEnd": "2026-10-22T13:30:00.000Z",
"relatedCaId": null,
"removedAt": null
}
}Webhooks
A trading restriction ended
Terminal for that restriction, and the only way one ends: expectedEnd never ends a restriction by itself. data.removedAt is set and the object is the full restriction, as always.
WEBHOOK
ca.restriction.removed
{
"schemaVersion": "1.0",
"sourceEventId": "evt_01K7Q4A1F3H5K7M9P1R3T5V7X9",
"eventType": "ca.restriction.added",
"objectType": "RESTRICTION",
"objectId": "rst_01K7Q4A0D2F4H6J8K0M2P4R6T8",
"version": 1,
"stream": {
"type": "TOKEN",
"id": "7f3b2c10-5d4e-4a6b-9c8d-1e2f3a4b5c6d"
},
"sequence": 145,
"occurredAt": "2026-10-20T13:57:07.491Z",
"publishedAt": "2026-10-20T13:57:10.707Z",
"environment": "sandbox",
"changedFields": [],
"data": {
"restrictionId": "rst_01K7Q4A0D2F4H6J8K0M2P4R6T8",
"version": 1,
"scope": "ASSET",
"scopeId": "c0a8e2f4-1b3d-4e5f-8a9b-0c1d2e3f4a5b",
"restrictionType": "TRADING_SUSPENSION",
"reasonCode": "EXCHANGE_SUSPENSION",
"reasonText": "Suspended by the listing exchange",
"source": "LISTING_EXCHANGE",
"marketHaltCode": null,
"effectiveFrom": "2026-10-20T13:57:07.491Z",
"expectedEnd": "2026-10-22T13:30:00.000Z",
"relatedCaId": null,
"removedAt": null
}
}Authorizations
Body
application/json
The body of every webhook, and the payload of every item in the event list. data is the full current state of the object, never a delta.
Response
200
Any 2xx within 10 seconds acknowledges the delivery. Anything else, or no answer, is retried with backoff for up to 72 hours.