Install a template
Runs the template and creates its services in the project on one node, with generated passwords stored as secrets, then deploys them unless deployNow is false. Fails without creating anything when a name conflicts.
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}$slug*string^[a-z0-9][a-z0-9-]*$1 <= length <= 60name*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}$values*deployNow?booleantrueSuccess.
application/json- response
services*array<>curl -X POST 'https://example.com/api/v1/templates.create' \ -H 'Content-Type: application/json' \ -d '{ "projectId": "string", "slug": "string", "name": "string", "nodeId": "string", "values": {}}'{ "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" } ]}Preview the telemetry report GET
Returns the exact JSON the next anonymous usage report would send, where it goes and how often, whether or not telemetry is on. Needs `settings.view`, which owners and admins hold. Not available to MCP clients or the assistant.
Delete a custom template POST
Deletes a template added on this panel. Services created from it stay. Needs `templates.manage`, which owners and admins hold. Not available to MCP clients or the assistant.