curl --request PATCH \
--url https://flowra.dev/api/v1/tools/byId/{id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"deprecatedInfo": {
"displayName": "<string>",
"version": "<string>",
"availableVersions": [
"<string>"
],
"isDeprecated": true,
"toolkit": {
"logo": "<string>"
}
},
"slug": "send_slack_digest",
"name": "Send Slack digest",
"description": "Posts a daily summary to a Slack channel",
"instructions": "Call when the user asks to share a digest in Slack.",
"toolkitSlug": "my-custom-toolkit",
"inputParameters": {
"type": "object",
"properties": {
"channel": {
"type": "string"
}
},
"required": [
"channel"
]
},
"outputParameters": {
"type": "object",
"properties": {
"ok": {
"type": "boolean"
}
}
},
"noAuth": false,
"scopes": [
"chat:write"
],
"tags": [
"slack",
"digest"
],
"isImportant": false,
"popularityScore": 0,
"type": "action",
"availableVersions": [
"1.0.0",
"1.1.0"
],
"version": "1.0.0",
"isDeprecated": false,
"isDisabled": false,
"triggerThreadKey": "invoice.paid",
"executionCreditCost": 2
}
'import requests
url = "https://flowra.dev/api/v1/tools/byId/{id}"
payload = {
"deprecatedInfo": {
"displayName": "<string>",
"version": "<string>",
"availableVersions": ["<string>"],
"isDeprecated": True,
"toolkit": { "logo": "<string>" }
},
"slug": "send_slack_digest",
"name": "Send Slack digest",
"description": "Posts a daily summary to a Slack channel",
"instructions": "Call when the user asks to share a digest in Slack.",
"toolkitSlug": "my-custom-toolkit",
"inputParameters": {
"type": "object",
"properties": { "channel": { "type": "string" } },
"required": ["channel"]
},
"outputParameters": {
"type": "object",
"properties": { "ok": { "type": "boolean" } }
},
"noAuth": False,
"scopes": ["chat:write"],
"tags": ["slack", "digest"],
"isImportant": False,
"popularityScore": 0,
"type": "action",
"availableVersions": ["1.0.0", "1.1.0"],
"version": "1.0.0",
"isDeprecated": False,
"isDisabled": False,
"triggerThreadKey": "invoice.paid",
"executionCreditCost": 2
}
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({
deprecatedInfo: {
displayName: '<string>',
version: '<string>',
availableVersions: ['<string>'],
isDeprecated: true,
toolkit: {logo: '<string>'}
},
slug: 'send_slack_digest',
name: 'Send Slack digest',
description: 'Posts a daily summary to a Slack channel',
instructions: 'Call when the user asks to share a digest in Slack.',
toolkitSlug: 'my-custom-toolkit',
inputParameters: {type: 'object', properties: {channel: {type: 'string'}}, required: ['channel']},
outputParameters: {type: 'object', properties: {ok: {type: 'boolean'}}},
noAuth: false,
scopes: ['chat:write'],
tags: ['slack', 'digest'],
isImportant: false,
popularityScore: 0,
type: 'action',
availableVersions: ['1.0.0', '1.1.0'],
version: '1.0.0',
isDeprecated: false,
isDisabled: false,
triggerThreadKey: 'invoice.paid',
executionCreditCost: 2
})
};
fetch('https://flowra.dev/api/v1/tools/byId/{id}', 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://flowra.dev/api/v1/tools/byId/{id}",
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([
'deprecatedInfo' => [
'displayName' => '<string>',
'version' => '<string>',
'availableVersions' => [
'<string>'
],
'isDeprecated' => true,
'toolkit' => [
'logo' => '<string>'
]
],
'slug' => 'send_slack_digest',
'name' => 'Send Slack digest',
'description' => 'Posts a daily summary to a Slack channel',
'instructions' => 'Call when the user asks to share a digest in Slack.',
'toolkitSlug' => 'my-custom-toolkit',
'inputParameters' => [
'type' => 'object',
'properties' => [
'channel' => [
'type' => 'string'
]
],
'required' => [
'channel'
]
],
'outputParameters' => [
'type' => 'object',
'properties' => [
'ok' => [
'type' => 'boolean'
]
]
],
'noAuth' => false,
'scopes' => [
'chat:write'
],
'tags' => [
'slack',
'digest'
],
'isImportant' => false,
'popularityScore' => 0,
'type' => 'action',
'availableVersions' => [
'1.0.0',
'1.1.0'
],
'version' => '1.0.0',
'isDeprecated' => false,
'isDisabled' => false,
'triggerThreadKey' => 'invoice.paid',
'executionCreditCost' => 2
]),
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://flowra.dev/api/v1/tools/byId/{id}"
payload := strings.NewReader("{\n \"deprecatedInfo\": {\n \"displayName\": \"<string>\",\n \"version\": \"<string>\",\n \"availableVersions\": [\n \"<string>\"\n ],\n \"isDeprecated\": true,\n \"toolkit\": {\n \"logo\": \"<string>\"\n }\n },\n \"slug\": \"send_slack_digest\",\n \"name\": \"Send Slack digest\",\n \"description\": \"Posts a daily summary to a Slack channel\",\n \"instructions\": \"Call when the user asks to share a digest in Slack.\",\n \"toolkitSlug\": \"my-custom-toolkit\",\n \"inputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"channel\"\n ]\n },\n \"outputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"ok\": {\n \"type\": \"boolean\"\n }\n }\n },\n \"noAuth\": false,\n \"scopes\": [\n \"chat:write\"\n ],\n \"tags\": [\n \"slack\",\n \"digest\"\n ],\n \"isImportant\": false,\n \"popularityScore\": 0,\n \"type\": \"action\",\n \"availableVersions\": [\n \"1.0.0\",\n \"1.1.0\"\n ],\n \"version\": \"1.0.0\",\n \"isDeprecated\": false,\n \"isDisabled\": false,\n \"triggerThreadKey\": \"invoice.paid\",\n \"executionCreditCost\": 2\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://flowra.dev/api/v1/tools/byId/{id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"deprecatedInfo\": {\n \"displayName\": \"<string>\",\n \"version\": \"<string>\",\n \"availableVersions\": [\n \"<string>\"\n ],\n \"isDeprecated\": true,\n \"toolkit\": {\n \"logo\": \"<string>\"\n }\n },\n \"slug\": \"send_slack_digest\",\n \"name\": \"Send Slack digest\",\n \"description\": \"Posts a daily summary to a Slack channel\",\n \"instructions\": \"Call when the user asks to share a digest in Slack.\",\n \"toolkitSlug\": \"my-custom-toolkit\",\n \"inputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"channel\"\n ]\n },\n \"outputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"ok\": {\n \"type\": \"boolean\"\n }\n }\n },\n \"noAuth\": false,\n \"scopes\": [\n \"chat:write\"\n ],\n \"tags\": [\n \"slack\",\n \"digest\"\n ],\n \"isImportant\": false,\n \"popularityScore\": 0,\n \"type\": \"action\",\n \"availableVersions\": [\n \"1.0.0\",\n \"1.1.0\"\n ],\n \"version\": \"1.0.0\",\n \"isDeprecated\": false,\n \"isDisabled\": false,\n \"triggerThreadKey\": \"invoice.paid\",\n \"executionCreditCost\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://flowra.dev/api/v1/tools/byId/{id}")
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 \"deprecatedInfo\": {\n \"displayName\": \"<string>\",\n \"version\": \"<string>\",\n \"availableVersions\": [\n \"<string>\"\n ],\n \"isDeprecated\": true,\n \"toolkit\": {\n \"logo\": \"<string>\"\n }\n },\n \"slug\": \"send_slack_digest\",\n \"name\": \"Send Slack digest\",\n \"description\": \"Posts a daily summary to a Slack channel\",\n \"instructions\": \"Call when the user asks to share a digest in Slack.\",\n \"toolkitSlug\": \"my-custom-toolkit\",\n \"inputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"channel\"\n ]\n },\n \"outputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"ok\": {\n \"type\": \"boolean\"\n }\n }\n },\n \"noAuth\": false,\n \"scopes\": [\n \"chat:write\"\n ],\n \"tags\": [\n \"slack\",\n \"digest\"\n ],\n \"isImportant\": false,\n \"popularityScore\": 0,\n \"type\": \"action\",\n \"availableVersions\": [\n \"1.0.0\",\n \"1.1.0\"\n ],\n \"version\": \"1.0.0\",\n \"isDeprecated\": false,\n \"isDisabled\": false,\n \"triggerThreadKey\": \"invoice.paid\",\n \"executionCreditCost\": 2\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Operation completed successfully",
"data": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"slug": "gmail_send_email",
"name": "Send Email",
"description": "Sends an email via Gmail",
"instructions": "Use when the user asks to send an email.",
"toolkitSlug": "gmail",
"inputParameters": {
"type": "object",
"properties": {
"to": {
"type": "string"
}
}
},
"outputParameters": {
"type": "object",
"properties": {
"messageId": {
"type": "string"
}
}
},
"noAuth": false,
"availableVersions": [
"1.0.0"
],
"version": "1.0.0",
"scopes": [
"gmail.send"
],
"tags": [
"email"
],
"isImportant": false,
"isDeprecated": false,
"isDisabled": false,
"popularityScore": 12,
"provider": "COMPOSIO",
"type": "action",
"ragContentHash": "",
"ragSyncedAt": "2024-01-01T00:00:00.000Z",
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z",
"fieldModifiers": {},
"script": "javascript",
"executionCreditCost": 0
}
}Update an existing tool
Update a tool’s name, description, input schema, or configuration. Only the fields you send are changed.
curl --request PATCH \
--url https://flowra.dev/api/v1/tools/byId/{id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"deprecatedInfo": {
"displayName": "<string>",
"version": "<string>",
"availableVersions": [
"<string>"
],
"isDeprecated": true,
"toolkit": {
"logo": "<string>"
}
},
"slug": "send_slack_digest",
"name": "Send Slack digest",
"description": "Posts a daily summary to a Slack channel",
"instructions": "Call when the user asks to share a digest in Slack.",
"toolkitSlug": "my-custom-toolkit",
"inputParameters": {
"type": "object",
"properties": {
"channel": {
"type": "string"
}
},
"required": [
"channel"
]
},
"outputParameters": {
"type": "object",
"properties": {
"ok": {
"type": "boolean"
}
}
},
"noAuth": false,
"scopes": [
"chat:write"
],
"tags": [
"slack",
"digest"
],
"isImportant": false,
"popularityScore": 0,
"type": "action",
"availableVersions": [
"1.0.0",
"1.1.0"
],
"version": "1.0.0",
"isDeprecated": false,
"isDisabled": false,
"triggerThreadKey": "invoice.paid",
"executionCreditCost": 2
}
'import requests
url = "https://flowra.dev/api/v1/tools/byId/{id}"
payload = {
"deprecatedInfo": {
"displayName": "<string>",
"version": "<string>",
"availableVersions": ["<string>"],
"isDeprecated": True,
"toolkit": { "logo": "<string>" }
},
"slug": "send_slack_digest",
"name": "Send Slack digest",
"description": "Posts a daily summary to a Slack channel",
"instructions": "Call when the user asks to share a digest in Slack.",
"toolkitSlug": "my-custom-toolkit",
"inputParameters": {
"type": "object",
"properties": { "channel": { "type": "string" } },
"required": ["channel"]
},
"outputParameters": {
"type": "object",
"properties": { "ok": { "type": "boolean" } }
},
"noAuth": False,
"scopes": ["chat:write"],
"tags": ["slack", "digest"],
"isImportant": False,
"popularityScore": 0,
"type": "action",
"availableVersions": ["1.0.0", "1.1.0"],
"version": "1.0.0",
"isDeprecated": False,
"isDisabled": False,
"triggerThreadKey": "invoice.paid",
"executionCreditCost": 2
}
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({
deprecatedInfo: {
displayName: '<string>',
version: '<string>',
availableVersions: ['<string>'],
isDeprecated: true,
toolkit: {logo: '<string>'}
},
slug: 'send_slack_digest',
name: 'Send Slack digest',
description: 'Posts a daily summary to a Slack channel',
instructions: 'Call when the user asks to share a digest in Slack.',
toolkitSlug: 'my-custom-toolkit',
inputParameters: {type: 'object', properties: {channel: {type: 'string'}}, required: ['channel']},
outputParameters: {type: 'object', properties: {ok: {type: 'boolean'}}},
noAuth: false,
scopes: ['chat:write'],
tags: ['slack', 'digest'],
isImportant: false,
popularityScore: 0,
type: 'action',
availableVersions: ['1.0.0', '1.1.0'],
version: '1.0.0',
isDeprecated: false,
isDisabled: false,
triggerThreadKey: 'invoice.paid',
executionCreditCost: 2
})
};
fetch('https://flowra.dev/api/v1/tools/byId/{id}', 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://flowra.dev/api/v1/tools/byId/{id}",
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([
'deprecatedInfo' => [
'displayName' => '<string>',
'version' => '<string>',
'availableVersions' => [
'<string>'
],
'isDeprecated' => true,
'toolkit' => [
'logo' => '<string>'
]
],
'slug' => 'send_slack_digest',
'name' => 'Send Slack digest',
'description' => 'Posts a daily summary to a Slack channel',
'instructions' => 'Call when the user asks to share a digest in Slack.',
'toolkitSlug' => 'my-custom-toolkit',
'inputParameters' => [
'type' => 'object',
'properties' => [
'channel' => [
'type' => 'string'
]
],
'required' => [
'channel'
]
],
'outputParameters' => [
'type' => 'object',
'properties' => [
'ok' => [
'type' => 'boolean'
]
]
],
'noAuth' => false,
'scopes' => [
'chat:write'
],
'tags' => [
'slack',
'digest'
],
'isImportant' => false,
'popularityScore' => 0,
'type' => 'action',
'availableVersions' => [
'1.0.0',
'1.1.0'
],
'version' => '1.0.0',
'isDeprecated' => false,
'isDisabled' => false,
'triggerThreadKey' => 'invoice.paid',
'executionCreditCost' => 2
]),
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://flowra.dev/api/v1/tools/byId/{id}"
payload := strings.NewReader("{\n \"deprecatedInfo\": {\n \"displayName\": \"<string>\",\n \"version\": \"<string>\",\n \"availableVersions\": [\n \"<string>\"\n ],\n \"isDeprecated\": true,\n \"toolkit\": {\n \"logo\": \"<string>\"\n }\n },\n \"slug\": \"send_slack_digest\",\n \"name\": \"Send Slack digest\",\n \"description\": \"Posts a daily summary to a Slack channel\",\n \"instructions\": \"Call when the user asks to share a digest in Slack.\",\n \"toolkitSlug\": \"my-custom-toolkit\",\n \"inputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"channel\"\n ]\n },\n \"outputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"ok\": {\n \"type\": \"boolean\"\n }\n }\n },\n \"noAuth\": false,\n \"scopes\": [\n \"chat:write\"\n ],\n \"tags\": [\n \"slack\",\n \"digest\"\n ],\n \"isImportant\": false,\n \"popularityScore\": 0,\n \"type\": \"action\",\n \"availableVersions\": [\n \"1.0.0\",\n \"1.1.0\"\n ],\n \"version\": \"1.0.0\",\n \"isDeprecated\": false,\n \"isDisabled\": false,\n \"triggerThreadKey\": \"invoice.paid\",\n \"executionCreditCost\": 2\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://flowra.dev/api/v1/tools/byId/{id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"deprecatedInfo\": {\n \"displayName\": \"<string>\",\n \"version\": \"<string>\",\n \"availableVersions\": [\n \"<string>\"\n ],\n \"isDeprecated\": true,\n \"toolkit\": {\n \"logo\": \"<string>\"\n }\n },\n \"slug\": \"send_slack_digest\",\n \"name\": \"Send Slack digest\",\n \"description\": \"Posts a daily summary to a Slack channel\",\n \"instructions\": \"Call when the user asks to share a digest in Slack.\",\n \"toolkitSlug\": \"my-custom-toolkit\",\n \"inputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"channel\"\n ]\n },\n \"outputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"ok\": {\n \"type\": \"boolean\"\n }\n }\n },\n \"noAuth\": false,\n \"scopes\": [\n \"chat:write\"\n ],\n \"tags\": [\n \"slack\",\n \"digest\"\n ],\n \"isImportant\": false,\n \"popularityScore\": 0,\n \"type\": \"action\",\n \"availableVersions\": [\n \"1.0.0\",\n \"1.1.0\"\n ],\n \"version\": \"1.0.0\",\n \"isDeprecated\": false,\n \"isDisabled\": false,\n \"triggerThreadKey\": \"invoice.paid\",\n \"executionCreditCost\": 2\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://flowra.dev/api/v1/tools/byId/{id}")
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 \"deprecatedInfo\": {\n \"displayName\": \"<string>\",\n \"version\": \"<string>\",\n \"availableVersions\": [\n \"<string>\"\n ],\n \"isDeprecated\": true,\n \"toolkit\": {\n \"logo\": \"<string>\"\n }\n },\n \"slug\": \"send_slack_digest\",\n \"name\": \"Send Slack digest\",\n \"description\": \"Posts a daily summary to a Slack channel\",\n \"instructions\": \"Call when the user asks to share a digest in Slack.\",\n \"toolkitSlug\": \"my-custom-toolkit\",\n \"inputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"channel\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"channel\"\n ]\n },\n \"outputParameters\": {\n \"type\": \"object\",\n \"properties\": {\n \"ok\": {\n \"type\": \"boolean\"\n }\n }\n },\n \"noAuth\": false,\n \"scopes\": [\n \"chat:write\"\n ],\n \"tags\": [\n \"slack\",\n \"digest\"\n ],\n \"isImportant\": false,\n \"popularityScore\": 0,\n \"type\": \"action\",\n \"availableVersions\": [\n \"1.0.0\",\n \"1.1.0\"\n ],\n \"version\": \"1.0.0\",\n \"isDeprecated\": false,\n \"isDisabled\": false,\n \"triggerThreadKey\": \"invoice.paid\",\n \"executionCreditCost\": 2\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Operation completed successfully",
"data": {
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"slug": "gmail_send_email",
"name": "Send Email",
"description": "Sends an email via Gmail",
"instructions": "Use when the user asks to send an email.",
"toolkitSlug": "gmail",
"inputParameters": {
"type": "object",
"properties": {
"to": {
"type": "string"
}
}
},
"outputParameters": {
"type": "object",
"properties": {
"messageId": {
"type": "string"
}
}
},
"noAuth": false,
"availableVersions": [
"1.0.0"
],
"version": "1.0.0",
"scopes": [
"gmail.send"
],
"tags": [
"email"
],
"isImportant": false,
"isDeprecated": false,
"isDisabled": false,
"popularityScore": 12,
"provider": "COMPOSIO",
"type": "action",
"ragContentHash": "",
"ragSyncedAt": "2024-01-01T00:00:00.000Z",
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z",
"fieldModifiers": {},
"script": "javascript",
"executionCreditCost": 0
}
}Authorizations
Project API key. Create and manage keys in the dashboard under Project → API Keys. Send as header: x-api-key:
Path Parameters
Tool ID
"3fa85f64-5717-4562-b3fc-2c963f66afa6"
Body
Show child attributes
Show child attributes
Tool slug
100"send_slack_digest"
Tool name
200"Send Slack digest"
Tool description
"Posts a daily summary to a Slack channel"
Tool instructions
"Call when the user asks to share a digest in Slack."
Toolkit slug
100"my-custom-toolkit"
JSON Schema for tool arguments
{
"type": "object",
"properties": { "channel": { "type": "string" } },
"required": ["channel"]
}
JSON Schema for the tool result
{
"type": "object",
"properties": { "ok": { "type": "boolean" } }
}
Whether the tool requires no authentication
Required OAuth/API scopes
["chat:write"]
Tool tags
["slack", "digest"]
Whether the tool is important
Popularity score
x >= 0Tool type
action, poll, webhook Available versions
["1.0.0", "1.1.0"]
Tool version
50Whether the tool is deprecated
Whether the tool is disabled
Trigger thread key (for webhook type)
"invoice.paid"
Show child attributes
Show child attributes
Credits charged per successful execution. Omit or null for platform default (2). Admin only.
x >= 02
Response
Tool updated successfully
Success status
true
Success message
"Operation completed successfully"
Show child attributes
Show child attributes
{
"id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"slug": "gmail_send_email",
"name": "Send Email",
"description": "Sends an email via Gmail",
"instructions": "Use when the user asks to send an email.",
"toolkitSlug": "gmail",
"inputParameters": {
"type": "object",
"properties": { "to": { "type": "string" } }
},
"outputParameters": {
"type": "object",
"properties": { "messageId": { "type": "string" } }
},
"noAuth": false,
"availableVersions": ["1.0.0"],
"version": "1.0.0",
"scopes": ["gmail.send"],
"tags": ["email"],
"isImportant": false,
"isDeprecated": false,
"isDisabled": false,
"popularityScore": 12,
"provider": "COMPOSIO",
"type": "action",
"ragContentHash": "",
"ragSyncedAt": "2024-01-01T00:00:00.000Z",
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z",
"fieldModifiers": {},
"script": "javascript",
"executionCreditCost": 0
}
Was this page helpful?