webhooks MCP tool.
Webhooks run on OpenNous Cloud. A self-hosted instance returns
403 cloud_only_feature.Set one up
secret. It is shown once. Store it next to your receiver. If you lose it, rotate it with PATCH /v2/webhooks/{id} and rotate_secret: true.
Then send a test event. It is built on one of your real accounts, so you see the exact shape your handler will receive.
Any key can list, create and test webhooks. Changing or deleting one needs an admin key. A read-only key cannot create or test.
Events
GET /v2/webhooks/events returns this catalog.
deal.won and deal.lost arrive once the deal ledger learns of the close from your CRM. Expect them hours after the close, sometimes later.
Legacy interaction events
Six older events carry a person snapshot only, in a different shape. They areinteraction.email_received, interaction.email_bounced, interaction.linkedin_connection_accepted, interaction.linkedin_message_received, interaction.meeting_scheduled and interaction.meeting_held.
Payload
Every record event has the same envelope.api_version changes when the envelope changes shape, so you can branch on it.
peoplelists the person the event is about first, then the most recently active, up to 10.dealis the deal the event names. Otherwise it is the account’s open deal closing soonest, else its latest. It isnullwhen the account has no deal.account.icp.tieristier_1,tier_2,tier_3ornot_icp.evidence.claimsholds up to 15 key account claims with their confidence and freshness (fresh,aging,suspectorexpired).evidence.factsholds up to 8 facts with their source.- A webhook goes to a shared destination, so the payload carries only what every member can read. It never includes anything derived from one person’s private mail.
Delivery
WePOST the JSON body to your URL with these headers.
- Respond with any
2xxwithin 10 seconds to mark the event delivered. - A
4xxother than408or429is permanent. We stop and mark itfailed. - A
5xx,408,429, timeout or network error is retried after 1 minute, 5 minutes, 30 minutes, 2 hours and 6 hours. After 6 attempts, about 9 hours, it is markedfailed. - Each event goes to each webhook at most once. Still treat
X-Nous-Event-Idas an idempotency key in your receiver. - History is not replayed. Events older than 48 hours are not sent, or 45 days for deal closes. A new webhook receives nothing from before the week it was created.
GET /v2/webhooks/{id}/deliveries.