Paste a Sentry webhook JSON payload (issue alert, metric alert, comment, installation) and get a TypeScript interface for your handler — projects, issues, metadata, all typed.
Sentry's webhook envelope is consistent (action, actor, data, installation) but the data payload varies sharply by event type — issue.created, issue.resolved, error.created, comment.created, metric_alert.critical, etc. Each carries a different inner object: issue carries metadata.type / metadata.value / metadata.filename for the error class, project info, levels, and a string-typed count. Generating a TypeScript interface from a real webhook captures the exact variant your integration receives.
Use the result in your /sentry-webhook endpoint to narrow on action and event type, then dispatch into typed handlers. Sentry's resource_link spec and the verifying X-Sentry-Hook-Signature header pair with the generated types to give you a typed-and-authenticated webhook in fewer than fifty lines.