Summary
When someone buys or sells a creator's keys, the creator only finds out if they happen to refresh the page. Creators need a way to register a webhook URL so the server notifies them in real time whenever a trade event involving their keys is indexed. This lets creators integrate AccessLayer events into their own tools, bots, or notification pipelines.
Scope
- Add
POST /creators/:id/webhooks to register a webhook URL for that creator's trade events
- Requires wallet signature verification to confirm the caller is the creator
- Accepts:
{ callback_url, events: ['buy', 'sell'] } to allow filtering by event type
- Add
DELETE /creators/:id/webhooks/:webhook_id to remove a registration
- Add
GET /creators/:id/webhooks to list active webhooks (creator auth required)
- On each indexed trade event, POST to all registered callback URLs with:
{ event_type, creator_id, buyer_or_seller_address, amount, price, fee_paid, timestamp }
- Failed delivery retried up to 3 times with exponential backoff; after exhaustion the webhook is flagged as failing but not deleted
Acceptance Criteria
Coordinate on Telegram
Summary
When someone buys or sells a creator's keys, the creator only finds out if they happen to refresh the page. Creators need a way to register a webhook URL so the server notifies them in real time whenever a trade event involving their keys is indexed. This lets creators integrate AccessLayer events into their own tools, bots, or notification pipelines.
Scope
POST /creators/:id/webhooksto register a webhook URL for that creator's trade events{ callback_url, events: ['buy', 'sell'] }to allow filtering by event typeDELETE /creators/:id/webhooks/:webhook_idto remove a registrationGET /creators/:id/webhooksto list active webhooks (creator auth required){ event_type, creator_id, buyer_or_seller_address, amount, price, fee_paid, timestamp }Acceptance Criteria
eventsfilter correctly limits which event types trigger the webhookCoordinate on Telegram