Skip to content

Add Svix, Linear, PagerDuty and Twilio platform support; proxy URL handling and verifier enhancements#52

Open
Prateek32177 wants to merge 4 commits intomainfrom
codex/add-webhook-signature-verification-for-providers-3hr9dy
Open

Add Svix, Linear, PagerDuty and Twilio platform support; proxy URL handling and verifier enhancements#52
Prateek32177 wants to merge 4 commits intomainfrom
codex/add-webhook-signature-verification-for-providers-3hr9dy

Conversation

@Prateek32177
Copy link
Contributor

Motivation

  • Expand supported platforms to include svix, linear, pagerduty, and twilio and handle edge cases for proxied runtimes and Twilio URL canonicalization.

Description

  • Added new platform algorithm configs and types for svix, linear, pagerduty, and twilio, updating platformAlgorithmConfigs, WebhookPlatform, and WebhookPlatformKeys.
  • Enhanced request reconstruction to respect x-forwarded-proto and x-forwarded-host in toWebRequest so runtime requests behind proxies/CDNs use the public URL.
  • Improved the algorithm-based verifier to support header aliases, comma/prefixed signature variants, Twilio URL overrides (twilioBaseUrl), Linear replay-window checks, Twilio bodySHA256 validation, and Svix id/timestamp aliases.
  • Updated README to list new platforms and add a Twilio troubleshooting note, and extended src/test.ts with helper signature creators and tests for PagerDuty, Linear, Svix, and Twilio.

Testing

  • Ran the verification test harness via node src/test.ts which includes the full webhook verifier smoke tests and the newly added PagerDuty/Linear/Svix/Twilio scenarios, and all checks passed.
  • Existing platform verification scenarios (Stripe, GitHub, Clerk, etc.) were exercised by the same test run and continued to pass.
  • No automated test failures were observed after these changes when running the repository test script (npm test).

Codex Task

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant