company logo

Help center

Go to K3X
All collectionsIntegrations and AutomationWebhooks in K3X: the basics

Webhooks in K3X: the basics

Every agent has its own webhook URL. Post JSON to start a run, add a webhook step to push results out.

Webhooks are how K3X talks to other tools in real time. In K3X they are built around agents: each agent can receive a webhook to start a run, and an agent step can push a webhook out to any URL.

Inbound: start an agent from any tool

Every agent has its own secure webhook URL in the form https://api.k3x.ai/webhooks/agents/<id>. Anything that can send an HTTP POST with a JSON body can use it: Make, Zapier, n8n, a form provider, Stripe, a script.

  1. Open the Agents tab and create an agent, or open an existing one.

  2. In the agent's Goal, describe what should happen when data arrives, for example "When a demo request comes in by webhook, find or create the company by website, add the person, create a deal in Demo Booked and assign the owner."

  3. Add Webhook as a trigger.

  4. Open the Webhook tab on the agent and copy the URL.

  5. Paste the URL into the other tool and send a test POST.

  6. Check the agent's Activity tab for the run.

The agent reads the payload fields by name. If your JSON has "email", "company" and "notes", you can refer to them that way in the goal and steps. Keep keys simple and consistent, and send Content-Type: application/json.

A sample payload:

{"source": "website-form", "name": "Jane Doe", "email": "[email protected]", "company": "Acme Roofing", "website": "acmeroofing.com", "notes": "Wants a demo next week"}

Treat the URL like a password. Do not post it in public channels or commit it to a public repository. The Webhook column in the Agents list shows which agents have the webhook switched on.

Outbound: push data to another tool

To tell the rest of your stack what K3X did, add a step to the agent that posts to a URL, for example "Send a webhook to https://hook.example.com/k3x with the company name, website, deal stage and a one-line summary." The agent delivers a JSON payload with those fields when it reaches that step.

The agent's Deliveries tab lists every outbound delivery with its status, so you can see what was sent and whether the receiving tool accepted it.

Which direction do you need?

  • Data created elsewhere should appear in K3X: inbound. Form submission, booked meeting, payment, new row in a sheet.

  • Something K3X did should appear elsewhere: outbound. Post a Slack message, append a row, update a legacy CRM.

  • Both: one agent can receive, act and push back the result.

Naming in payloads

The K3X API and MCP tools call companies leads and people contacts. You will see those words in tool names such as create_lead and in outbound payloads. They mean the same records you see in the Companies and People tabs.

Troubleshooting

  • No run in Activity: the request did not arrive. Check the URL, the method (POST) and that the sending scenario or Zap is switched on.

  • Run failed: the request arrived but the agent could not complete a step. Open the run in Activity; the error names the step. Usually a field name in the goal does not match a key in the payload.

  • Outbound not received: check the Deliveries tab for the status, then confirm the destination URL is public HTTPS and the receiver is active.

Credits

Receiving a webhook is free. The run it starts spends AI credits from your pool like any other agent run.

Related

  • Connect K3X with Make.com

  • Connect K3X with Zapier

  • Connect K3X with n8n

  • Which integrations does K3X support?

Did this answer your question?
😞
😐
😁