Listar ferramentas de chamada
curl --request GET \
--url https://suasofia.online/api/user/tools \
--header 'Accept: <accept>' \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>'import requests
url = "https://suasofia.online/api/user/tools"
headers = {
"Authorization": "<authorization>",
"Content-Type": "<content-type>",
"Accept": "<accept>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
Authorization: '<authorization>',
'Content-Type': '<content-type>',
Accept: '<accept>'
}
};
fetch('https://suasofia.online/api/user/tools', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://suasofia.online/api/user/tools",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: <accept>",
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://suasofia.online/api/user/tools"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Accept", "<accept>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://suasofia.online/api/user/tools")
.header("Authorization", "<authorization>")
.header("Content-Type", "<content-type>")
.header("Accept", "<accept>")
.asString();require 'uri'
require 'net/http'
url = URI("https://suasofia.online/api/user/tools")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = '<content-type>'
request["Accept"] = '<accept>'
response = http.request(request)
puts response.read_body[
{
"id": 1,
"name": "get_weather",
"description": "Use esta ferramenta para obter o clima atual em uma cidade específica. Chame isso quando o cliente perguntar sobre as condições climáticas.",
"type": "http",
"endpoint": "https://api.openweathermap.org/data/2.5/weather?city={city}",
"method": "GET",
"body_format": "json",
"timeout": 10,
"headers": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Authorization",
"value": "Bearer sk_..."
}
],
"static_fields": [],
"schema": [
{
"name": "city",
"type": "string",
"description": "O nome da cidade para obter o clima",
"required": true
},
{
"name": "days",
"type": "number",
"description": "Número de dias de previsão",
"required": false
}
],
"created_at": "2025-10-10T12:00:00.000000Z",
"updated_at": "2025-10-10T12:00:00.000000Z"
},
{
"id": 2,
"name": "send_notification",
"description": "Use esta ferramenta para enviar uma notificação ao cliente. Chame isso quando o cliente solicitar atualizações.",
"type": "http",
"endpoint": "https://api.yourcompany.com/notifications/send",
"method": "POST",
"body_format": "json",
"timeout": 15,
"headers": [
{
"name": "Content-Type",
"value": "application/json"
}
],
"static_fields": [
{
"key": "caller",
"value": "{{customer_phone}}"
}
],
"schema": [
{
"name": "message",
"type": "string",
"description": "A mensagem de notificação a ser enviada",
"required": true
},
{
"name": "send_sms",
"type": "boolean",
"description": "Se deve também enviar notificação por SMS",
"required": false
}
],
"created_at": "2025-10-09T14:30:00.000000Z",
"updated_at": "2025-10-10T09:15:00.000000Z"
}
]
Mid Call Tools
Listar ferramentas de chamada
Recuperar todas as ferramentas de chamada
GET
/
user
/
tools
Listar ferramentas de chamada
curl --request GET \
--url https://suasofia.online/api/user/tools \
--header 'Accept: <accept>' \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>'import requests
url = "https://suasofia.online/api/user/tools"
headers = {
"Authorization": "<authorization>",
"Content-Type": "<content-type>",
"Accept": "<accept>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {
Authorization: '<authorization>',
'Content-Type': '<content-type>',
Accept: '<accept>'
}
};
fetch('https://suasofia.online/api/user/tools', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://suasofia.online/api/user/tools",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Accept: <accept>",
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://suasofia.online/api/user/tools"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "<content-type>")
req.Header.Add("Accept", "<accept>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://suasofia.online/api/user/tools")
.header("Authorization", "<authorization>")
.header("Content-Type", "<content-type>")
.header("Accept", "<accept>")
.asString();require 'uri'
require 'net/http'
url = URI("https://suasofia.online/api/user/tools")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = '<content-type>'
request["Accept"] = '<accept>'
response = http.request(request)
puts response.read_body[
{
"id": 1,
"name": "get_weather",
"description": "Use esta ferramenta para obter o clima atual em uma cidade específica. Chame isso quando o cliente perguntar sobre as condições climáticas.",
"type": "http",
"endpoint": "https://api.openweathermap.org/data/2.5/weather?city={city}",
"method": "GET",
"body_format": "json",
"timeout": 10,
"headers": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Authorization",
"value": "Bearer sk_..."
}
],
"static_fields": [],
"schema": [
{
"name": "city",
"type": "string",
"description": "O nome da cidade para obter o clima",
"required": true
},
{
"name": "days",
"type": "number",
"description": "Número de dias de previsão",
"required": false
}
],
"created_at": "2025-10-10T12:00:00.000000Z",
"updated_at": "2025-10-10T12:00:00.000000Z"
},
{
"id": 2,
"name": "send_notification",
"description": "Use esta ferramenta para enviar uma notificação ao cliente. Chame isso quando o cliente solicitar atualizações.",
"type": "http",
"endpoint": "https://api.yourcompany.com/notifications/send",
"method": "POST",
"body_format": "json",
"timeout": 15,
"headers": [
{
"name": "Content-Type",
"value": "application/json"
}
],
"static_fields": [
{
"key": "caller",
"value": "{{customer_phone}}"
}
],
"schema": [
{
"name": "message",
"type": "string",
"description": "A mensagem de notificação a ser enviada",
"required": true
},
{
"name": "send_sms",
"type": "boolean",
"description": "Se deve também enviar notificação por SMS",
"required": false
}
],
"created_at": "2025-10-09T14:30:00.000000Z",
"updated_at": "2025-10-10T09:15:00.000000Z"
}
]
Este endpoint permite que você recupere todas as ferramentas de chamada. As ferramentas de chamada permitem que seus assistentes de IA interajam com APIs externas durante uma chamada.
Cabeçalhos
string
required
Token Bearer para autenticação
string
required
Deve ser
application/jsonstring
required
Deve ser
application/jsonCampos de Resposta
array
Array de ferramentas de chamada
Show propriedades
Show propriedades
integer
O identificador único da ferramenta
string
O nome da ferramenta
string
Explicação detalhada de quando e como a IA deve usar esta ferramenta
string
Tipo da ferramenta:
http ou automationstring
A URL do endpoint da API que será chamada
string
Método HTTP (GET, POST, PUT, PATCH, DELETE)
string
Codificação do corpo da requisição:
json ou forminteger
Tempo limite da requisição em segundos (1-30)
array
array
array
string
Timestamp ISO 8601 quando a ferramenta foi criada
string
Timestamp ISO 8601 quando a ferramenta foi atualizada pela última vez
[
{
"id": 1,
"name": "get_weather",
"description": "Use esta ferramenta para obter o clima atual em uma cidade específica. Chame isso quando o cliente perguntar sobre as condições climáticas.",
"type": "http",
"endpoint": "https://api.openweathermap.org/data/2.5/weather?city={city}",
"method": "GET",
"body_format": "json",
"timeout": 10,
"headers": [
{
"name": "Content-Type",
"value": "application/json"
},
{
"name": "Authorization",
"value": "Bearer sk_..."
}
],
"static_fields": [],
"schema": [
{
"name": "city",
"type": "string",
"description": "O nome da cidade para obter o clima",
"required": true
},
{
"name": "days",
"type": "number",
"description": "Número de dias de previsão",
"required": false
}
],
"created_at": "2025-10-10T12:00:00.000000Z",
"updated_at": "2025-10-10T12:00:00.000000Z"
},
{
"id": 2,
"name": "send_notification",
"description": "Use esta ferramenta para enviar uma notificação ao cliente. Chame isso quando o cliente solicitar atualizações.",
"type": "http",
"endpoint": "https://api.yourcompany.com/notifications/send",
"method": "POST",
"body_format": "json",
"timeout": 15,
"headers": [
{
"name": "Content-Type",
"value": "application/json"
}
],
"static_fields": [
{
"key": "caller",
"value": "{{customer_phone}}"
}
],
"schema": [
{
"name": "message",
"type": "string",
"description": "A mensagem de notificação a ser enviada",
"required": true
},
{
"name": "send_sms",
"type": "boolean",
"description": "Se deve também enviar notificação por SMS",
"required": false
}
],
"created_at": "2025-10-09T14:30:00.000000Z",
"updated_at": "2025-10-10T09:15:00.000000Z"
}
]
Atribuindo Ferramentas a Assistentes
Para usar essas ferramentas com assistentes, veja:- Criar Assistente - Anexar ferramentas usando o parâmetro
tool_ids - Atualizar Assistente - Gerenciar atribuições de ferramentas usando o parâmetro
tool_ids

