Skip to main content
Each Genie can have one active escalation webhook. When a call is escalated, HelpGenie sends a signed POST request to the configured URL with a customisable payload. Webhook payloads are HMAC-SHA256 signed using your secret. The signature is sent in the X-HelpGenie-Signature header by default, or in the header name you specify via secret_header.

Actions

get

Returns the escalation webhook configured for a Genie, or null if none exists. Parameters Response
Returns null if no webhook is configured.

upsert

Creates or updates the escalation webhook for a Genie. Only one webhook per Genie is supported — calling this again replaces the existing configuration.
string
required
Genie UUID.
string
required
HTTPS endpoint to POST to on escalation.
string
Shared secret used to sign the payload (HMAC-SHA256).
string
default:"X-HelpGenie-Signature"
Header name for the signature.
array
Custom payload field definitions. Each item can be a string key or an object { "key", "hint", "useForSignature" }. When empty, a default set of standard fields is used: eventId, eventType, timestamp, callerNumber, callSid, reason, summary, agentSessionId.
boolean
default:"true"
Whether the webhook fires on escalation.
Default payload fields (used when custom_fields is empty): eventId, eventType, timestamp, callerNumber, callSid, reason, summary, agentSessionId Response — the saved webhook row.

delete

Removes the escalation webhook for a Genie. No-ops silently if no webhook exists. Parameters Response

test

Sends a test POST request to the webhook URL with a dummy escalation payload. Validates that the endpoint is reachable and returns the HTTP status and response body. Requires the webhook to be active. Parameters Response
If the request fails at the network level, result will contain an error string instead of status/body.

Error codes