Preview a compose stack
Parses a compose file and shows the member services it would create in the project, with ports, volumes, dependencies and warnings. Creates nothing. It is a POST (mutation) only because the file is too large for a query string.
Needs services.create on the project. Available to MCP clients and the assistant.
seylo_session<token>application/json- body
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 <= 40nodeId*stringPanel-issued id.
^[a-z0-9]{16}$source*||Success.
application/json- response
members*array<>warnings*array<string>curl -X POST 'https://example.com/api/v1/compose.preview' \ -H 'Content-Type: application/json' \ -d '{ "projectId": "string", "name": "string", "nodeId": "string", "source": { "type": "inline", "yaml": "string" }}'{ "members": [ { "composeService": "string", "name": "string", "action": "create", "image": "string", "ports": [ 1 ], "volumes": [ { "name": "string", "mountPath": "string", "sharedWith": [ "string" ] } ], "dependsOn": [ "string" ], "envKeys": [ "string" ], "hasHealthCheck": true } ], "warnings": [ "string" ]}Get a compose stack's file GET
Returns where a stack's compose file comes from (with the pasted file) and the member services it created. Needs `services.view` on the service (a grant on its project covers it). Available to MCP clients and the assistant.
Change a compose stack's file POST
Replaces a stack's compose file. With dryRun the result is the member diff (create, update, delete) and nothing changes; without it members are created, updated or deleted to match, and changed members are deployed. 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.