Overview
Your Anon organization can subscribe to webhook events to receive push‑style notifications whenever important events occur during the data‑migration lifecycle. Our webhook service gives you:- High‑availability delivery with automatic retries
- A visual Event Log and Replay UI in the dashboard (
/webhooks) - Cryptographic signatures so you can verify that the payload really came from us
- Kicking off downstream processing when a migration finishes
- Updating your own UI in real‑time as tasks progress
- Alerting when a login workflow is rejected or a migration fails
Quickstart
- Navigate to dashboard.anon.com/webhooks and click
+ Add endpoint. - Enter the HTTPS URL (e.g.
https://api.example.com/anon/webhooks) where you want to recieve events. - Click on Create. You’ll start receiving events immediately.
Testing
- You can create a Svix Play endpoint to test receiving events
- You can also send example events (svix.ping) through the Testing tab of your endpoint
Verifying requests
Each request includes seven headers:Indicates the MIME types that are acceptable for the response
The length of the request body in bytes
application/jsonUnique message ID (e.g.
msg_2ycTlwDkllobhXwGILmiziO9xnz)Cryptographic signature for verification (e.g.
v1,cWXqN0eZ2edTtYgF+LfDDmNLgNOiSVx+OOq9WU3MDkw=)Unix timestamp of when the webhook was sent (e.g.
1750133013)Identifies the webhook sender (e.g.
Svix-Webhooks/1.66.0 (sender-9YMgn; +https://www.svix.com/http-sender/))- You can copy the singing secret from the webhook page to verify the signature of webhook events
- You can set custom headers in the
Advancedtab of your webhook
Event types
- Migration Events
- Migration Task Events
- Login Workflow Events
| Event | Trigger |
|---|---|
| migration.created | A migration record is created and inserted into the database, but has not started yet |
| migration.started | The migration moves into WORKING, typically after login workflow success |
| migration.completed | The migration completes with status COMPLETE or COMPLETED_WITH_FAILURES |
| migration.failed | The migration enters FAILED |
A
migration_task.failed event may still result in available files for the corresponding task. We recommend polling the files API for partial extractions.Payload format
All events share the same envelope:Resource-based object schemas
Here are the schemas for different resource objects:Retry logic
- We retry with exponential back‑off (2 attempts).
- Return any 2xx status code to acknowledge delivery. You can see the history of events under Message Attempts in your webhook.