Endpoint

Use the capture endpoint for custom forms, landing pages, ad-platform webhooks, and middleware scripts. Include the shared secret header when `WEBHOOK_SHARED_SECRET` is configured.

curl -X POST https://instachime.com/api/webhooks/capture \
  -H "content-type: application/json" \
  -H "x-instachime-secret: YOUR_SHARED_SECRET" \
  -d '{
    "source": "website_form",
    "full_name": "Jamie Lee",
    "email": "jamie@example.com",
    "phone": "+15555550123",
    "message": "I need pricing today",
    "utm_source": "google",
    "utm_campaign": "emergency-demo"
  }'

E2E acceptance

  • Capture request returns 200 with a lead ID.
  • Lead appears in `/app` without refresh.
  • Lead has normalized email, phone, source, campaign, and raw fields.
  • SLA jobs are scheduled and missed-SLA state is recorded if nobody claims the lead.
  • Configured alert channels and CRM webhooks record delivery rows.