Set a service's volumes
Replaces a service's named volumes (persistent folders mounted into the container). Volumes are matched by name: new names are created, missing ones are removed with their data. Applies on the next deploy. Services with volumes run on one node.
Needs services.update on the service (a grant on its project covers it). Available to MCP clients and the assistant, after a person approves the call.
seylo_session<token>application/json- body
serviceId*stringPanel-issued id.
^[a-z0-9]{16}$volumes*array<>items <= 20Success.
application/json- response
volumes*array<>curl -X POST 'https://example.com/api/v1/services.setVolumes' \ -H 'Content-Type: application/json' \ -d '{ "serviceId": "string", "volumes": [ { "name": "string", "mountPath": "string" } ]}'{ "volumes": [ { "id": "string", "name": "string", "mountPath": "string", "kind": "volume", "readOnly": true, "sharedWith": [ { "id": "string", "name": "string" } ] } ]}Change where a service's code or image comes from POST
Switches a service to a git URL, a Docker image, an inline Dockerfile, uploads or no source. For GitHub repositories use github.connectRepo, which checks the App can read the repo. Applies on the next deploy. Needs `services.update` on the service (a grant on its project covers it). Available to MCP clients and the assistant.
Start a stopped service POST
Starts a stopped service with its live version on its nodes. Does not deploy new code. Needs `services.control` on the service (a grant on its project covers it). Available to MCP clients and the assistant.