curl --request POST \
--url https://flowra.dev/api/v1/toolkits \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"slug": "my-custom-toolkit",
"name": "My Custom Toolkit",
"description": "A comprehensive toolkit for custom integrations",
"logo": "https://example.com/logo.png",
"appUrl": "https://app.example.com",
"authSchemes": [
"OAUTH2",
"API_KEY"
],
"providerManagedAuthSchemes": [
"OAUTH2"
],
"noAuth": false,
"version": "1.0.0",
"popularityScore": 0,
"categories": [
"crm",
"sales-&-customer-support"
],
"baseUrl": "https://api.example.com",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
]
},
"connectedAccountInitiation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
]
}
},
"proxy": {
"baseUrl": "<string>"
},
"deprecatedAuthProviderDetails": {
"authorization_url": "<string>",
"token_url": "<string>"
}
}
],
"getCurrentUserEndpoint": "/api/user",
"regions": [
"IR",
"US"
]
}
'import requests
url = "https://flowra.dev/api/v1/toolkits"
payload = {
"slug": "my-custom-toolkit",
"name": "My Custom Toolkit",
"description": "A comprehensive toolkit for custom integrations",
"logo": "https://example.com/logo.png",
"appUrl": "https://app.example.com",
"authSchemes": ["OAUTH2", "API_KEY"],
"providerManagedAuthSchemes": ["OAUTH2"],
"noAuth": False,
"version": "1.0.0",
"popularityScore": 0,
"categories": ["crm", "sales-&-customer-support"],
"baseUrl": "https://api.example.com",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
]
},
"connectedAccountInitiation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
]
}
},
"proxy": { "baseUrl": "<string>" },
"deprecatedAuthProviderDetails": {
"authorization_url": "<string>",
"token_url": "<string>"
}
}
],
"getCurrentUserEndpoint": "/api/user",
"regions": ["IR", "US"]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
slug: 'my-custom-toolkit',
name: 'My Custom Toolkit',
description: 'A comprehensive toolkit for custom integrations',
logo: 'https://example.com/logo.png',
appUrl: 'https://app.example.com',
authSchemes: ['OAUTH2', 'API_KEY'],
providerManagedAuthSchemes: ['OAUTH2'],
noAuth: false,
version: '1.0.0',
popularityScore: 0,
categories: ['crm', 'sales-&-customer-support'],
baseUrl: 'https://api.example.com',
authConfigDetails: [
{
name: 'oauth2',
mode: 'OAUTH2',
fields: {
authConfigCreation: {
required: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
],
optional: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
]
},
connectedAccountInitiation: {
required: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
],
optional: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
]
}
},
proxy: {baseUrl: '<string>'},
deprecatedAuthProviderDetails: {authorization_url: '<string>', token_url: '<string>'}
}
],
getCurrentUserEndpoint: '/api/user',
regions: ['IR', 'US']
})
};
fetch('https://flowra.dev/api/v1/toolkits', 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/toolkits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'slug' => 'my-custom-toolkit',
'name' => 'My Custom Toolkit',
'description' => 'A comprehensive toolkit for custom integrations',
'logo' => 'https://example.com/logo.png',
'appUrl' => 'https://app.example.com',
'authSchemes' => [
'OAUTH2',
'API_KEY'
],
'providerManagedAuthSchemes' => [
'OAUTH2'
],
'noAuth' => false,
'version' => '1.0.0',
'popularityScore' => 0,
'categories' => [
'crm',
'sales-&-customer-support'
],
'baseUrl' => 'https://api.example.com',
'authConfigDetails' => [
[
'name' => 'oauth2',
'mode' => 'OAUTH2',
'fields' => [
'authConfigCreation' => [
'required' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
],
'optional' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
]
],
'connectedAccountInitiation' => [
'required' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
],
'optional' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
]
]
],
'proxy' => [
'baseUrl' => '<string>'
],
'deprecatedAuthProviderDetails' => [
'authorization_url' => '<string>',
'token_url' => '<string>'
]
]
],
'getCurrentUserEndpoint' => '/api/user',
'regions' => [
'IR',
'US'
]
]),
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/toolkits"
payload := strings.NewReader("{\n \"slug\": \"my-custom-toolkit\",\n \"name\": \"My Custom Toolkit\",\n \"description\": \"A comprehensive toolkit for custom integrations\",\n \"logo\": \"https://example.com/logo.png\",\n \"appUrl\": \"https://app.example.com\",\n \"authSchemes\": [\n \"OAUTH2\",\n \"API_KEY\"\n ],\n \"providerManagedAuthSchemes\": [\n \"OAUTH2\"\n ],\n \"noAuth\": false,\n \"version\": \"1.0.0\",\n \"popularityScore\": 0,\n \"categories\": [\n \"crm\",\n \"sales-&-customer-support\"\n ],\n \"baseUrl\": \"https://api.example.com\",\n \"authConfigDetails\": [\n {\n \"name\": \"oauth2\",\n \"mode\": \"OAUTH2\",\n \"fields\": {\n \"authConfigCreation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n },\n \"connectedAccountInitiation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n }\n },\n \"proxy\": {\n \"baseUrl\": \"<string>\"\n },\n \"deprecatedAuthProviderDetails\": {\n \"authorization_url\": \"<string>\",\n \"token_url\": \"<string>\"\n }\n }\n ],\n \"getCurrentUserEndpoint\": \"/api/user\",\n \"regions\": [\n \"IR\",\n \"US\"\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://flowra.dev/api/v1/toolkits")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"slug\": \"my-custom-toolkit\",\n \"name\": \"My Custom Toolkit\",\n \"description\": \"A comprehensive toolkit for custom integrations\",\n \"logo\": \"https://example.com/logo.png\",\n \"appUrl\": \"https://app.example.com\",\n \"authSchemes\": [\n \"OAUTH2\",\n \"API_KEY\"\n ],\n \"providerManagedAuthSchemes\": [\n \"OAUTH2\"\n ],\n \"noAuth\": false,\n \"version\": \"1.0.0\",\n \"popularityScore\": 0,\n \"categories\": [\n \"crm\",\n \"sales-&-customer-support\"\n ],\n \"baseUrl\": \"https://api.example.com\",\n \"authConfigDetails\": [\n {\n \"name\": \"oauth2\",\n \"mode\": \"OAUTH2\",\n \"fields\": {\n \"authConfigCreation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n },\n \"connectedAccountInitiation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n }\n },\n \"proxy\": {\n \"baseUrl\": \"<string>\"\n },\n \"deprecatedAuthProviderDetails\": {\n \"authorization_url\": \"<string>\",\n \"token_url\": \"<string>\"\n }\n }\n ],\n \"getCurrentUserEndpoint\": \"/api/user\",\n \"regions\": [\n \"IR\",\n \"US\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://flowra.dev/api/v1/toolkits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"slug\": \"my-custom-toolkit\",\n \"name\": \"My Custom Toolkit\",\n \"description\": \"A comprehensive toolkit for custom integrations\",\n \"logo\": \"https://example.com/logo.png\",\n \"appUrl\": \"https://app.example.com\",\n \"authSchemes\": [\n \"OAUTH2\",\n \"API_KEY\"\n ],\n \"providerManagedAuthSchemes\": [\n \"OAUTH2\"\n ],\n \"noAuth\": false,\n \"version\": \"1.0.0\",\n \"popularityScore\": 0,\n \"categories\": [\n \"crm\",\n \"sales-&-customer-support\"\n ],\n \"baseUrl\": \"https://api.example.com\",\n \"authConfigDetails\": [\n {\n \"name\": \"oauth2\",\n \"mode\": \"OAUTH2\",\n \"fields\": {\n \"authConfigCreation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n },\n \"connectedAccountInitiation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n }\n },\n \"proxy\": {\n \"baseUrl\": \"<string>\"\n },\n \"deprecatedAuthProviderDetails\": {\n \"authorization_url\": \"<string>\",\n \"token_url\": \"<string>\"\n }\n }\n ],\n \"getCurrentUserEndpoint\": \"/api/user\",\n \"regions\": [\n \"IR\",\n \"US\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Operation completed successfully",
"data": {
"id": "",
"createdAt": "",
"updatedAt": "",
"deletedAt": "2024-01-01T00:00:00.000Z",
"slug": "",
"name": "",
"description": "",
"logo": "",
"appUrl": "",
"authSchemes": [
""
],
"providerManagedAuthSchemes": [
""
],
"noAuth": true,
"isDisabled": true,
"version": "",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {},
"connectedAccountInitiation": {}
},
"proxy": {
"baseUrl": ""
},
"deprecatedAuthProviderDetails": {
"authorization_url": "",
"token_url": ""
}
}
],
"authFlow": "static_secret",
"authRecipe": {},
"popularityScore": 0,
"baseUrl": "",
"getCurrentUserEndpoint": "",
"provider": "COMPOSIO",
"project": {
"id": "",
"publicId": "",
"apiKeys": [
{
"id": "",
"key": "",
"name": "",
"description": "",
"project": {},
"projectId": "",
"isActive": true,
"expiresAt": "2024-01-01T00:00:00.000Z",
"lastUsedAt": "2024-01-01T00:00:00.000Z",
"permissions": [
""
],
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
}
],
"name": "",
"description": "",
"userId": "",
"user": {
"id": "",
"email": "",
"password": "",
"socialAccounts": [
{}
],
"firstName": "",
"lastName": "",
"roles": [
{}
],
"sessions": [
{}
],
"projects": [
{}
],
"isActive": true,
"tokenVersion": 0,
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
},
"isActive": true,
"triggerWebhookUrl": "",
"webhookSecret": "",
"identityHmacSecret": "",
"identityJwt": {
"alg": {},
"secret": "",
"jwksUrl": "",
"issuer": "",
"audience": ""
},
"application": {
"logo": "",
"title": ""
},
"apiKeysOverride": {
"OPENROUTER_API_KEY": ""
},
"allowEndUserWorkflows": true,
"allowEndUserDatabaseCollections": true,
"allowEndUserKnowledgeCollections": true,
"region": "",
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
},
"projectId": "",
"seatBilled": true,
"regions": [
""
],
"categories": [
""
],
"seo": {},
"activeStatus": true
}
}Create a new toolkit
Create a toolkit to group related tools (e.g. “Slack”, “CRM API”). You can then add tools to it and attach the toolkit to workflows and agents.
curl --request POST \
--url https://flowra.dev/api/v1/toolkits \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"slug": "my-custom-toolkit",
"name": "My Custom Toolkit",
"description": "A comprehensive toolkit for custom integrations",
"logo": "https://example.com/logo.png",
"appUrl": "https://app.example.com",
"authSchemes": [
"OAUTH2",
"API_KEY"
],
"providerManagedAuthSchemes": [
"OAUTH2"
],
"noAuth": false,
"version": "1.0.0",
"popularityScore": 0,
"categories": [
"crm",
"sales-&-customer-support"
],
"baseUrl": "https://api.example.com",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
]
},
"connectedAccountInitiation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": true,
"legacyTemplateName": "client_id"
}
]
}
},
"proxy": {
"baseUrl": "<string>"
},
"deprecatedAuthProviderDetails": {
"authorization_url": "<string>",
"token_url": "<string>"
}
}
],
"getCurrentUserEndpoint": "/api/user",
"regions": [
"IR",
"US"
]
}
'import requests
url = "https://flowra.dev/api/v1/toolkits"
payload = {
"slug": "my-custom-toolkit",
"name": "My Custom Toolkit",
"description": "A comprehensive toolkit for custom integrations",
"logo": "https://example.com/logo.png",
"appUrl": "https://app.example.com",
"authSchemes": ["OAUTH2", "API_KEY"],
"providerManagedAuthSchemes": ["OAUTH2"],
"noAuth": False,
"version": "1.0.0",
"popularityScore": 0,
"categories": ["crm", "sales-&-customer-support"],
"baseUrl": "https://api.example.com",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
]
},
"connectedAccountInitiation": {
"required": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
],
"optional": [
{
"name": "client_id",
"displayName": "Client ID",
"default": "your_client_id",
"type": "string",
"description": "Your application client ID",
"required": True,
"legacyTemplateName": "client_id"
}
]
}
},
"proxy": { "baseUrl": "<string>" },
"deprecatedAuthProviderDetails": {
"authorization_url": "<string>",
"token_url": "<string>"
}
}
],
"getCurrentUserEndpoint": "/api/user",
"regions": ["IR", "US"]
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
slug: 'my-custom-toolkit',
name: 'My Custom Toolkit',
description: 'A comprehensive toolkit for custom integrations',
logo: 'https://example.com/logo.png',
appUrl: 'https://app.example.com',
authSchemes: ['OAUTH2', 'API_KEY'],
providerManagedAuthSchemes: ['OAUTH2'],
noAuth: false,
version: '1.0.0',
popularityScore: 0,
categories: ['crm', 'sales-&-customer-support'],
baseUrl: 'https://api.example.com',
authConfigDetails: [
{
name: 'oauth2',
mode: 'OAUTH2',
fields: {
authConfigCreation: {
required: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
],
optional: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
]
},
connectedAccountInitiation: {
required: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
],
optional: [
{
name: 'client_id',
displayName: 'Client ID',
default: 'your_client_id',
type: 'string',
description: 'Your application client ID',
required: true,
legacyTemplateName: 'client_id'
}
]
}
},
proxy: {baseUrl: '<string>'},
deprecatedAuthProviderDetails: {authorization_url: '<string>', token_url: '<string>'}
}
],
getCurrentUserEndpoint: '/api/user',
regions: ['IR', 'US']
})
};
fetch('https://flowra.dev/api/v1/toolkits', 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/toolkits",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'slug' => 'my-custom-toolkit',
'name' => 'My Custom Toolkit',
'description' => 'A comprehensive toolkit for custom integrations',
'logo' => 'https://example.com/logo.png',
'appUrl' => 'https://app.example.com',
'authSchemes' => [
'OAUTH2',
'API_KEY'
],
'providerManagedAuthSchemes' => [
'OAUTH2'
],
'noAuth' => false,
'version' => '1.0.0',
'popularityScore' => 0,
'categories' => [
'crm',
'sales-&-customer-support'
],
'baseUrl' => 'https://api.example.com',
'authConfigDetails' => [
[
'name' => 'oauth2',
'mode' => 'OAUTH2',
'fields' => [
'authConfigCreation' => [
'required' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
],
'optional' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
]
],
'connectedAccountInitiation' => [
'required' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
],
'optional' => [
[
'name' => 'client_id',
'displayName' => 'Client ID',
'default' => 'your_client_id',
'type' => 'string',
'description' => 'Your application client ID',
'required' => true,
'legacyTemplateName' => 'client_id'
]
]
]
],
'proxy' => [
'baseUrl' => '<string>'
],
'deprecatedAuthProviderDetails' => [
'authorization_url' => '<string>',
'token_url' => '<string>'
]
]
],
'getCurrentUserEndpoint' => '/api/user',
'regions' => [
'IR',
'US'
]
]),
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/toolkits"
payload := strings.NewReader("{\n \"slug\": \"my-custom-toolkit\",\n \"name\": \"My Custom Toolkit\",\n \"description\": \"A comprehensive toolkit for custom integrations\",\n \"logo\": \"https://example.com/logo.png\",\n \"appUrl\": \"https://app.example.com\",\n \"authSchemes\": [\n \"OAUTH2\",\n \"API_KEY\"\n ],\n \"providerManagedAuthSchemes\": [\n \"OAUTH2\"\n ],\n \"noAuth\": false,\n \"version\": \"1.0.0\",\n \"popularityScore\": 0,\n \"categories\": [\n \"crm\",\n \"sales-&-customer-support\"\n ],\n \"baseUrl\": \"https://api.example.com\",\n \"authConfigDetails\": [\n {\n \"name\": \"oauth2\",\n \"mode\": \"OAUTH2\",\n \"fields\": {\n \"authConfigCreation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n },\n \"connectedAccountInitiation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n }\n },\n \"proxy\": {\n \"baseUrl\": \"<string>\"\n },\n \"deprecatedAuthProviderDetails\": {\n \"authorization_url\": \"<string>\",\n \"token_url\": \"<string>\"\n }\n }\n ],\n \"getCurrentUserEndpoint\": \"/api/user\",\n \"regions\": [\n \"IR\",\n \"US\"\n ]\n}")
req, _ := http.NewRequest("POST", 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.post("https://flowra.dev/api/v1/toolkits")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"slug\": \"my-custom-toolkit\",\n \"name\": \"My Custom Toolkit\",\n \"description\": \"A comprehensive toolkit for custom integrations\",\n \"logo\": \"https://example.com/logo.png\",\n \"appUrl\": \"https://app.example.com\",\n \"authSchemes\": [\n \"OAUTH2\",\n \"API_KEY\"\n ],\n \"providerManagedAuthSchemes\": [\n \"OAUTH2\"\n ],\n \"noAuth\": false,\n \"version\": \"1.0.0\",\n \"popularityScore\": 0,\n \"categories\": [\n \"crm\",\n \"sales-&-customer-support\"\n ],\n \"baseUrl\": \"https://api.example.com\",\n \"authConfigDetails\": [\n {\n \"name\": \"oauth2\",\n \"mode\": \"OAUTH2\",\n \"fields\": {\n \"authConfigCreation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n },\n \"connectedAccountInitiation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n }\n },\n \"proxy\": {\n \"baseUrl\": \"<string>\"\n },\n \"deprecatedAuthProviderDetails\": {\n \"authorization_url\": \"<string>\",\n \"token_url\": \"<string>\"\n }\n }\n ],\n \"getCurrentUserEndpoint\": \"/api/user\",\n \"regions\": [\n \"IR\",\n \"US\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://flowra.dev/api/v1/toolkits")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"slug\": \"my-custom-toolkit\",\n \"name\": \"My Custom Toolkit\",\n \"description\": \"A comprehensive toolkit for custom integrations\",\n \"logo\": \"https://example.com/logo.png\",\n \"appUrl\": \"https://app.example.com\",\n \"authSchemes\": [\n \"OAUTH2\",\n \"API_KEY\"\n ],\n \"providerManagedAuthSchemes\": [\n \"OAUTH2\"\n ],\n \"noAuth\": false,\n \"version\": \"1.0.0\",\n \"popularityScore\": 0,\n \"categories\": [\n \"crm\",\n \"sales-&-customer-support\"\n ],\n \"baseUrl\": \"https://api.example.com\",\n \"authConfigDetails\": [\n {\n \"name\": \"oauth2\",\n \"mode\": \"OAUTH2\",\n \"fields\": {\n \"authConfigCreation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n },\n \"connectedAccountInitiation\": {\n \"required\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ],\n \"optional\": [\n {\n \"name\": \"client_id\",\n \"displayName\": \"Client ID\",\n \"default\": \"your_client_id\",\n \"type\": \"string\",\n \"description\": \"Your application client ID\",\n \"required\": true,\n \"legacyTemplateName\": \"client_id\"\n }\n ]\n }\n },\n \"proxy\": {\n \"baseUrl\": \"<string>\"\n },\n \"deprecatedAuthProviderDetails\": {\n \"authorization_url\": \"<string>\",\n \"token_url\": \"<string>\"\n }\n }\n ],\n \"getCurrentUserEndpoint\": \"/api/user\",\n \"regions\": [\n \"IR\",\n \"US\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "Operation completed successfully",
"data": {
"id": "",
"createdAt": "",
"updatedAt": "",
"deletedAt": "2024-01-01T00:00:00.000Z",
"slug": "",
"name": "",
"description": "",
"logo": "",
"appUrl": "",
"authSchemes": [
""
],
"providerManagedAuthSchemes": [
""
],
"noAuth": true,
"isDisabled": true,
"version": "",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {},
"connectedAccountInitiation": {}
},
"proxy": {
"baseUrl": ""
},
"deprecatedAuthProviderDetails": {
"authorization_url": "",
"token_url": ""
}
}
],
"authFlow": "static_secret",
"authRecipe": {},
"popularityScore": 0,
"baseUrl": "",
"getCurrentUserEndpoint": "",
"provider": "COMPOSIO",
"project": {
"id": "",
"publicId": "",
"apiKeys": [
{
"id": "",
"key": "",
"name": "",
"description": "",
"project": {},
"projectId": "",
"isActive": true,
"expiresAt": "2024-01-01T00:00:00.000Z",
"lastUsedAt": "2024-01-01T00:00:00.000Z",
"permissions": [
""
],
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
}
],
"name": "",
"description": "",
"userId": "",
"user": {
"id": "",
"email": "",
"password": "",
"socialAccounts": [
{}
],
"firstName": "",
"lastName": "",
"roles": [
{}
],
"sessions": [
{}
],
"projects": [
{}
],
"isActive": true,
"tokenVersion": 0,
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
},
"isActive": true,
"triggerWebhookUrl": "",
"webhookSecret": "",
"identityHmacSecret": "",
"identityJwt": {
"alg": {},
"secret": "",
"jwksUrl": "",
"issuer": "",
"audience": ""
},
"application": {
"logo": "",
"title": ""
},
"apiKeysOverride": {
"OPENROUTER_API_KEY": ""
},
"allowEndUserWorkflows": true,
"allowEndUserDatabaseCollections": true,
"allowEndUserKnowledgeCollections": true,
"region": "",
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
},
"projectId": "",
"seatBilled": true,
"regions": [
""
],
"categories": [
""
],
"seo": {},
"activeStatus": true
}
}Authorizations
Project API key. Create and manage keys in the dashboard under Project → API Keys. Send as header: x-api-key:
Body
Toolkit slug identifier (unique)
3 - 100"my-custom-toolkit"
Toolkit display name
200"My Custom Toolkit"
Toolkit description
"A comprehensive toolkit for custom integrations"
Logo: https URL, synced global path (/public/...), or uploaded file reference file:
/^(https?:\/\/\S+|file:[0-9a-fA-F-]{36}|\/public\/\S+)$/"https://example.com/logo.png"
Application URL
"https://app.example.com"
Authentication schemes
["OAUTH2", "API_KEY"]
Provider-managed authentication schemes (e.g. Local or Composio)
["OAUTH2"]
Whether this toolkit requires no authentication
false
Toolkit version
"1.0.0"
Popularity score (ordering / ranking)
x >= 00
Curated toolkit category ids
developer-tools-&-devops, collaboration-&-communication, ai-&-machine-learning, document-&-file-management, productivity-&-project-management, crm, analytics-&-data, entertainment-&-media, education-&-lms, design-&-creative-tools, marketing-&-social-media, scheduling-&-booking, e-commerce, finance-&-accounting, sales-&-customer-support, hr-&-recruiting, social-media, workflow-automation, data-&-analytics, advertising-&-marketing ["crm", "sales-&-customer-support"]
Base URL
"https://api.example.com"
Auth config details
Show child attributes
Show child attributes
How end users connect
static_secret, cookie_paste, password, password_otp, oauth, whatsapp_qr, zernio_connect Show child attributes
Show child attributes
Get current user endpoint path
"/api/user"
ISO 3166-1 alpha-2 region codes this toolkit is available in. Empty array or null = global.
["IR", "US"]
Response
Toolkit created successfully
Success status
true
Success message
"Operation completed successfully"
Show child attributes
Show child attributes
{
"id": "",
"createdAt": "",
"updatedAt": "",
"deletedAt": "2024-01-01T00:00:00.000Z",
"slug": "",
"name": "",
"description": "",
"logo": "",
"appUrl": "",
"authSchemes": [""],
"providerManagedAuthSchemes": [""],
"noAuth": true,
"isDisabled": true,
"version": "",
"authConfigDetails": [
{
"name": "oauth2",
"mode": "OAUTH2",
"fields": {
"authConfigCreation": {},
"connectedAccountInitiation": {}
},
"proxy": { "baseUrl": "" },
"deprecatedAuthProviderDetails": { "authorization_url": "", "token_url": "" }
}
],
"authFlow": "static_secret",
"authRecipe": {},
"popularityScore": 0,
"baseUrl": "",
"getCurrentUserEndpoint": "",
"provider": "COMPOSIO",
"project": {
"id": "",
"publicId": "",
"apiKeys": [
{
"id": "",
"key": "",
"name": "",
"description": "",
"project": {},
"projectId": "",
"isActive": true,
"expiresAt": "2024-01-01T00:00:00.000Z",
"lastUsedAt": "2024-01-01T00:00:00.000Z",
"permissions": [""],
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
}
],
"name": "",
"description": "",
"userId": "",
"user": {
"id": "",
"email": "",
"password": "",
"socialAccounts": [{}],
"firstName": "",
"lastName": "",
"roles": [{}],
"sessions": [{}],
"projects": [{}],
"isActive": true,
"tokenVersion": 0,
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
},
"isActive": true,
"triggerWebhookUrl": "",
"webhookSecret": "",
"identityHmacSecret": "",
"identityJwt": {
"alg": {},
"secret": "",
"jwksUrl": "",
"issuer": "",
"audience": ""
},
"application": { "logo": "", "title": "" },
"apiKeysOverride": { "OPENROUTER_API_KEY": "" },
"allowEndUserWorkflows": true,
"allowEndUserDatabaseCollections": true,
"allowEndUserKnowledgeCollections": true,
"region": "",
"createdAt": "2024-01-01T00:00:00.000Z",
"updatedAt": "2024-01-01T00:00:00.000Z"
},
"projectId": "",
"seatBilled": true,
"regions": [""],
"categories": [""],
"seo": {},
"activeStatus": true
}
Was this page helpful?