List the code tools the workspace's installed apps ship, at the version each install runs, with their input and output schemas. Requires read access and the Apps module. Returns the complete set in one page; nextCursor is always null. Workspace API keys return 403; use a personal API key or scoped OAuth token.
OAuth scope: api:read.
GET
/api/v2/apps/toolsX-API-Key<token>
Your Agent Serve API key, personal or workspace-scoped. Generate one under Settings, then API Keys. Operations that reject workspace keys say so in their own description.
In: header
Query Parameters
workspaceId*string
Workspace the request is authorized against.
Length
1 <= length <= 128installId?string
Only the tools of this install.
Length
1 <= length <= 64Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://agentserve.valnoraelric.com/api/v2/apps/tools?workspaceId=string" \ -H "X-API-Key: YOUR_API_KEY"{
"data": [
{
"reference": "string",
"name": "string",
"description": "string",
"effect": "read",
"language": "javascript",
"inputSchema": {
"property1": null,
"property2": null
},
"outputSchema": {
"property1": null,
"property2": null
},
"timeoutMs": -9007199254740991,
"appId": "string",
"appSlug": "string",
"installId": "string",
"versionId": "string",
"version": "string"
}
],
"nextCursor": "string"
}{
"error": {
"code": "BAD_REQUEST",
"message": "Invalid request"
}
}{
"error": {
"code": "UNAUTHORIZED",
"message": "Authentication required"
}
}{
"error": {
"code": "FORBIDDEN",
"message": "Insufficient workspace permissions",
"details": {
"code": "INSUFFICIENT_WORKSPACE_ROLE"
}
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Not found"
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "API rate limit exceeded",
"details": {
"retryAfter": "2026-01-01T00:00:30.000Z"
}
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Internal server error"
}
}{
"error": {
"code": "SERVICE_UNAVAILABLE",
"message": "Service temporarily unavailable"
}
}