> ## Documentation Index
> Fetch the complete documentation index at: https://docs.orova.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# HTTP Tools

> Create custom tools that call any API endpoint

## Overview

HTTP tools let your agent call any REST API during a conversation. Use them to connect to your own backend, trigger webhooks, or interact with services that don't have a pre-built integration.

## When to use HTTP tools

* Call your own API to look up order status, account info, etc.
* Trigger automations in Make, Zapier, or n8n via webhooks
* Connect to any third-party API with a REST endpoint
* Send data to your backend when certain events happen in a conversation

## Create an HTTP tool

<Steps>
  <Step title="Go to Tools">
    In the dashboard sidebar, click **Tools**.
  </Step>

  <Step title="Click Create Tool">
    Click **Create Tool** and select **HTTP** as the tool type.
  </Step>

  <Step title="Configure the request">
    Set up the HTTP request:

    * **Name** — A descriptive name (e.g., "Check Order Status")
    * **Description** — Tell the agent when to use this tool (e.g., "Use this when the caller asks about their order status")
    * **Method** — GET, POST, PUT, PATCH, or DELETE
    * **URL** — The API endpoint to call
    * **Headers** — Any required headers (Authorization, Content-Type, etc.)
    * **Body** — Request body template (for POST/PUT/PATCH)
  </Step>

  <Step title="Define parameters">
    Define the parameters the agent should extract from the conversation and pass to the API. For example:

    * `order_id` — "The customer's order number"
    * `email` — "The customer's email address"

    The agent will ask the caller for these values if they're not already mentioned in the conversation.
  </Step>

  <Step title="Save and assign">
    Save the tool and assign it to your agent in the agent's **Tools** tab.
  </Step>
</Steps>

## Example: Order status lookup

A tool that checks order status from your backend:

| Setting     | Value                                             |
| ----------- | ------------------------------------------------- |
| Name        | Check Order Status                                |
| Description | Use when the caller asks about their order status |
| Method      | GET                                               |
| URL         | `https://api.yourcompany.com/orders/{order_id}`   |
| Parameters  | `order_id` — The customer's order number          |

When a caller says "I want to check my order status, it's #12345", the agent extracts the order ID, calls your API, and reads back the status.

## Example: Webhook trigger

A tool that triggers a Make/Zapier automation:

| Setting     | Value                                                                |
| ----------- | -------------------------------------------------------------------- |
| Name        | Submit Lead                                                          |
| Description | Use when the caller wants to be contacted by sales                   |
| Method      | POST                                                                 |
| URL         | `https://hook.make.com/your-webhook-id`                              |
| Body        | `{ "name": "{name}", "phone": "{phone}", "interest": "{interest}" }` |
| Parameters  | `name`, `phone`, `interest`                                          |

## Tips

* Write clear descriptions so the agent knows exactly when to use the tool
* Keep parameter names simple and descriptive
* Test with the **Talk to Agent** button before going live
* Use HTTPS endpoints for security
