Zapier, Make and n8n
Any automation tool that can receive a webhook and send an HTTP request works with Vercatus: the webhook events are the triggers, the API routes are the actions. The recipes below use Zapier’s names; Make (Webhooks, Custom webhook and HTTP, Make a request) and n8n (Webhook and HTTP Request nodes) have the same two building blocks.
Triggers: Vercatus events
Section titled “Triggers: Vercatus events”- In Zapier, start a Zap with Webhooks by Zapier, Catch Raw Hook and copy its URL. (Catch Raw Hook keeps the body byte for byte, which the signature needs.)
- In Vercatus, Settings, API & webhooks, Add endpoint: paste the URL and pick the events. Copy the signing secret.
- Send a test in Vercatus; Zapier now knows the fields.
- Optionally, a Code by Zapier step verifies the
x-vercatus-signatureheader with the secret (how) and stops the Zap when it does not match.
| Event | Use it to |
|---|---|
run.completed |
post the run’s numbers to a channel, a sheet or a CRM record; data.change says what changed since the last run |
run.failed |
open a ticket for whoever owns the site’s access |
finding.new_severe |
create a task per critical or high finding (data.findings[]: key, title, severity, category) |
fix.verified |
close the task a finding’s fix came from (data.confirmed[] and data.refuted[]) |
access.changed |
alert when an AI crawler is newly refused or served (data.sentences[] are ready to post) |
citation.changed |
tell the content owner the site dropped out of an answer (data.dropped[] with the domains cited instead) |
traffic.changed |
flag a fall in AI-referred sessions or a crawler gone quiet |
prompt.changed |
follow the answers to a question you track word for word, on each engine |
engine.drift |
tell the team an engine changed what it rewards, with the pages it touches |
competitor.changed |
tell sales or marketing a competitor passed the site |
Every delivery carries event, deliveryId (the same on a retry: use it to skip duplicates), org, site
and run (with a link to the run in the workspace) beside data.
Actions: the API
Section titled “Actions: the API”Use Webhooks by Zapier, Custom Request with the header Authorization: Bearer ca_… (an
API key: read for lookups, write for changes, limited to the site the Zap is for)
and Content-Type: application/json. Base address https://app.vercatus.com/api.
| Action | Request | Scope |
|---|---|---|
| Start a change run | POST /workflows with { "url": "https://www.example.com", "kind": "light" } |
write |
| Start a full run | the same with "kind": "full" (counts against the plan’s full runs) |
write |
| Answer Share, leaderboard, topics and next plays | GET /sites/{id}/standing?days=28 |
read |
| A site’s plays | GET /sites/{id}/plays?status=planned |
read |
| Plan a play, set its owner or due date | PATCH /sites/{id}/plays/{playId} with { "status": "planned", "ownerId": "…", "due": "2026-11-01" } |
write |
| Hand a play to a tracker | POST /sites/{id}/plays/{playId}/handoff with { "tool": "linear" } |
write |
| Run a play’s acceptance check now | POST /sites/{id}/plays/{playId}/check |
write |
| Results: Answer Share since the start, verdicts and wins | GET /sites/{id}/results?days=28 |
read |
| Add a question to a topic | POST /sites/{id}/topics/{topicId}/questions with { "text": "…" } |
write |
| Look up a run | GET /workflows/{id} |
read |
| Change an audit finding’s status | PATCH /findings/{id} with { "status": "accepted", "note": "…" } |
write |
| Weekly citation rows for a dashboard | GET /export/visibility.json?siteId=…&from=…&to=… |
read or export |
The full list with every route’s scope is the API reference; the same as an OpenAPI
document for tools that import one: https://app.vercatus.com/api/openapi.json.
Recipes
Section titled “Recipes”- New critical finding → Jira issue → Slack: trigger
finding.new_severe; filter onseverityiscritical; actionPOST /findings/{id}/ticketwith{ "provider": "jira" }; post the returned issue link to Slack. - Monday plays to a channel: schedule weekly; action
GET /sites/{id}/standing; postnext[], the top plays, with their expected gains. - Deploy → change run: trigger your deploy tool’s webhook; action
POST /workflowswith the site’s address and"kind": "light". (Vercatus also takes deploy hooks directly: CMS and deploy webhooks.) - Weekly numbers to a sheet: schedule weekly; action
GET /sites/{id}/standing; one row with your Answer Share, its range and the leader’s, into Google Sheets. - Dropped out of an answer → brief the writer: trigger
citation.changed; for eachdata.dropped[], create a task with the question, the engine and the domains cited instead.
Keys used by automations are listed under Settings, API & webhooks with their last use; rotate one before it expires and the old one keeps working for the grace period you choose.