Webhooks
Receive real-time HTTP callbacks when memories finish processing, fail, or other events occur.
Webhooks let you receive HTTP callbacks when events happen in your project — no polling needed. Subscribe to events like memory.completed and MemoryKit will send a POST request to your endpoint.
Quick setup
Create your endpoint
Your server must accept POST requests and return 2xx within 10 seconds.
Register the webhook
Tell MemoryKit where to send events and which events you care about.
Verify signatures
Every delivery is signed with HMAC-SHA256 so you can verify it came from MemoryKit.
Register a webhook
The signing secret is only returned when you create the webhook. Store it securely — you'll need it to verify signatures.
Event types
| Event | Description |
|---|---|
memory.completed | Memory processing finished successfully |
memory.failed | Memory processing failed |
* | Subscribe to all current and future events |
Signature verification
Every delivery includes two headers:
| Header | Description |
|---|---|
X-MemoryKit-Signature | HMAC-SHA256 hex digest of the request body |
X-MemoryKit-Event | Event type (e.g., memory.completed) |
Test delivery
Send a test event to verify your endpoint is working:
Manage webhooks
Retry behavior
If your endpoint returns a non-2xx status or times out (>10s), MemoryKit retries with exponential backoff:
| Attempt | Delay |
|---|---|
| 1st retry | ~1 min |
| 2nd retry | ~5 min |
| 3rd retry | ~30 min |
After repeated failures, the webhook's failure_count increases. After sustained failures, it may be automatically deactivated.
Check webhook.failure_count and webhook.active to monitor webhook health. Re-activate deactivated webhooks by creating a new one.