Webhooks

Receive SIMCOAI workflow events in your own systems as they happen.

Events

What you can subscribe to

Workflow events fire when customer work changes state.

requested

A refund, booking or order query was captured from a call or chat.

approved

A person approved the request in the dashboard.

refunded

A refund was marked as completed.

confirmed

A booking was confirmed.

cancelled

The request was cancelled.

order-updated

An order query changed state.

Delivery

What a delivery looks like

Each delivery carries the event name and a delivery id so you can detect repeats.

POST /your-endpoint HTTP/1.1
X-SIMCOAI-Event: workflow.requested
X-SIMCOAI-Delivery-ID: dlv_01HQ...
Content-Type: application/json

{
  "event": "workflow.requested",
  "type": "refund",
  "status": "pending",
  "verified": false,
  "createdAt": "2026-07-31T16:04:11.000Z"
}
Reliability

Retries and idempotency

Deliveries are retried on failure. Your endpoint must tolerate receiving the same event more than once.

Respond 2xx quickly

Acknowledge first, process afterwards. Slow endpoints get retried and cause duplicates.

Deduplicate on delivery id

Store X-SIMCOAI-Delivery-ID and ignore any id you have already handled.

Never trust the body alone

Verify the request came from SIMCOAI before acting on it.