Skip to main content
Use Webhooks → Custom Webhook for triggers and HTTP → Make a Request for public API actions. Store the workspace API key securely in the platform’s supported credential configuration.

Connect an event source

Create a public HTTPS webhook destination, register it in SendPilot → Integrations → Webhooks, and select the event types. Verify Svix delivery signatures before acting on a payload; use a verifying receiver if your scenario cannot preserve and verify raw bodies and headers. Deduplicate eventId. Then route the verified body: Select fields from Make’s actual trigger output; do not assume fields are flattened out of the data object.

Add leads from a spreadsheet

HTTP module settings:
  • URL: https://api.sendpilot.ai/v1/leads
  • Method: POST
  • Headers: X-API-Key, Content-Type: application/json, and a stable Idempotency-Key for the batch.
  • Body:
Map the placeholders to scenario values. REST accepts flat custom fields and 1–1,000 leads per request.

Update outcomes and pause campaigns

For a lead outcome, PATCH /v1/leads/LEAD_ID/status with, for example, {"customLeadStatus":"INTERESTED"} or {"status":"MEETING_BOOKED"}. Do not set sequence-managed statuses such as REPLY_RECEIVED. Omit note to preserve existing notes. To pause, PATCH /v1/campaigns/CAMPAIGN_ID with {"action":"pause"}. Resume uses {"action":"resume"} and requires the relevant workspace permission. See the endpoint reference.

Retry and delivery handling

Retries must reuse the same idempotency key, method, path and body. Honor 429 limits, handle 409/422 outcomes, and inspect conversations after uncertain delivery rather than sending again with a new key. REST writes execute directly; MCP preview/confirmation arguments are not REST fields.