Skip to content

feat: orb webhook secret alt#160

Merged
ignaciodob merged 2 commits into
mainfrom
ignaciodobronich/billing-2418-rotate-orb_webhook_secret-in-secretsorb-sync-engine
Jun 11, 2026
Merged

feat: orb webhook secret alt#160
ignaciodob merged 2 commits into
mainfrom
ignaciodobronich/billing-2418-rotate-orb_webhook_secret-in-secretsorb-sync-engine

Conversation

@ignaciodob

@ignaciodob ignaciodob commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds ORB_WEBHOOK_SECRET_ALT optional env var
  • Webhook signature verification tries the primary secret first, falls back to the alt before rejecting
  • Follows the same dual-key pattern already used by API_KEY_SYNC / API_KEY_SYNC_ALT

Manual testing

  1. Run the app locally with ngrok pointing at port 80
  2. Create two webhook endpoints in the Orb dashboard (test mode), both pointing to your ngrok /webhooks URL
  3. Set ORB_WEBHOOK_SECRET to the first endpoint's signing secret and ORB_WEBHOOK_SECRET_ALT to the second's
  4. Fire a test event from each endpoint - both should pass signature verification
  5. Disable the first webhook in the Orb dashboard, events should still be processed in the second webhook

@ignaciodob ignaciodob self-assigned this Jun 10, 2026
@ignaciodob ignaciodob changed the title feat: support dual webhook secret for zero-downtime rotation feat: orb webhook secret alt Jun 10, 2026
@ignaciodob ignaciodob requested a review from kevcodez June 10, 2026 20:46

@kevcodez kevcodez left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's add an integration test verifying this works?

@ignaciodob ignaciodob merged commit 2a657aa into main Jun 11, 2026
1 check passed
@ignaciodob ignaciodob deleted the ignaciodobronich/billing-2418-rotate-orb_webhook_secret-in-secretsorb-sync-engine branch June 11, 2026 14:51
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.15.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

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.

2 participants