API ReferenceToolkits

Upsert a custom toolkitv3.0

POST
/api/v3/custom/toolkits/upsert

Experimental: custom toolkits are in pilot and this contract may change. Creates a custom toolkit for the project with the provided slug, or updates its display metadata (name, API key field copy) when the project already owns a toolkit with that slug. app_url and auth_schemes cannot be changed on an existing toolkit: re-sending them unchanged is a no-op, changing them returns 409 (delete and re-register the toolkit instead, which revokes its connections).

Authorization

x-api-key<token>

Project API key authentication

In: header

Request Body

application/json

Toolkit creation data

slugstringRequired

Unique slug identifier for the toolkit. Your slug will be prefixed with CUSTOM_ to avoid collision with composio managed toolkits. Spaces will be converted to underscores.

toolkit_configobjectRequired

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/v3/custom/toolkits/upsert" \  -H "Content-Type: application/json" \  -d '{    "slug": "MY_TOOLKIT",    "toolkit_config": {      "name": "string",      "app_url": "http://example.com",      "auth_schemes": [        {          "mode": "NO_AUTH"        }      ]    }  }'
{  "slug": "CUSTOM_MY_TOOLKIT"}