REST API and webhooks

The API is included for every workspace. Create a key under Settings → API keys and send it as Authorization: Bearer sd_live_....

List leads

curl -H "Authorization: Bearer $KEY" "https://readybuyerfinder.com/api/v1/leads?status=approved&since=2026-10-01T00:00:00Z"

Returns { "leads": [ { "id", "status", "score", "person", "company", "why_now", "message" } ] }, newest first, up to 100 leads. You can filter with status, since and min_score.

Mark a lead as taken

curl -X POST -H "Authorization: Bearer $KEY" https://readybuyerfinder.com/api/v1/leads/LEAD_ID/ack

Send your own signals

curl -X POST -H "Authorization: Bearer $KEY" -H "Content-Type: application/json" https://readybuyerfinder.com/api/v1/signals -d '{"type":"engagement","title":"Attended our webinar","company_domain":"acme.com","person_name":"Ana Roy","person_title":"CTO"}'

type is one of: funding, hiring, leadership, tech_change, visit, keyword, news, engagement, registration or custom. Add agent_id to send the signal to one agent. You also need title, and company_domain or company_name.

Ask a question

curl -H "Authorization: Bearer $KEY" "https://readybuyerfinder.com/api/v1/ask?q=fintechs+in+Pune+that+raised+this+month"

Returns { "summary", "filters", "interpreted_by", "query", "leads" }. See Ask your pipeline.

Check a key

curl -H "Authorization: Bearer $KEY" https://readybuyerfinder.com/api/v1/me

Returns { "workspace_id", "name", "plan" }. Zapier and Make use this to test a connection.

REST hooks

  • POST /api/v1/hooks with {"target_url": "...", "event": "lead.created"} (or lead.approved, reply.received) returns 201 { "id", "event", "target_url", "secret" }.
  • GET /api/v1/hooks lists subscriptions.
  • DELETE /api/v1/hooks/{id} removes one (204).

Posts are signed like outgoing webhooks, below. A 410 answer removes the subscription. Details and a signature check in Node: Zapier, Make and n8n.

MCP

POST /api/mcp with the same API key. See MCP server.

Outgoing webhooks

The Webhook integration posts {"type":"lead.approved","created_at":...,"data":{...}}. data holds the person (with score, signal and why-now in custom), the message, send_after, language and lead_url. Two headers:

  • Idempotency-Key
  • X-Surge-Signature: t=<unix>,v1=<hex>, where v1 is the HMAC-SHA256 of t + "." + body, keyed with the integration's secret.

Reject any request older than 5 minutes.