feat(triggers): add Vercel webhook triggers with automatic registration#3988
feat(triggers): add Vercel webhook triggers with automatic registration#3988waleedlatif1 merged 5 commits intostagingfrom
Conversation
PR SummaryMedium Risk Overview Introduces a new Reviewed by Cursor Bugbot for commit ee040aa. Configure here. |
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Greptile SummaryThis PR adds 8 Vercel webhook triggers (deployment created/ready/error/canceled, project created/removed, domain created, and a generic all-events trigger) with automatic webhook lifecycle management — registration on trigger save and cleanup on trigger removal. The implementation closely follows established provider patterns from Ashby, Attio, and others: HMAC-SHA1 signature verification via
Confidence Score: 5/5Safe to merge — the integration is functionally complete, all prior critical issues are resolved, and remaining findings are minor defensive-coding suggestions All remaining findings are P2. HMAC auth, auto-registration, and cleanup are correctly implemented following the codebase's established provider patterns. The empty-string secret fallback is the only item worth addressing before shipping but does not block merge.
Important Files Changed
Sequence DiagramsequenceDiagram
actor User
participant Sim
participant VercelAPI as Vercel API
participant VercelEvents as Vercel Event System
User->>Sim: Configure trigger (apiKey, teamId, projectIds)
Sim->>VercelAPI: POST /v1/webhooks (events, url, projectIds)
VercelAPI-->>Sim: { id: webhookId, secret: webhookSecret }
Sim->>Sim: Store externalId + webhookSecret in providerConfig
Note over Sim,VercelEvents: Later, when a Vercel event occurs...
VercelEvents->>Sim: POST /webhook-url (event payload + x-vercel-signature)
Sim->>Sim: Verify HMAC-SHA1 signature (webhookSecret + raw body)
alt Signature invalid
Sim-->>VercelEvents: 401 Unauthorized
else Signature valid
Sim->>Sim: Extract payload fields (deployment, project, team, domain...)
Sim->>Sim: Execute workflow with formatted input
Sim-->>VercelEvents: 200 OK
end
Reviews (6): Last reviewed commit: "fix(triggers): add paramVisibility user-..." | Re-trigger Greptile |
|
@greptile |
|
@cursor review |
|
@greptile |
|
@cursor review |
|
@greptile |
|
@cursor review |
…ck for Vercel webhooks Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
@greptile |
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit c637317. Configure here.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
@greptile |
|
@cursor review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit ee040aa. Configure here.
…on (#3988) * feat(triggers): add Vercel webhook triggers with automatic registration * fix(triggers): add Vercel webhook signature verification and expand generic events * fix(triggers): validate Vercel webhook ID before storing to prevent orphaned webhooks * fix(triggers): add triggerId validation warning and JSON parse fallback for Vercel webhooks Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(triggers): add paramVisibility user-only to Vercel apiKey subblock Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Summary
Type of Change
Testing
Tested manually
Checklist