Import Tools
POST /tools/importCreate one ordinary remote_protocol row per selected remote tool (D-5354).
Each row is pinned by selected_tools to the single tool it may call, so its
effect, its guardrails and any approval rule naming its slug describe exactly one
remote operation. 409 when a slug is already taken: re-importing never overwrites.
Request body — ToolImportRequest
Section titled “Request body — ToolImportRequest”| Field | Type | Notes | |
|---|---|---|---|
config | object | required | — |
secrets_required | string[] | optional | — |
prefix | string | required | — |
scope | workspace | organization | platform | null | optional | — |
tools | ToolImportSelection[] | required | — |
Responses
Section titled “Responses”| Status | Description | Body |
|---|---|---|
201 | Successful Response | — |
422 | Validation Error | HTTPValidationError |
Example
Section titled “Example”The body shows the fields the schema always carries. Which combination is legal is a service rule the schema cannot express, so read the description above before copying this.
curl -X POST https://your-deployment.example.com/tools/import \ -H "Authorization: Bearer $COBRE_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "config": {}, "prefix": "string", "tools": [ {} ] }'