Documentation ›Your AI agent

Custom Tools (your APIs in chat)

Define tools the AI can call during conversations — your CRM lookup, your booking system, a registry check, anything reachable over HTTP. Configure in Dashboard → Integrations → Custom Tools.

Available everywhere by default: phone calls, the website widget, Telegram bot, WhatsApp (and Instagram once connected — see its section). The AI picks tools based on their description — write it like you would in a system prompt for a junior assistant.

How a tool call works:

  1. User says something the AI can act on ("check if my brand 'Альфа' is taken").
  2. AI POSTs to your webhook_url with { "tool_name", "arguments": {…}, "call_id", "tenant_id" }.
  3. Your endpoint returns any JSON object within timeout_ms (default 10s).
  4. AI weaves the result into the next reply in human language.

Schema (JSON Schema for parameters):

{
  "name": "check_trademark",
  "description": "Check whether a brand name is already registered as a trademark.",
  "parameters": {
    "type": "object",
    "properties": {
      "name": { "type": "string", "description": "Brand name to check" },
      "mktu_class": { "type": "integer", "description": "MKTU class 1..45" }
    },
    "required": ["name"]
  },
  "webhook_url": "https://your-api.example.com/check-trademark",
  "auth_header": "Bearer your-secret",
  "timeout_ms": 10000,
  "enabled": true
}

Security: webhook URLs must be public addresses — use HTTPS (no localhost, private IPs or cloud-metadata endpoints — blocked at save and at runtime). Use the optional auth_header field to pass an Authorization header so your endpoint can verify the call came from SIPmind.

Reserved names: submit_lead, transfer_to_operator, end_call, search_knowledge_base — these are built-in and cannot be overridden.

Failures are graceful: if your webhook times out or 500s, the AI receives an {"error":"…"} string and replies with a soft fallback ("not available right now, would you like to leave contact?"). The conversation continues.