Skip to Content
AI AgentsTools & Actions

Tools & Actions

Tools are how an agent does things. Without tools, an agent can only talk. With tools, it can look up an order, refund a charge, transfer to a human, schedule a meeting, hit your own webhook.

Tool categories

CategoryExamples
Built-in actionstransfer_to_human, end_call, search_knowledge, create_ticket, tag_conversation
Integration toolssalesforce_lookup_account, genesys_transfer, gmail_send, hubspot_update_deal
Custom webhooksAny HTTP endpoint you own — POST + JSON.
Database lookupsRead-only queries against tables you whitelist.

How a tool call works

  1. The model decides to call a tool based on the conversation and the tool’s description.
  2. Omniflow validates arguments against the tool’s JSON schema.
  3. The tool runs (HTTP call, database query, internal action).
  4. The result is streamed back to the model, which uses it to keep the conversation moving.

Tools can return structured data, plain text, or a mix. The agent doesn’t need to read the raw JSON — Omniflow injects a short summary by default.

Add a custom webhook tool

Open the agent

Go to Agents → [your agent] → Tools → New tool.

Pick “Custom webhook”

Give it a name (lookup_order), a one-line description (Look up an order by ID), and an HTTP method + URL.

Define the schema

Use JSON Schema to declare arguments — the model uses this to know what to send. Keep it minimal.

{ "type": "object", "properties": { "order_id": { "type": "string", "description": "The customer's order ID" } }, "required": ["order_id"] }

Set auth and timeouts

Most webhooks need an API key — store it in Settings → Secrets and reference it by name. Default timeout is 8 seconds; raise it if your endpoint is slow.

Test the call

Use the Test tab to invoke the tool with a sample argument. You’ll see the request, response, and any errors.

Tool design rules

  • One job per tool. Don’t build a do_anything tool — split it.
  • Short, descriptive names. The model picks tools by name and description.
  • Return the minimum. Big payloads slow the agent down.
  • Fail loud. Return a clear error string the agent can read aloud.

Guardrails

GuardrailWhy
Allowlist of refundable amountsPrevent the agent from issuing refunds above a threshold without a human.
Read-only by defaultNew webhook tools default to GET; opt in to POST/PUT/DELETE explicitly.
Per-tool rate limitsStop a chatty agent from hammering your API.
Per-call audit logEvery tool invocation is logged with arguments, response, and latency.

Mutating tools (POST/PUT/DELETE) deserve extra scrutiny. Test them in the sandbox, set rate limits, and consider requiring a confirmation turn before the agent calls them.

Open in Omniflow

If you want to…Go to
Use a built-in CRM toolCRM integrations
Trigger a webhook from a workflow ruleRouting Rules
Inspect what the agent calledActivity Logs & Traces