Back to Guides
Webhooks & Automation15 min

AI-Callable Webhooks

Give your chatbot a toolbox โ€” let AI fetch real-time data during conversations. Configure tool names, write effective descriptions, define parameters, set up response filtering, and understand rate limits.

What you'll learn

  • What are AI-callable webhooks?
  • How the flow works
  • Enable and configure
  • Writing effective AI descriptions
  • Defining parameters
  • Response filtering
  • Rate limits and best practices
1

What are AI-callable webhooks?

AI-callable webhooks give your chatbot a toolbox. When a customer asks something that needs real-time data โ€” like product availability, appointment slots, or pricing โ€” the AI picks the right tool from its toolbox and fetches the answer instantly. Unlike regular webhooks that fire on events (like lead capture), AI-callable webhooks are triggered by the AI itself during a conversation. You define the tools by giving each one a name, a description of what it does, and parameters it needs. The AI reads these descriptions and decides when to call each tool based on the conversation context. For example, if you create a 'check_inventory' tool and a user asks 'Do you have the blue sneakers in size 10?', the AI recognizes it needs inventory data, calls your webhook with the product name and size, and uses the response to answer the customer โ€” all in real time, within the same chat message.

AI's Toolbox

Check inventory

Product availability

Get appointments

Available time slots

Get pricing

Real-time quotes

Track order

Shipping status

The AI decides when to call each tool based on the conversation context โ€” no manual triggers needed.

2

How the flow works

Here is the complete flow from setup to execution: First, you define your tools by creating webhooks with AI-callable enabled, giving each a tool name, description, and parameters. When a chat session starts, the AI loads all available AI-callable webhooks as tools. The user asks a question โ€” for example, 'Do you have blue sneakers in size 10?'. The AI evaluates whether any of its tools can help answer the question. If yes, it picks the right tool (in this case, 'check_inventory'). The AI collects the required parameters from the conversation context โ€” it extracts 'blue sneakers' as the product_name and '10' as the size. The webhook fires, sending an HTTP request to your endpoint with these parameters. Your API returns a JSON response (e.g., available: true, price: $89.99). The AI receives the response and crafts a natural language answer: 'Yes! The blue sneakers in size 10 are available for $89.99.' The entire process happens within seconds, seamlessly within the conversation.

How It Works

You define tools

Name, description, parameters

1

Chat starts

AI loads available tools

2

User asks question

"Do you have blue sneakers in size 10?"

3

AI evaluates

Needs real-time data โ†’ picks tool

4

Collects parameters

From conversation context

5

Webhook fires

HTTP request to your endpoint

6

Response returns

JSON data from your API

7

AI answers user

Natural language with real data

8
3

Enable and configure

To make a webhook AI-callable, toggle the 'AI-Callable' switch to enabled in the webhook settings. This reveals the AI configuration section with three fields. Tool Name: a short, descriptive identifier using lowercase letters and underscores only (e.g., 'check_inventory', 'get_appointments', 'track_order'). Maximum 50 characters. This is the internal name the AI uses to identify the tool. Description for AI: a natural language description that tells the AI when and how to use this tool. This is the most important field โ€” write it as if you're instructing a human assistant. Include what the tool does, when to call it, and what parameters to collect. Parameters: define the input parameters the AI needs to collect from the conversation. Each parameter has a name, type (String, Number, or Boolean), whether it's required, and a description. The AI uses the descriptions to understand what values to extract from the conversation. For example, a 'product_name' parameter with the description 'The name of the product the customer is asking about' helps the AI extract the right value.

AI-callable toggle switch
AI-callable configuration with tool name, description, and parameters
4

Writing effective AI descriptions

The description you write for the AI is the single most important factor in how well your tool works. A vague description like 'This webhook checks inventory' gives the AI no guidance on when to call it or what to extract. A good description is specific about three things: what the tool does, when to call it, and what parameters to collect. Good example: 'Check product availability and pricing in our store. Call when a customer asks about stock, inventory, whether we have an item, or product availability. Requires the product_name parameter โ€” extract it from what the customer mentioned.' This tells the AI exactly what the tool does (checks availability and pricing), lists trigger phrases (stock, inventory, whether we have an item), and guides parameter collection (extract from what the customer mentioned). Other tips: include common variations of how users might ask (e.g., 'Do you carry...', 'Is the ... in stock?', 'How much is the ...'). Mention what the tool does NOT do to prevent false triggers. If parameters are optional, explain when to include them.

Bad Description

"This webhook checks inventory."

Too vague โ€” when should AI call it?
No trigger phrases mentioned
No parameter guidance

Good Description

"Check product availability and pricing in our store. Call when a customer asks about stock, inventory, whether we have an item, or product availability. Requires the product_name parameter โ€” extract it from what the customer mentioned."

Specific about WHEN to call
Lists trigger phrases
Describes what parameters to collect
5

Defining parameters

Parameters define what information the AI needs to collect from the conversation before calling the webhook. Each parameter has four fields: Name (the JSON key sent in the request, e.g., 'product_name'), Type (String for text values, Number for numeric values, Boolean for true/false flags), Required (whether the AI must collect this before calling), and Description (helps the AI understand what value to extract). String parameters are the most common โ€” used for names, IDs, descriptions, and any text input. Number parameters are used for quantities, prices, and numeric IDs. Boolean parameters are useful for flags like 'include_details' or 'check_all_sizes'. When a parameter is marked as required, the AI will ask the user for the information if it's not already present in the conversation. For example, if 'product_name' is required and the user says 'What's in stock?', the AI will ask 'Which product are you interested in?' before calling the webhook. Optional parameters are sent if the AI can extract them from context, but the webhook still fires without them.

Parameter Types

String

Text values โ€” names, IDs, descriptions

product_name"blue sneakers"
Number

Numeric values โ€” counts, prices, IDs

quantity3
Boolean

True/false values โ€” flags, toggles

include_detailstrue

Required vs Optional:

RequiredAI must collect before calling
OptionalAI sends if available in context
Parameter definitions with name, type, and required fields
6

Response filtering

Response filtering lets you control what data the AI sees from the webhook response. This is important for three reasons: privacy (hide sensitive fields like internal IDs or costs), relevance (only show results matching the user's query), and token efficiency (reduce the amount of data the AI processes, which improves response speed and accuracy). To configure a filter, set: a target variable (the array field in the response to filter, e.g., 'products'), conditions (one or more rules like 'in_stock equals true' or 'price less_than 100'), and an optional limit (maximum number of results). Conditions use AND logic โ€” all conditions must match for an item to be included. Available operators include: equals, not_equals, contains, not_contains, greater_than, less_than, greater_than_or_equal, and less_than_or_equal. For example, filtering a product catalog response where 'in_stock' equals 'true' with a limit of 5 means the AI only sees up to 5 in-stock products, rather than the entire catalog.

Response filter configuration for AI-callable webhooks
7

Rate limits and best practices

AI-callable webhooks have rate limits to prevent abuse and ensure reliable performance. The limits are: 10 calls per session (per chat conversation) and 50 calls per hour (per webhook). When a limit is reached, the AI stops calling that tool for the remainder of the session or hour and either answers with whatever information it already has or informs the user that it cannot check at the moment. These limits are generous for typical conversations but worth knowing about. Best practices for AI-callable webhooks: keep your API response times under 5 seconds โ€” the AI waits for the response, and long delays feel unnatural in a chat. Write clear, specific tool descriptions โ€” this is the number one factor in reliable tool selection. Test with real conversational questions, not just technical test cases. Monitor your webhook's health dashboard to track AI call success rates and response times. Use response filtering to keep data lean โ€” smaller responses mean faster AI processing and more accurate answers. Start with required parameters only, adding optional ones once the core flow works well.

Rate Limits

Per session

Max AI tool calls per chat session

10 calls

Per hour

Max AI tool calls per hour per webhook

50 calls

At limit: AI stops calling the tool and answers with available information or informs the user.

Best Practices

Keep descriptions clear and specific

Test thoroughly with real questions

Monitor via health dashboard

Keep response times under 5 seconds

Webhook card showing AI Tool badge

๐Ÿ’กPro Tip

  • If the AI is calling the wrong tool or not calling it when expected, the issue is almost always in the description. Refine the description with more specific trigger phrases and clearer guidance on when to call vs. when not to call.

Related Guides

Ready to get started?

Create your free account and start building your chatbot today.

Start Free Trial