Docs
Get API key

Webhooks

Subscribe a webhook

POST/webhooks

Subscribes an address to events (REST hooks, for Zapier, Make and n8n triggers). The signing secret is in this answer. Sending the same address, events and campaigns again with the same key returns that webhook and its secret instead of making a second one, so a retry never doubles deliveries.

Try itSend a real request with your API key

This changes your workspace, as the same change in the app would. Your key stays in this page and goes only to Salesteam.

Headers

  • Idempotency-Keystring

    Any unique value up to 255 characters, like a UUID. The request runs once; repeats within 24 hours get the first answer, with Idempotent-Replayed: true. Up to 255 characters.

Body

  • urlstring or null

    Public https address to call. Up to 2,000 characters.

  • target_urlstring or null

    Another name for url (Zapier REST hooks). Up to 2,000 characters.

  • eventsarray of EventType or null

    The events to send. A comma-separated string also works.

  • eventone of

    One event, instead of events.

    Inside it

    One of these shapes:

    Option 1: An event type

    Option 2

  • campaignIdsarray of string or null

    Only events from these campaigns. Left out, null, an empty string or an empty list: every campaign. A comma-separated string of IDs also works. Up to 50.

  • namestring or null

    Up to 60 characters.

Answer

201 Created The new webhook and its secret.

  • dataanyRequired

Errors

  • 400 Bad requestinvalid_request invalid_json duplicate_in_request
  • 401 Unauthorizedunauthorized
  • 404 Not foundnot_found not_in_campaign
  • 409 Conflictconflict idempotency_in_progress workspace_busy campaign_finished campaign_without_list tag_limit lead_has_history campaign_not_launched campaign_cannot_resume ambiguous_email
  • 422 Can’t processidempotency_key_reused
  • 429 Too many requestsrate_limited
  • 500 Server errorserver_error

Every error has the same shape. See Errors.

POST /webhooks
curl -X POST "https://app.salesteam.dev/api/v1/webhooks" \
  -H "Authorization: Bearer $SALESTEAM_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
  "url": "https://hooks.zapier.com/hooks/catch/123/abc/",
  "events": [
    "lead.replied",
    "meeting.booked"
  ]
}'
201 answer
{
  "data": null
}