Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.notealy.com/llms.txt

Use this file to discover all available pages before exploring further.

Outbound webhooks let your system react to changes inside Notealy without polling. Configure a subscription URL in Settings → Webhooks, and Notealy will POST a signed JSON envelope every time a matching event occurs.

Envelope

{
  "id": "evt_01J...",
  "type": "contact.tag_added",
  "created": "2026-05-04T18:21:00.000Z",
  "api_version": "1",
  "data": {
    "contactId": "01J...",
    "tagId": "01J...",
    "tagName": "web-lead",
    "organizationId": "01J..."
  }
}
Headers:
HeaderPurpose
X-Notealy-Delivery-IdUnique per delivery attempt
X-Notealy-Event-TypeSame as type in the body, for cheap routing
X-Notealy-SignatureHMAC signature — see Signing
User-AgentNotealy-Webhooks/1

Available events

EventWhen it fires
contact.createdA new contact is created (any source — UI, public API, import)
contact.stage_changedA contact moves between pipeline stages
contact.assignedA contact is assigned to a user
deal.createdA new deal is created
deal.updatedA deal’s fields are updated
deal.wonA deal is moved to a WON stage
deal.lostA deal is moved to a LOST stage
message.sentA message is sent (any channel)
message.receivedA message is received (any channel)
Subscriptions accept either a specific list of event types or * for all events.

Responding

Return any 2xx within 25 seconds. Anything else (including timeouts) is treated as failure and triggers retries — see Retries. Treat webhooks as at-least-once: Notealy may deliver the same event more than once on retry. Use X-Notealy-Delivery-Id to deduplicate on your side.