Set a service's maintenance page
Turns a service's maintenance mode on or off and sets its own page or message. Fields left out keep their value; html null falls back to the global page. Takes effect on the node right away, without a deploy.
Needs services.edit on the service (a grant on its project covers it). Available to MCP clients and the assistant.
seylo_session<token>application/json- body
serviceId*stringPanel-issued id.
^[a-z0-9]{16}$enabled?booleanmessage?stringShort text shown on the default page.
length <= 500html?|nullSuccess.
application/json- response
serviceId*stringPanel-issued id.
^[a-z0-9]{16}$enabled*booleanmessage*stringhtml*|nullpageSource*string|string|stringglobalEnabled*booleanupdatedAt*|nullcurl -X POST 'https://example.com/api/v1/maintenance.set' \ -H 'Content-Type: application/json' \ -d '{ "serviceId": "string"}'{ "serviceId": "string", "enabled": true, "message": "string", "html": "string", "pageSource": "service", "globalEnabled": true, "updatedAt": "2019-08-24T14:15:22Z"}Preview a maintenance page GET
Returns the HTML visitors would see: the service's page when serviceId is given, otherwise the global page, with the message filled in. The web app shows it in a sandboxed frame. Any signed-in caller. Not available to MCP clients or the assistant.
Set the global maintenance page POST
Turns panel-wide maintenance mode on or off and sets the global page and message. Fields left out keep their value; html null goes back to the built-in page. The Panel project is never put in maintenance. Needs `settings.edit`, which owners and admins hold. Available to MCP clients and the assistant.