Docs
GuidesAPI referenceWebhooksWeb widget

Tools

Server function tool

Keep the logic on your server. Let the AI request a function and use the result in its reply.

urlhttps URL
Your endpoint.
headerslist
Extra headers, for example your own auth token (mark it secret).
timeout_s1 to 30 secondsdefault 10
How long to wait for the answer.
fire_and_forgetbooleandefault false
Don't wait for the answer. The call carries on and the result is ignored. Useful for logging.

#Request

POST body
{
  "type": "tool_call",
  "tool": "check_order",
  "arguments": { "order_number": "1042" },
  "call": {
    "id": 8812,
    "number": "+15555550142",
    "direction": "inbound",
    "channel": "phone",
    "business": "Brightside Dental",
    "assistant": "Front desk",
    "assistant_id": 12,
    "variables": { "first_name": "Maya" }
  }
}

#Response

Answer with any JSON. If it has a result field, only that part is passed to the model. A status of 400 or more counts as a failure.

Response
{ "result": { "status": "shipped", "eta": "Thursday" } }

#Verify the signature

Every request carries X-BluePenguin-Signature: sha256= plus the hex HMAC-SHA256 of the raw body, keyed with the tool's signing secret from the tool page. Check it the same way as webhooks.