vercel-webhooks

Verify SHA-1 HMAC signatures on incoming Vercel webhook payloads.

79|11|Updated Jan 30, 2026
One-click install
npx skills add https://github.com/hookdeck/webhook-skills --skill vercel-webhooks
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: vercel-webhooks
Source: https://github.com/hookdeck/webhook-skills/tree/main/skills/vercel-webhooks
Command: npx skills add https://github.com/hookdeck/webhook-skills --skill vercel-webhooks

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill enables your applications to securely receive and verify Vercel webhooks by validating the x-vercel-signature header against the raw request body using HMAC-SHA1.

Core Features & Use Cases

  • Signature verification: compute a timing-safe HMAC-SHA1 signature with VERCEL_WEBHOOK_SECRET to authenticate incoming webhook payloads.
  • Event handling: parse and respond to common Vercel events such as deployment.created, deployment.succeeded, deployment.ready, deployment.error, deployment.canceled, deployment.promoted, project.created, project.removed, project.renamed, domain.created, integration-configuration.removed, and attack.detected.
  • Local testing & examples: provides runnable examples across Express, Next.js, and FastAPI to accelerate integration and debugging.

Quick Start

Set up a webhook endpoint (e.g., /webhooks/vercel) that reads the raw JSON body, verifies the signature using VERCEL_WEBHOOK_SECRET, and processes event payloads. Use the included examples in this skill for Express, Next.js, and FastAPI to validate your setup.

Frequently Asked Questions about vercel-webhooks

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a Vercel webhook signature in my server application?

To verify a Vercel webhook signature, compute a timing-safe HMAC-SHA1 hash using your VERCEL_WEBHOOK_SECRET against the raw request body and compare it to the x-vercel-signature header to authenticate payloads.

What Vercel deployment and project events can I handle with webhooks?

Vercel webhook events you can handle include deployment.created, deployment.succeeded, deployment.ready, deployment.error, deployment.canceled, deployment.promoted, project.created, project.removed, and project.renamed.

Can I use this Vercel webhook verification with FastAPI, Next.js, and Express?

Yes, you can verify Vercel webhooks using FastAPI, Next.js, and Express. The Skill provides runnable examples across these frameworks to help you validate your secure endpoint setup.

Why does my Vercel webhook signature verification fail on parsed JSON bodies?

Vercel webhook signature verification fails on parsed JSON because the HMAC-SHA1 computation requires the raw request body. You must enforce raw-body access before parsing to validate the x-vercel-signature header.

How do I prevent timing attacks when validating Vercel webhook payloads?

To prevent timing attacks during Vercel webhook validation, use timing-safe comparisons when checking the computed HMAC-SHA1 signature against the x-vercel-signature header.

Do I need a VERCEL_WEBHOOK_SECRET to process deployment events?

Yes, you need the VERCEL_WEBHOOK_SECRET to process deployment events. It is required to compute the HMAC-SHA1 signature that authenticates incoming webhook payloads from Vercel.