List a project's services
Lists the services of a project with their kind, live status, source line, address, nodes, current CPU and memory, and live version. Compose members follow their stack.
Needs services.view on the project. Available to MCP clients and the assistant.
seylo_session<token>projectId*stringPanel-issued id.
^[a-z0-9]{16}$Success.
application/json- response
services*array<>curl -X GET 'https://example.com/api/v1/services.list?projectId=string'{ "services": [ { "id": "string", "projectId": "string", "name": "string", "kind": "app", "parentId": "string", "status": "idle", "source": { "type": "github", "label": "string", "branch": "string", "builder": "railpack" }, "address": "string", "placements": [ { "nodeId": "string", "nodeName": "string", "replicas": 1 } ], "cpuPercent": 0, "memoryBytes": 0, "memoryLimitBytes": 0, "liveDeployment": { "id": "string", "label": "string", "createdAt": "2019-08-24T14:15:22Z" }, "lastDeployedAt": "2019-08-24T14:15:22Z", "protected": true, "templateSlug": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ]}Get a service GET
Returns one service with its live status and every setting the service page shows. Needs `services.view` on the service (a grant on its project covers it). Available to MCP clients and the assistant.
Move a service to another node POST
Moves a single-node service to another node: deploys it there, copies its volumes while the old copy is stopped, switches traffic, then removes the old copy. Progress shows as a deployment with trigger move; on failure the service stays on the old node. Needs `services.move` on the service (a grant on its project covers it). Available to MCP clients and the assistant.