Help
API & MCP menu

API & MCP

Webhooks

NorthQuest posts events to your URL, for Zapier, Make or your own code.

Add a webhook in Settings › Webhooks, or subscribe through the API.

Events

reply.received, lead.interested, campaign.finished, mailbox.disconnected.

Subscribe through the API

  • webhooks.subscribe (write key): {"url":"https://…","events":["reply.received"],"description":"…"}. Returns id and secret. The secret is shown once.
  • webhooks.unsubscribe (write key): {"id":"…"}
  • webhooks.list (read key): your webhooks, without secrets.

Zapier and Make call subscribe when a Zap or scenario turns on, and unsubscribe when it turns off.

What we send

Each event is a JSON POST:

{"id":"<event id>","type":"reply.received","createdAt":"…","workspaceId":"…",
 "data":{"conversationId":"…","leadEmail":"…","leadName":"…","subject":"…","messageId":"…","from":"…","text":"…","receivedAt":"…"}}
  • lead.interested data: conversationId, leadEmail, leadName, subject, label.
  • campaign.finished data: campaignId, name.
  • mailbox.disconnected data: mailboxId, email.

Check the signature

NorthQuest-Signature is t=<unix seconds>,v1=<hex>. The hex is HMAC-SHA256 of <t>.<raw body> with your secret. Reject a t older than 5 minutes.

NorthQuest-Event-Id stays the same on retries. Skip any id you already handled.

Delivery

  • Answer with any 2xx within 10 seconds. Redirects are not followed.
  • Failures are retried after 1, 5 and 30 minutes, then 2, 6, 12 and 24 hours. After 8 tries the event is dropped.
  • A webhook pauses after 3 days without a success, or after 3 dropped events in a row. Resume it in Settings › Webhooks.
  • Only public https:// addresses work, on port 443, 8443 or above 1024.
  • Events arrive within about 2 minutes. Up to 25 webhooks per workspace.
Still stuck? Ask NorthQuest AI in the app, or open Help & support to reach a person.