name: sites description: '' endpoints: - httpMethods: - GET uri: 'api/projects/{project_id}/servers/{server_id}/sites' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: list description: 'Get all sites.' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 queryParameters: [] cleanQueryParameters: [] bodyParameters: [] cleanBodyParameters: [] fileParameters: [] responses: - status: 200 content: '{"data":[{"id":50,"server_id":1,"source_control_id":null,"type":"laravel","type_data":null,"domain":"test.com","aliases":null,"web_directory":"\/","path":"\/home","php_version":"8.2","repository":null,"branch":"main","status":"ready","port":null,"user":"vito","progress":100,"created_at":"2025-04-21T18:40:20.000000Z","updated_at":"2025-04-21T18:40:20.000000Z"},{"id":51,"server_id":1,"source_control_id":null,"type":"laravel","type_data":null,"domain":"test.com","aliases":null,"web_directory":"\/","path":"\/home","php_version":"8.2","repository":null,"branch":"main","status":"ready","port":null,"user":"vito","progress":100,"created_at":"2025-04-21T18:40:20.000000Z","updated_at":"2025-04-21T18:40:20.000000Z"}],"links":{"first":"\/?page=1","last":"\/?page=1","prev":null,"next":null},"meta":{"current_page":1,"from":1,"last_page":1,"links":[{"url":null,"label":"« Previous","active":false},{"url":"\/?page=1","label":"1","active":true},{"url":null,"label":"Next »","active":false}],"path":"\/","per_page":25,"to":2,"total":2}}' headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - POST uri: 'api/projects/{project_id}/servers/{server_id}/sites' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: create description: 'Create a new site.' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 queryParameters: [] cleanQueryParameters: [] bodyParameters: type: name: type description: '' required: true example: load-balancer type: string enumValues: - php - php-blank - phpmyadmin - laravel - wordpress - load-balancer exampleWasSpecified: false nullable: false custom: [] domain: name: domain description: '' required: true example: consequatur type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] aliases: name: aliases description: '' required: true example: - consequatur type: 'string[]' enumValues: [] exampleWasSpecified: false nullable: false custom: [] php_version: name: php_version description: 'One of the installed PHP Versions' required: true example: '7.4' type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] web_directory: name: web_directory description: 'Required for PHP and Laravel sites' required: true example: public type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] source_control: name: source_control description: 'Source control ID, Required for Sites which support source control' required: true example: consequatur type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] repository: name: repository description: 'Repository, Required for Sites which support source control' required: true example: organization/repository type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] branch: name: branch description: 'Branch, Required for Sites which support source control' required: true example: main type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] composer: name: composer description: 'Run composer if site supports composer' required: true example: true type: boolean enumValues: [] exampleWasSpecified: false nullable: false custom: [] version: name: version description: 'Version, if the site type requires a version like PHPMyAdmin' required: true example: 5.2.1 type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] user: name: user description: 'user, to isolate the website under a new user' required: true example: consequatur type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] method: name: method description: 'Load balancer method, Required if the site type is Load balancer' required: true example: ip-hash type: string enumValues: - round-robin - least-connections - ip-hash exampleWasSpecified: false nullable: false custom: [] cleanBodyParameters: type: load-balancer domain: consequatur aliases: - consequatur php_version: '7.4' web_directory: public source_control: consequatur repository: organization/repository branch: main composer: true version: 5.2.1 user: consequatur method: ip-hash fileParameters: [] responses: - status: 200 content: '{"id":50,"server_id":1,"source_control_id":null,"type":"laravel","type_data":null,"domain":"test.com","aliases":null,"web_directory":"\/","path":"\/home","php_version":"8.2","repository":null,"branch":"main","status":"ready","port":null,"user":"vito","progress":100,"created_at":"2025-04-21T18:40:20.000000Z","updated_at":"2025-04-21T18:40:20.000000Z"}' headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - GET uri: 'api/projects/{project_id}/servers/{server_id}/sites/{id}' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: show description: 'Get a site by ID.' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] id: name: id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: [] cleanBodyParameters: [] fileParameters: [] responses: - status: 200 content: '{"id":50,"server_id":1,"source_control_id":null,"type":"laravel","type_data":null,"domain":"test.com","aliases":null,"web_directory":"\/","path":"\/home","php_version":"8.2","repository":null,"branch":"main","status":"ready","port":null,"user":"vito","progress":100,"created_at":"2025-04-21T18:40:20.000000Z","updated_at":"2025-04-21T18:40:20.000000Z"}' headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - DELETE uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: delete description: 'Delete site.' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: [] cleanBodyParameters: [] fileParameters: [] responses: - status: 204 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - POST uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/load-balancer' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: load-balancer description: 'Update load balancer.' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: method: name: method description: 'Load balancer method, Required if the site type is Load balancer' required: true example: ip-hash type: string enumValues: - round-robin - least-connections - ip-hash exampleWasSpecified: false nullable: false custom: [] servers: name: servers description: 'Array of servers including server, port, weight, backup. (server is the local IP of the server)' required: true example: - consequatur type: 'string[]' enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanBodyParameters: method: ip-hash servers: - consequatur fileParameters: [] responses: - status: 200 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - PUT uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/aliases' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: aliases description: 'Update aliases.' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: aliases: name: aliases description: 'Array of aliases' required: true example: - consequatur type: 'string[]' enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanBodyParameters: aliases: - consequatur fileParameters: [] responses: - status: 200 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - POST uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/deploy' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: deploy description: 'Run site deployment script' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: [] cleanBodyParameters: [] fileParameters: [] responses: - status: 200 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - PUT uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/deployment-script' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: deployment-script description: 'Update site deployment script' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: script: name: script description: 'Content of the deployment script' required: true example: consequatur type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanBodyParameters: script: consequatur fileParameters: [] responses: - status: 204 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - GET uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/deployment-script' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: deployment-script description: 'Get site deployment script content' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: [] cleanBodyParameters: [] fileParameters: [] responses: - status: 200 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - GET uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/env' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: env description: 'Get site .env file content' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: [] cleanBodyParameters: [] fileParameters: [] responses: - status: 200 content: '{"data":{"env":"APP_NAME=Laravel\\nAPP_ENV=production"}}' headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: [] - httpMethods: - PUT uri: 'api/projects/{project_id}/servers/{server_id}/sites/{site_id}/env' metadata: groupName: sites groupDescription: '' subgroup: '' subgroupDescription: '' title: env description: 'Update site .env file' authenticated: false custom: [] headers: Content-Type: application/json Accept: application/json urlParameters: project_id: name: project_id description: 'The ID of the project.' required: true example: 1 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] server_id: name: server_id description: 'The ID of the server.' required: true example: 32 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] site_id: name: site_id description: 'The ID of the site.' required: true example: 17 type: integer enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanUrlParameters: project_id: 1 server_id: 32 site_id: 17 queryParameters: [] cleanQueryParameters: [] bodyParameters: env: name: env description: 'Content of the .env file' required: true example: consequatur type: string enumValues: [] exampleWasSpecified: false nullable: false custom: [] cleanBodyParameters: env: consequatur fileParameters: [] responses: - status: 200 content: null headers: [] description: '' custom: [] responseFields: [] auth: [] controller: null method: null route: null custom: []