convex-http-actions

Build HTTP endpoints in Convex for webhooks, API routes, and external integrations.

1|Updated Feb 19, 2026
One-click install
npx skills add https://github.com/kausthubh-coder/kriyan-web --skill convex-http-actions-kausthubh-coder
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: convex-http-actions
Source: https://github.com/kausthubh-coder/kriyan-web/tree/main/.cursor/skills/convex-http-actions
Command: npx skills add https://github.com/kausthubh-coder/kriyan-web --skill convex-http-actions-kausthubh-coder

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires stripe, svix.

What problem does it solve? Exposing Convex applications to external services requires custom HTTP endpoints for webhooks, API routes, and file uploads, which involves routing, authentication, CORS, and signature verification that are easy to get wrong. ## Core Features & Use Cases - HTTP Router Setup: Define GET, POST, and OPTIONS routes with path and pathPrefix matching using httpRouter and httpAction. - Webhook Handling: Receive and verify webhooks from Stripe, GitHub, and Clerk with signature validation in Node.js actions. - Request Processing: Parse JSON bodies, form data, raw bytes, query parameters, and headers, then call internal queries and mutations. - Use Case: A SaaS app needs to sync Clerk users into its Convex database. The skill guides creating a /webhooks/clerk endpoint that verifies Svix signatures and runs internal mutations for user.created, user.updated, and user.deleted events. ## Quick Start Create a Convex HTTP endpoint that receives a Stripe webhook, verifies its signature, and processes the checkout.session.completed event.

Frequently Asked Questions about convex-http-actions

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

FAQPage Schema
How do I create an HTTP endpoint in Convex?▼

Define routes in convex/http.ts using httpRouter and httpAction from convex/server. Each route specifies a path, method, and handler that receives the request and returns a Response object, then export the router as default.

How to verify Stripe webhook signatures in Convex?▼

Pass the raw request body and stripe-signature header from the HTTP action to an internal Node.js action. There, use stripe.webhooks.constructEvent with your webhook secret to verify the signature before processing events.

Can Convex HTTP actions call database queries and mutations?▼

Yes, HTTP actions can call ctx.runQuery and ctx.runMutation to interact with the database. Use internal functions rather than public ones so these operations are not exposed directly to clients.

How do I handle CORS in Convex HTTP endpoints?▼

Add an OPTIONS route for the same path that returns a 204 response with Access-Control-Allow-Origin, Methods, and Headers. Include the same CORS headers on the actual endpoint responses so browsers accept them.

Why does my Convex webhook endpoint return errors?▼

Common causes include missing signature headers, parsing the body as JSON instead of raw text before verification, or missing environment variables for secrets. Validate headers first and read the body with request.text() for signature checks.