Webhook events
Outbound webhook destinations: which events Yesoma sends, the payload shape, and signing.
Outbound webhooks let you fan Yesoma's events into the tools you already use — Slack, n8n, Zapier, your own service. Configure them under Settings → Notifications → Webhooks.
Create a destination
- Open Settings → Notifications → Webhooks → Add destination.
- Pick a label (e.g. "Slack — urgent inquiries"), the destination URL, and the events to subscribe to.
- Yesoma generates a per-destination signing secret. Save it on your receiver — every payload is signed with HMAC-SHA256 so you can verify Yesoma sent it.
Events
| Event | Fires when |
| --- | --- |
| inquiry.received | A new inquiry lands (any channel). |
| inquiry.assigned | An inquiry is assigned to a teammate. |
| inquiry.replied | A reply is sent or marked sent. |
| inquiry.closed | A case is closed with an outcome (won/lost/no_decision). |
| inquiry.flagged_urgent | An inquiry is escalated to urgent. |
| followup.scheduled | A new follow-up is created. |
| followup.overdue | A follow-up passed its due time without being completed. |
| approval.requested | A reply was sent for manager approval. |
Payload shape
{
"event": "inquiry.received",
"id": "evt_...",
"created_at": "2026-05-22T15:00:00.000Z",
"organization_id": "...",
"data": {
"inquiry": { "id": "...", "subject": "...", "source": "email", ... },
"customer": { "id": "...", "name": "...", "email": "...", "tags": [...] }
}
}
Field names mirror the database columns; the shape is stable across versions (additive changes only).
Signature verification
Every request includes:
X-Yesoma-Signature: sha256=<hex>
X-Yesoma-Event: inquiry.received
Compute HMAC-SHA256(secret, raw_body) and compare to the header value, constant-time. Reject the request if the signature doesn't match.
Retries
If your endpoint returns anything other than 2xx, Yesoma retries with exponential backoff up to 6 times over ~24 hours. Failed deliveries are visible in the Webhooks panel.
Disabling a destination
Toggle the Active switch in the panel to stop sending. The destination stays configured so you can re-enable it later without losing the secret.
Related
- Slack alert recipe — a concrete end-to-end recipe
- API authentication — for reading data from Yesoma
More in Technical setup
- Technical8 min
Website form endpoint
Yesoma's inbound HTTP endpoint that turns form submissions into inquiries. Reference for the URL, payload shape, and field aliases.
Read guide - Technical10 min
Supported form providers
Provider-specific walkthroughs for Web3Forms, Tally, Jotform, Formspree, Netlify Forms, Webflow, and plain HTML.
Read guide - Technical8 min
API authentication
Create an API key, scope it to the right permissions, and call the /api/v1/* endpoints from your tools.
Read guide - Technical10 min
Slack alert recipe
Wire a Yesoma outbound webhook to Slack so urgent inquiries and approvals ping the right channel.
Read guide - Setup10 min
Email forwarding setup
Per-provider forwarding for Gmail, Google Workspace, Outlook, iCloud, and Fastmail — point your business email at Yesoma.
Read guide
Was this article helpful?
If something was unclear or missing, tell us and we'll fix it.
Still stuck?
We'll help you get this working. Send us a message, or ask about Managed Setup.