Tools
Tool management operations
Tool management operations
List tools
List tools with cursor pagination. Optionally filter by workflow usage.
Query Parameters
project?string
Project override
workflow_id?string
Return only tools referenced by the given workflow
limit?integer
Page size (max 500)
cursor?string
Opaque pagination cursor
q?string
Filter by tool ID prefix
Response Body
curl -X GET "https://loading/api/v0/tools?project=string&workflow_id=string&limit=0&cursor=string&q=string"
{
"data": {
"page": {
"limit": 50,
"next_cursor": "v2:after:tool-001",
"prev_cursor": "v2:before:tool-000",
"total": 2
},
"tools": [
{
"config": {
"property1": null,
"property2": null
},
"cwd": "string",
"description": "string",
"env": {
"property1": "string",
"property2": "string"
},
"etag": "abc123",
"id": "string",
"input": {
"property1": null,
"property2": null
},
"output": {
"property1": null,
"property2": null
},
"resource": "string",
"timeout": "string",
"with": {
"property1": null,
"property2": null
}
}
]
},
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
curl -X POST "https://loading/api/v0/tools/export"
{
"data": {
"property1": 0,
"property2": 0
},
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"data": null,
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
Import tools
Read tool YAML files from the project directory.
Query Parameters
strategy?string
seed_only|overwrite_conflicts
Value in
"seed_only" | "overwrite_conflicts"
Response Body
curl -X POST "https://loading/api/v0/tools/import?strategy=seed_only"
{
"data": {},
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"data": null,
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"data": null,
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
Get tool
Retrieve a tool configuration by ID.
Path Parameters
tool_idstring
Tool ID
Query Parameters
project?string
Project override
Response Body
curl -X GET "https://loading/api/v0/tools/string?project=string"
{
"data": {
"config": {
"property1": null,
"property2": null
},
"cwd": "string",
"description": "string",
"env": {
"property1": "string",
"property2": "string"
},
"id": "string",
"input": {
"property1": null,
"property2": null
},
"output": {
"property1": null,
"property2": null
},
"resource": "string",
"timeout": "string",
"with": {
"property1": null,
"property2": null
}
},
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
Delete tool
Delete a tool configuration. Returns conflict when referenced.
Path Parameters
tool_idstring
Tool ID
Query Parameters
project?string
Project override
Response Body
curl -X DELETE "https://loading/api/v0/tools/string?project=string"
"string"
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
Create or update tool
Create a tool configuration when absent or update an existing one using strong ETag concurrency.
Path Parameters
tool_idstring
Tool ID
Query Parameters
project?string
Project override
Header Parameters
If-Match?string
Strong ETag for optimistic concurrency
Tool configuration payload
Empty Object
Response Body
curl -X PUT "https://loading/api/v0/tools/string?project=string" \
-H "If-Match: string" \
-H "Content-Type: application/json" \
-d '{}'
{
"data": {
"config": {
"property1": null,
"property2": null
},
"cwd": "string",
"description": "string",
"env": {
"property1": "string",
"property2": "string"
},
"id": "string",
"input": {
"property1": null,
"property2": null
},
"output": {
"property1": null,
"property2": null
},
"resource": "string",
"timeout": "string",
"with": {
"property1": null,
"property2": null
}
},
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"data": {
"config": {
"property1": null,
"property2": null
},
"cwd": "string",
"description": "string",
"env": {
"property1": "string",
"property2": "string"
},
"id": "string",
"input": {
"property1": null,
"property2": null
},
"output": {
"property1": null,
"property2": null
},
"resource": "string",
"timeout": "string",
"with": {
"property1": null,
"property2": null
}
},
"error": {
"code": "string",
"details": "string",
"message": "string"
},
"message": "string",
"status": 0
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}
{
"code": "invalid_cursor",
"detail": "Invalid cursor parameter",
"instance": "/api/v0/workflows",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}