What you work with
A corporate action is registered once per asset and published on every token stream of that asset you hold. You only ever see the tokens and chains linked to your account. See Identifiers.
Push and pull
Webhooks and the event list expose exactly the same events, with the same
sourceEventId.
The whole picture
- Get a bearer token with your client credentials. Sandbox and authentication.
- List your tokens with
GET /tokens: one per chain deployment, with its asset. - Receive webhooks at the endpoint you gave Securitize: verify the signature, acknowledge with a
2xxwithin 10 seconds (Webhooks), then apply each event as in Receive webhooks. - Apply each event: deduplicate on
sourceEventId, keep the highestversionper object, order bysequenceper token.datais the whole object every time, never a delta. - Recover after downtime: resend the failed deliveries, or page through the event list. Replay and recover.
- Query state when you need it: a token’s effective market status, a corporate action’s latest version. Track a corporate action, Track token status.
Sandbox and authentication
The base URL, the token endpoint and the rate limits.
Receive webhooks
Verify, acknowledge, deduplicate, apply.
Replay and recover
Read the last 90 days back and resend what failed.
Track a corporate action
Versions, corrections, postponements, cancellations.
Track token status
Restrictions and the effective market status.
Test in sandbox
Nine scripted scenarios, on demand.
Before you start
- An agreement with Securitize. Your Securitize contact issues your client id and secret, links the CET tokens you list to your account, registers your webhook endpoint and hands you its signing secret.
- A public HTTPS endpoint that answers
2xxwithin 10 seconds and can verify a signature. - An idempotent handler. Delivery is at least once and can be out of order. Your consumer must be correct when the same event arrives twice, or a later version arrives first.
What makes this API different
- The payload is the whole object. Every event carries the full current state in
data, withchangedFieldssaying what moved. Apply it by replacing what you hold, never by accumulating. - Nothing ends silently. A corporate action is terminal only on
ca.action.completedorca.action.cancelled. A restriction ends only withca.restriction.removed; itsexpectedEndis informational. - Corrections keep the id. A corrected, postponed or cancelled corporate action keeps its
sourceCaIdand gets a new version. A re-announced one is a new corporate action linked withsupersedesCaId. - Unknown values are normal. New
caType,reasonCodeand event types arrive in minor versions. Treat a value you do not know as informational and keep going. - You only see your tokens. Every list, event and stream is cut to the tokens and chains linked to your account, which is why
sequencecan have gaps.