Perform tasks in external systems
Action Tools
Action-oriented tools allow your AI to perform tasks in external systems, such as creating records, sending notifications, or updating data.
Overview
Unlike data acquisition tools that only fetch information, Action Tools use methods like , , , or to trigger side effects in your applications or third-party services.
text
text
text
text
Configuration
To create an Action Tool:
- Navigate to your Site → API Tools → New Tool.
- Select REST API as the protocol.
- Choose the appropriate Method (,text,text, ortext).text
- Provide the URL of your endpoint.
- Define any Parameters the AI should extract from the conversation to send in the request body.
- (Recommended) Enable Requires Confirmation for safety.
Confirmation Flow (Human-in-the-Loop)
For safety, sensitive actions should always require human consent. Vindex Ai implements this through a secure Two-Step Handshake.
1. The Halted Request
When an agent wants to call a tool with enabled, the Gateway intercepts the call. Instead of reaching your API, the Gateway returns a special response to your frontend:
text
json
2. User Approval
Your application UI should detect this status and present a confirmation dialog to the user. This ensures the user sees exactly what the AI intends to do (the ) before it happens.
text
3. Authorized Execution
Once the user clicks "Confirm", your client sends the request back to the Gateway, but now including a parameter.
text
The Gateway verifies this flag and only then executes the actual HTTP request to your backend API. This prevents the AI from accidentally triggering actions without explicit human authorization.
Security Benefits
- Tamper Resistance: Even if the AI model tries to bypass the check, the Gateway backend refuses to make the final API call without the flag from the client.text
- Data Transparency: Users see the exact JSON payload being sent to the external system.
- Audit Logging: Every proposed and confirmed action is logged for compliance.
Examples
Newsletter Subscription
- Name: text
- Method: text
- URL: text
- Parameters: (string)text
- Requires Confirmation: (low risk)text
Support Ticket Creation
- Name: text
- Method: text
- URL: text
- Parameters: (string),text(string),text(string)text
- Requires Confirmation: (high value)text
Delete Resource
- Name: text
- Method: text
- URL: text
- Parameters: (string)text
- Requires Confirmation: (destructive action)text