SaaS webhook event catalog.
Every webhook event emitted by 30 team-ops SaaS products, structured, searchable, and source-linked. 1,119 events across Slack, GitHub, Stripe, HubSpot, Linear, Notion, and 24 more.
Built so AI agents writing integration code can ground their answers in current schemas instead of hallucinating fields from stale docs. Browse a vendor below, or load the full catalog as a HuggingFace dataset.
Why this exists
Every integration starts with the same problem: pulling the full event list for a vendor, figuring out which auth method to verify, what payload fields you actually receive, and how retries work. Each vendor publishes that data in a different shape, on a different page, with a different level of detail.
We extracted all of it into one schema. Field names and types, not example payloads.
One row per (vendor, event_name). CC-BY-4.0. Refreshed monthly.
All 30 vendors
Collaboration
- Asana29 events
- ClickUp28 events
- Discord25 events
- Loom10 events
- Microsoft Teams15 events
- Notion5 events
- Slack113 events
- Zoom24 events
Dev tools
- GitHub75 events
- Jira (Cloud)25 events
- Linear46 events
Payments
- Stripe231 events
CRM
- Attio15 events
- Close20 events
- HubSpot58 events
- Pipedrive20 events
- Salesforce55 events
Support
- Freshdesk18 events
- Front20 events
- Help Scout13 events
- Intercom94 events
- Zendesk57 events
Scheduling
- Calendly4 events
Ops
- PagerDuty18 events
Communications
- Twilio16 events
Marketing
- Mailchimp6 events
ATS
- Ashby21 events
- Greenhouse29 events
HRIS
How to use it
Browse here. Each vendor page lists every event with payload schema and a stable
anchor link, like /saas-webhooks/stripe/#invoice.payment_succeeded. Share the anchor.
Load it programmatically.
from datasets import load_dataset
ds = load_dataset("automatelab/saas-webhook-catalog")
slack_events = ds["train"].filter(lambda r: r["vendor"] == "slack")
hmac_events = ds["train"].filter(lambda r: r["auth_method"].startswith("hmac-"))
Ground an LLM. Stream relevant rows into your agent's context at integration time. The schema field is a JSON Schema Draft 2020-12 fragment, ready for validation or for generating typed client code.
What this catalog is not
- Not a replacement for vendor docs. The
docs_urlper row is the source of truth. - Not example payloads. We extract field names and types, not example bodies.
- Not real-time. Monthly refresh cadence. Check vendor docs for breaking changes.
Contribute
Schema corrections, missing events, vendor additions: open an issue on GitHub or in the HuggingFace dataset discussions. v1.1 will close the verification gaps flagged on six vendor pages.