Get a service
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.
seylo_session<token>serviceId*stringPanel-issued id.
^[a-z0-9]{16}$Success.
application/json- response
id*stringPanel-issued id.
^[a-z0-9]{16}$projectId*stringPanel-issued id.
^[a-z0-9]{16}$name*stringDNS-safe; the service's host name on the project network. Unique in its project.
^[a-z0-9]([a-z0-9-]*[a-z0-9])?$1 <= length <= 40kind*||||||||Compose members have kind app and a parentId naming their stack.
parentId*|nullstatus*string|string|string|string|string|string|string|string|string|stringsource*address*string|nullplacements*array<>cpuPercent*|nullmemoryBytes*|nullmemoryLimitBytes*|nullliveDeployment*|nulllastDeployedAt*|nullprotected*booleantemplateSlug*string|nullcreatedAt*stringdate-timeupdatedAt*stringdate-timestopped*booleangeneration*integer1 <= valuesourceConfig*|||||build*container*ports*array<>healthCheck*|nullcrashPolicy*restartDelaySeconds*integer0 <= valueresources*deploy*cron*|nullstickySessions*booleanentryNodeId*|nullnotes*stringmembers*array<>volumes*array<>curl -X GET 'https://example.com/api/v1/services.get?serviceId=string'{ "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", "stopped": true, "generation": 1, "sourceConfig": { "type": "github", "installationId": "string", "repo": "string", "branch": "string", "deployOnPush": true }, "build": { "builder": "railpack", "contextPath": "string", "dockerfilePath": "string", "inlineDockerfile": "string", "targetStage": "string", "buildNodeId": "string", "startCommand": "string", "installCommand": "string", "buildCommand": "string" }, "container": { "command": [ "string" ], "entrypoint": [ "string" ], "workingDir": "string", "user": "string", "stopSignal": "string", "stopGraceSeconds": 1 }, "ports": [ { "containerPort": 1, "protocol": "tcp" } ], "healthCheck": { "probe": { "type": "tcp", "port": 1 }, "intervalSeconds": 1, "timeoutSeconds": 1, "startPeriodSeconds": 0, "failureThreshold": 1 }, "crashPolicy": { "restart": true, "stopAfterCrashes": 0 }, "restartDelaySeconds": 0, "resources": { "memoryLimitBytes": 6291456, "memoryReservationBytes": 0, "cpuWeight": 1, "pidsLimit": 16 }, "deploy": { "mode": "rolling", "healthTimeoutSeconds": 10 }, "cron": { "schedule": "stringstr", "timeZone": "string", "command": [ "string" ], "timeoutSeconds": 1, "concurrency": "forbid" }, "stickySessions": true, "entryNodeId": "string", "notes": "string", "members": [ { "id": "string", "name": "string", "status": "idle" } ], "volumes": [ { "id": "string", "name": "string", "mountPath": "string", "kind": "volume", "readOnly": true, "sharedWith": [ { "id": "string", "name": "string" } ] } ]}Delete a service POST
Deletes a service with its containers, volumes, files, domains, deploy history and kept images on every node. Deleting a compose stack deletes its members. Protected services cannot be deleted. The caller repeats the service name to confirm. Needs `services.delete` on the service (a grant on its project covers it). Available to MCP clients and the assistant, after a person approves the call.
List a project's services GET
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.