v1 · stable
LeadRescue API
A REST API to log test drives, manage sequences, and stream events into your CRM or BI stack. Base URL https://api.leadrescue.io.
Bearer auth
API keys scoped per dealership; rotate from the dashboard.
Signed webhooks
Every inbound event is HMAC-SHA256 signed; verify with your secret.
At-least-once delivery
Idempotent endpoints; retry-safe with the X-Idempotency-Key header.
Authentication
# Include this header on every request Authorization: Bearer lr_sk_live_3f8b2c…
Endpoints
POST
/v1/leadsCreate a leadLogs a new test drive and triggers the Day 0 message.
curl -X POST https://api.leadrescue.io/v1/leads \
-H "Authorization: Bearer $LR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"customer_name": "Anna Karlsson",
"phone": "+46701234567",
"car_model": "Mercedes E-Class",
"consent": true,
"license_photo_b64": "..."
}'GET
/v1/leads/:idRetrieve a leadReturns the lead, its status, and full message history.
curl https://api.leadrescue.io/v1/leads/l_8f3a \ -H "Authorization: Bearer $LR_API_KEY"
PATCH
/v1/leads/:idUpdate statusMark a lead as converted, opted_out, or closed.
curl -X PATCH https://api.leadrescue.io/v1/leads/l_8f3a \
-H "Authorization: Bearer $LR_API_KEY" \
-d '{ "status": "converted" }'POST
/v1/sequences/:id/stopStop a sequenceCancels all queued follow-ups for a lead immediately.
curl -X POST https://api.leadrescue.io/v1/sequences/l_8f3a/stop \ -H "Authorization: Bearer $LR_API_KEY"
GET
/v1/analytics/kpisManager KPIsAggregate KPIs scoped to the authenticated dealership.
curl https://api.leadrescue.io/v1/analytics/kpis?range=30d \ -H "Authorization: Bearer $LR_API_KEY"
POST
/v1/webhooks/inboundInbound webhookReceive customer replies and opt-out events in real time.
// Sample inbound payload
{
"event": "customer.reply",
"lead_id": "l_8f3a",
"channel": "whatsapp",
"body": "Tack, kanon känsla!",
"received_at": "2026-06-26T11:11:02Z"
} Status codes
200 OKRequest succeeded.201 CreatedResource created — lead or sequence.400 Bad RequestValidation failure — see error.fields.401 UnauthorizedMissing or invalid API key.404 Not FoundUnknown resource.429 Too Many RequestsRate limited — retry after Retry-After header.