HTTP actions and .convex.site
Webhooks and public HTTP hit .convex.site; the React app uses .convex.cloud.
Difficulty 3/5
Plain English
Stripe, Meta, WhatsApp send POST requests to URLs on your deployment's .convex.site host. You register routes in convex/http.ts. Handlers verify signatures, then call mutations.
Analogy
Loading dock vs showroom door — same building, different entrances.
Agentify CRM
Inbound channel webhooks → http routes → mutations on conversations/messages.
Go deeper
External POST = .site.
Common mistakes
- Pointing Meta at .cloud.
- Heavy work in httpAction without queueing.
AI-agent trap
Exposing mutations directly on HTTP without verification.
Summary
Keep handlers thin; idempotent writes for retries.
Confidence: