Pipe leads in via Zapier (or any webhook tool)
Send leads from any Zap, Make scenario, or n8n workflow into Compass with a single POST.
Compass exposes a single webhook endpoint that any automation tool can POST a lead to. The payload shape is flexible, so you don't have to teach Zapier (or Make, or n8n) a particular schema, whatever field names the upstream tool sends, the Compass normalizer figures it out.
The endpoint
POST https://getcompass.studio/api/webhooks/website-leadAuthentication is an API key in the Authorization header:
Authorization: Bearer cpsk_YOUR_API_KEYGenerate an API key
Open Settings → Integrations and click "Generate key". Name it after the tool that'll use it ("Zapier", "Make scenario", "Squarespace site") so you can tell your keys apart later. The full key is shown once; Compass only stores its hash, so copy it into your tool right away. Each key is tied to your workspace, so the payload never needs a separate workspace_id field. Revoke individual keys any time without affecting the others.
Zapier setup
- Create a new Zap. Pick whatever you like as the trigger, a Typeform submission, a Google Sheet row, a new Calendly invite, a Facebook Lead Ads lead, anything.
- Add a "Webhooks by Zapier" → "POST" action.
- URL:
https://getcompass.studio/api/webhooks/website-lead. - Payload type: JSON.
- Data: map whatever fields the trigger gives you to
name,email,phone, etc. You can also include any extra fields, they'll land on the lead's activity log so nothing is lost. - Headers:
Authorization: Bearer cpsk_YOUR_API_KEY. - Test the action, Compass returns the new lead's ID on success.
Sample request (curl)
curl -X POST https://getcompass.studio/api/webhooks/website-lead \
-H "Content-Type: application/json" \
-H "Authorization: Bearer cpsk_YOUR_API_KEY" \
-d '{
"name": "Sam Smith",
"email": "sam@example.com",
"phone": "0412 345 678",
"source": "website",
"notes": "Saw your work at the gallery!"
}'Make.com (formerly Integromat) and n8n
Same endpoint, same auth. Both tools have a generic "HTTP Request" / "HTTP" module, point it at the URL, set the method to POST, set the auth header, and pass whatever JSON shape works for your scenario.
Deduplication
Compass dedups inbound webhook leads by email within a 24-hour window. If the same email arrives twice in a day, the second submission is logged as a duplicate against the existing lead rather than creating a second row.
Common issues
- 401 unauthorized, your
Authorizationheader is missing, malformed, or the API key has been revoked. Make sure the value starts withBearer cpsk_and matches an active key in Settings → Integrations. - 404 unknown_workspace, the workspace tied to the key no longer exists. Generate a fresh key from your current workspace.
- 429 rate_limited, you've sent more than 60 requests in a minute from the same IP. Back off and retry after the
Retry-Afterheader.