Update Custom Tool
curl --request PATCH \
--url https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"webhookUrl": "<string>",
"enabled": true,
"schema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"queryParams": [
{
"key": "<string>",
"value": "<string>"
}
],
"sendRawRequestBody": true
}
'import requests
url = "https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}"
payload = {
"name": "<string>",
"webhookUrl": "<string>",
"enabled": True,
"schema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"queryParams": [
{
"key": "<string>",
"value": "<string>"
}
],
"sendRawRequestBody": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
webhookUrl: '<string>',
enabled: true,
schema: {},
headers: [{key: '<string>', value: '<string>'}],
queryParams: [{key: '<string>', value: '<string>'}],
sendRawRequestBody: true
})
};
fetch('https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}', 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://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'webhookUrl' => '<string>',
'enabled' => true,
'schema' => [
],
'headers' => [
[
'key' => '<string>',
'value' => '<string>'
]
],
'queryParams' => [
[
'key' => '<string>',
'value' => '<string>'
]
],
'sendRawRequestBody' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"enabled\": true,\n \"schema\": {},\n \"headers\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"queryParams\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"sendRawRequestBody\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"enabled\": true,\n \"schema\": {},\n \"headers\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"queryParams\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"sendRawRequestBody\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"enabled\": true,\n \"schema\": {},\n \"headers\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"queryParams\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"sendRawRequestBody\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"webhookUrl": "<string>",
"enabled": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"schema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"queryParams": [
{
"key": "<string>",
"value": "<string>"
}
],
"sendRawRequestBody": true
}
}{
"error": "invalid_body",
"details": {}
}{
"error": "unauthorized"
}{
"error": "billing_inactive"
}{
"error": "not_found"
}Agent Custom Tools
Update Custom Tool
Update custom tool configuration
PATCH
/
agents
/
{id}
/
custom-tools
/
{toolId}
Update Custom Tool
curl --request PATCH \
--url https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"webhookUrl": "<string>",
"enabled": true,
"schema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"queryParams": [
{
"key": "<string>",
"value": "<string>"
}
],
"sendRawRequestBody": true
}
'import requests
url = "https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}"
payload = {
"name": "<string>",
"webhookUrl": "<string>",
"enabled": True,
"schema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"queryParams": [
{
"key": "<string>",
"value": "<string>"
}
],
"sendRawRequestBody": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
webhookUrl: '<string>',
enabled: true,
schema: {},
headers: [{key: '<string>', value: '<string>'}],
queryParams: [{key: '<string>', value: '<string>'}],
sendRawRequestBody: true
})
};
fetch('https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}', 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://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'webhookUrl' => '<string>',
'enabled' => true,
'schema' => [
],
'headers' => [
[
'key' => '<string>',
'value' => '<string>'
]
],
'queryParams' => [
[
'key' => '<string>',
'value' => '<string>'
]
],
'sendRawRequestBody' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"enabled\": true,\n \"schema\": {},\n \"headers\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"queryParams\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"sendRawRequestBody\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"enabled\": true,\n \"schema\": {},\n \"headers\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"queryParams\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"sendRawRequestBody\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.revring.ai/v1/agents/{id}/custom-tools/{toolId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"webhookUrl\": \"<string>\",\n \"enabled\": true,\n \"schema\": {},\n \"headers\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"queryParams\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"sendRawRequestBody\": true\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"webhookUrl": "<string>",
"enabled": true,
"createdAt": "2023-11-07T05:31:56Z",
"updatedAt": "2023-11-07T05:31:56Z",
"schema": {},
"headers": [
{
"key": "<string>",
"value": "<string>"
}
],
"queryParams": [
{
"key": "<string>",
"value": "<string>"
}
],
"sendRawRequestBody": true
}
}{
"error": "invalid_body",
"details": {}
}{
"error": "unauthorized"
}{
"error": "billing_inactive"
}{
"error": "not_found"
}Authorizations
API key for authentication. Generate API keys from the RevRing dashboard.
Body
application/json
Maximum string length:
64Whether this tool is enabled
OpenAI function schema (can be null to remove)
HTTP method used when calling the webhook. Defaults to POST.
Available options:
GET, POST, PUT, PATCH, DELETE Custom HTTP headers to include in webhook requests
Show child attributes
Show child attributes
Custom query parameters appended to the webhook URL
Show child attributes
Show child attributes
When true, sends tool arguments directly as the request body instead of the default wrapper
Response
Custom tool updated
Custom function calling tool for agents
Show child attributes
Show child attributes
⌘I