Signed webhooks
Meta, WhatsApp, Twilio and Dodo Payments callbacks are rejected unless their signature verifies. Billing changes apply only on a verified event.
Security
Every request passes the same checks: a verified signature or session, a workspace it is allowed to touch, and a rate limit. Here is what that means in practice.
Controls
This page lists controls that ship in the product. When something changes, this page changes with it.
Meta, WhatsApp, Twilio and Dodo Payments callbacks are rejected unless their signature verifies. Billing changes apply only on a verified event.
Every API route requires a signed-in caller. Sign-in runs on Clerk, the same account the MCP server uses, so there are no long-lived API keys to leak.
Each request checks that the caller owns or belongs to the workspace it touches. Leads, calls and messages never cross organizations.
Admin, sales manager and sales rep roles, with seat limits set by your plan.
AI and calling endpoints are throttled per user, which caps runaway cost and abuse.
Call recordings sit in S3 and play through signed URLs, not public links.
Every campaign email carries an unsubscribe link, and unsubscribed addresses are suppressed from future sends.
Typecheck, the full test suite and a production build gate every merge to main.
AI and your data
AI features run on Google Gemini and work only within your workspace. Drafts wait for a rep, merges wait for approval, and commitments are never marked done by an agent.
Start today
Start a workspace and import from your current CRM or a CSV. Duplicates are flagged before anything is created.