Zapier is the path of least resistance if your team is already paying for it. K3X plugs in through Zapier's built-in Webhooks by Zapier app — no extra integration to install.
Two directions to know.
Zapier → K3X. A Zap fires an HTTP request to your K3X Agent's webhook URL. Use the Webhooks by Zapier → POST action.
K3X → Zapier. K3X POSTs to a Zap when something happens in your CRM. Use Webhooks by Zapier → Catch Hook as the trigger.
Worked example: Calendly booking becomes a K3X lead.
Someone books a discovery call via Calendly. You want K3X to create a lead from the invitee, log the meeting on it, and kick off an Agent that does pre-call research.
Step 1 — Build the Agent in K3X.
In K3X, create a new Agent: "When a new discovery call is booked, find or create the lead, log the meeting on it, and draft a pre-call research note covering the company, recent news, and likely pain points." Turn on the Webhook trigger and copy the URL — something like https://api.k3x.ai/v1/agents/agt_8f4a2/webhook. Generate a signing secret in the Agent's webhook settings if you want to enforce auth.
Step 2 — Build the Zap trigger.
In Zapier, click Create Zap. For the trigger, search for and pick Calendly → Invitee Created. Connect your Calendly account, pick the right event type, and run the test so Zapier captures a real invitee payload. You'll see fields like invitee.name, invitee.email, event.start_time, etc. in the test output.
Step 3 — Add the Webhooks by Zapier action.
Add an action step. Search for Webhooks by Zapier and pick the POST event. Configure it:
URL: paste your Agent's webhook URL
Payload type: JSON
Data: map Calendly fields to keys your Agent will use. Click each value cell and pick from the Calendly step's output. For example:
source → calendly-discovery-call
name → {{Invitee Name}}
email → {{Invitee Email}}
meeting_at → {{Event Start Time}}
meeting_type → {{Event Type Name}}Headers: if you set a signing secret, add X-K3X-Signature. Zapier doesn't have built-in HMAC; the easiest fix is a Code by Zapier step before this one that computes the signature, then pull its output into the header.
Step 4 — Test, then publish.
Click Test action. Zapier will POST a request — you want a 200 response from K3X and a confirmation that the body looked sane. Open K3X, find the Agent's run history, and confirm the run kicked off with the expected payload. If it did, hit Publish on the Zap and you're live.
Going the other way: K3X → Zapier.
Same shape, mirrored. In Zapier, start a new Zap with Webhooks by Zapier → Catch Hook as the trigger. Zapier gives you a unique URL like https://hooks.zapier.com/hooks/catch/12345/abc…. Copy it. In K3X, open the relevant Agent, add an outbound webhook action, pick your event, and paste the URL. Trigger the event once so Zapier captures a sample payload — without a sample, Zapier can't map fields downstream. Build out the rest of the Zap, then turn it On. (Important: the Catch Hook URL only receives events when the Zap is on, not when it's just saved.)
Recipes to try.
Gmail → K3X. When a starred email comes in from outside your domain, POST to a K3X Agent that creates or updates the matching lead and logs the email thread.
Intercom → K3X. When a sales-qualified conversation is tagged, POST to K3X to create a lead with the conversation summary attached.
K3X → Notion. When a deal stage changes, POST to a Zap that updates the corresponding Notion deal card.
K3X → HubSpot. Keep a legacy HubSpot instance in sync — when a K3X lead is created or updated, mirror it to HubSpot.
Troubleshooting.
K3X returns 401. Either your signing secret is wrong or the signature header isn't being computed correctly. The Code by Zapier step is the usual suspect — log the signature it produces and compare against what K3X expects.
K3X returns 422. The JSON Zapier sent doesn't match what your Agent prompt expects. Open the failed task in Zapier's history and inspect the actual Data sent field.
Catch Hook isn't firing. The Zap must be turned On, not just saved — the test URL in the editor is separate from the production URL.
Zap fires too many times. Add a Zapier Filter step between the trigger and the K3X POST so only events that match your criteria reach K3X.
Next: Connect K3X with n8n.io →