### GET /static/webapps/installers Source: https://runcloud.io/docs/api/static-data Retrieves a list of available web application installers that can be used with RunCloud. ```APIDOC ## GET /static/webapps/installers ### Description Retrieves a list of available web application installers that can be used with RunCloud. ### Method GET ### Endpoint /static/webapps/installers ### Parameters #### Query Parameters None #### Request Body None ### Request Example ```bash curl --request GET \ --url https://manage.runcloud.io/api/v2/static/webapps/installers \ -u YOUR_API_KEY:YOUR_API_SECRET \ --header 'accept: application/json' \ --header 'content-type: application/json' ``` ### Response #### Success Response (200) - **installers** (array) - A list of strings, where each string is the name of an available web application installer. #### Response Example ```json [ "concrete5", "drupal", "grav", "gravadmin", "joomla", "myBB", "phpBB", "phpMyAdmin", "piwik", "prestaShop", "wordpress" ] ``` ``` -------------------------------- ### GET /servers/{serverId}/webapps/{webAppId}/installer Source: https://runcloud.io/docs/api/v3/api-9010486 Retrieve the PHP script installer object for a specific web application. ```APIDOC ## GET /servers/{serverId}/webapps/{webAppId}/installer ### Description Retrieves the details of the PHP script installer associated with a specific web application on a given server. ### Method GET ### Endpoint /servers/{serverId}/webapps/{webAppId}/installer ### Parameters #### Path Parameters - **serverId** (string) - Required - The unique identifier of the server. - **webAppId** (string) - Required - The unique identifier of the web application. ### Request Example GET https://manage.runcloud.io/api/v3/servers/123/webapps/456/installer ### Response #### Success Response (200) - **id** (integer) - Script installer ID - **name** (string) - Name of script installer - **realName** (string) - Real name of script installer - **created_at** (string) - Time script installer was created at #### Response Example { "id": 79, "name": "phpMyAdmin", "realName": "phpMyAdmin", "created_at": "2024-07-31 02:17:55" } ``` -------------------------------- ### GET /servers/{serverId}/installationscript Source: https://runcloud.io/docs/api/v3/api-8617077 Retrieves the installation script used to install the RunCloud Agent on a specific server. ```APIDOC ## GET /servers/{serverId}/installationscript ### Description Retrieves the shell script required to install the RunCloud Agent on the specified server. This script automates the configuration and installation process. ### Method GET ### Endpoint /servers/{serverId}/installationscript ### Parameters #### Path Parameters - **serverId** (string) - Required - The unique identifier of the server. #### Header Parameters - **accept** (string) - Required - Must be set to 'application/json'. ### Request Example ```json {} ``` ### Response #### Success Response (200) - **script** (string) - The installation script to install the RunCloud Agent in the server. #### Response Example ```json { "script": "export DEBIAN_FRONTEND=noninteractive; echo 'Acquire::ForceIPv4 \"true\";' | tee /etc/apt/apt.conf.d/99force-ipv4; apt-get update; apt-get install curl netcat-openbsd -y; curl -4 --silent -k --location https://agency-27032023.runcloud.dev/scripts/installer/... | bash -; export DEBIAN_FRONTEND=newt" } ``` ``` -------------------------------- ### Retrieve Installation Script via OpenAPI Source: https://runcloud.io/docs/api/v3/api-8617077 This OpenAPI specification defines a GET request to retrieve the installation script for a specific server. It requires a bearer token for authentication and returns a JSON object containing the shell script necessary to install the RunCloud Agent. ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /servers/serverId/installationscript: get: summary: Installation Script security: - bearer: [] responses: '200': description: 'Success' content: application/json: schema: type: object properties: script: type: string description: 'Installation script to install RunCloud Agent in the server' ``` -------------------------------- ### GET /static/webapps/installers Source: https://runcloud.io/docs/api/v3/api-8617064 Retrieves a comprehensive list of all script installers currently supported and available in RunCloud. ```APIDOC ## GET /static/webapps/installers ### Description Request to get all the script installers that are currently available in RunCloud. ### Method GET ### Endpoint https://manage.runcloud.io/api/v3/static/webapps/installers ### Parameters None ### Request Example N/A ### Response #### Success Response (200) - **data** (array) - A list of strings representing available script installers (e.g., wordpress, joomla). #### Response Example [ "concrete5", "drupal", "grav", "gravadmin", "joomla", "myBB", "octobercms", "phpBB", "phpMyAdmin", "piwik", "prestaShop", "wordpress" ] ``` -------------------------------- ### POST /servers/{serverId}/webapps/{webAppId}/installer Source: https://runcloud.io/docs/api/v3/api-9010337 Installs a specified PHP script (e.g., WordPress, Drupal) onto a web application within a server. Requires server ID, web app ID, and the name of the script to install. ```APIDOC ## POST /servers/{serverId}/webapps/{webAppId}/installer ### Description Installs a specified PHP script onto a web application. This endpoint allows for the automated installation of popular content management systems and tools. ### Method POST ### Endpoint `/servers/{serverId}/webapps/{webAppId}/installer` ### Parameters #### Path Parameters - **serverId** (string) - Required - The ID of the server. - **webAppId** (string) - Required - The ID of the web application. #### Header Parameters - **content-type** (string) - Required - The content type of the request, must be `application/json`. #### Request Body - **name** (string) - Required - The name of the script installer. Available options: `concrete5`, `drupal`, `grav`, `gravadmin`, `joomla`, `myBB`, `phpBB`, `phpMyAdmin`, `piwik`, `prestaShop`, `wordpress`. ### Request Example ```json { "name": "wordpress" } ``` ### Response #### Success Response (200) - **id** (integer) - The ID of the installed script. - **name** (string) - The name of the script installer. - **realName** (string) - The real name of the script installer. - **created_at** (string) - The timestamp when the script installer was created. #### Response Example ```json { "id": 78, "name": "wordpress", "realName": "WordPress", "created_at": "2024-07-31 02:14:38" } ``` ``` -------------------------------- ### Retrieve Available Script Installers via RunCloud API Source: https://runcloud.io/docs/api/static-data Lists all web application script installers available for deployment. Useful for populating selection menus in automated deployment tools. ```bash curl --request GET \ --url https://manage.runcloud.io/api/v2/static/webapps/installers \ -u YOUR_API_KEY:YOUR_API_SECRET \ --header 'accept: application/json' \ --header 'content-type: application/json' ``` -------------------------------- ### GET /servers/{id}/installationscript Source: https://runcloud.io/docs/api/servers Retrieves the installation script for a specific server. This script is used to install the RunCloud agent on a new server. ```APIDOC ## GET /servers/{id}/installationscript ### Description Retrieves the installation script for a specific server. This script is used to install the RunCloud agent on a new server. ### Method GET ### Endpoint `/servers/{id}/installationscript` ### Parameters #### Path Parameters - **id** (integer) - Required - The unique identifier of the server. ### Request Example ```bash curl --request GET \ --url https://manage.runcloud.io/api/v2/servers/65/installationscript \ -u YOUR_API_KEY:YOUR_API_SECRET \ --header 'accept: application/json' \ --header 'content-type: application/json' ``` ### Response #### Success Response (200) - **script** (string) - The installation script content. #### Response Example ```json { "script": "export DEBIAN_FRONTEND=noninteractive; echo 'Acquire::ForceIPv4 \"true\";' | tee /etc/apt/apt.conf.d/99force-ipv4; apt-get update; apt-get install curl netcat-openbsd -y; curl --silent --location https://manage.runcloud.io/scripts/installer/cix510RbawOVExZANlzgUqcU9E1561024841dzRy0jIa3F0d7ibg4J94xSl1yB0dDBy0IJrIYMkjX2lNfu8JOY8gWbGB4tMWUwsw/d5fUlLVNYMvhm3c7LXGnTFgYw6KzN1qHNMc3ibafsyRWWICkGZseQ6OFtzARZiULAYTRwf9maKraHdtBCgZWgiCNNZx9Tqx8HVTL2XVivy56kD4MrHImxJJujeGNQCIk | bash -; export DEBIAN_FRONTEND=newt" } ``` ``` -------------------------------- ### GET /git-projects Source: https://runcloud.io/docs/api/v3/api-9011583 Retrieves the structure and properties of a GIT project configuration. ```APIDOC ## GET /git-projects ### Description Retrieves the configuration details for a specific GIT project, including repository data, deployment settings, and atomic project status. ### Method GET ### Endpoint https://manage.runcloud.io/api/v3/git-projects ### Parameters #### Request Body - **id** (string) - Required - Unique identifier of the project - **provider** (string) - Required - GIT provider name - **gitHost** (string) - Required - Hostname of the GIT service - **gitUser** (string) - Required - Username of the GIT account - **branch** (string) - Required - Target branch name - **repositoryData** (object) - Required - Repository data containing 'url' and 'repo' - **atomic** (boolean) - Required - Whether the project is atomic - **atomic_project_id** (null) - Required - Atomic project ID - **autoDeploy** (boolean) - Required - Enable auto deploy status - **deployScript** (null) - Required - Deployment script content - **created_at** (string) - Required - Timestamp of when the project was cloned ### Request Example { "id": "12345", "provider": "github", "gitHost": "github.com", "gitUser": "user", "branch": "main", "repositoryData": { "url": "https://github.com/user/repo", "repo": "user/repo" }, "atomic": true, "atomic_project_id": null, "autoDeploy": true, "deployScript": null, "created_at": "2023-01-01T00:00:00Z" } ### Response #### Success Response (200) - **id** (string) - Project ID - **repositoryData** (object) - Repository details #### Response Example { "id": "12345", "status": "success" } ``` -------------------------------- ### Get Available Script Installers (OpenAPI) Source: https://runcloud.io/docs/api/v3/api-8617064 This snippet defines the OpenAPI 3.0.1 specification for an API endpoint that retrieves a list of all script installers available in RunCloud. It specifies the GET method for the '/static/webapps/installers' path and outlines the successful response, which is a JSON array of strings representing installer names. ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /static/webapps/installers: get: summary: Available script installer deprecated: false description: >- Request to get all the script installers that are currently available in RunCloud tags: - Static Data parameters: [] responses: '200': description: '' content: application/json: schema: type: array items: type: string description: Listing of all script installers in RunCloud example: - concrete5 - drupal - grav - gravadmin - joomla - myBB - octobercms - phpBB - phpMyAdmin - piwik - prestaShop - wordpress headers: {} x-apidog-name: Success security: - bearer: [] x-apidog-folder: Static Data x-apidog-status: released x-run-in-apidog: https://app.apidog.com/web/project/600229/apis/api-8617064-run components: schemas: {} securitySchemes: bearer: type: http scheme: bearer servers: - url: https://manage.runcloud.io/api/v3 description: API Docs security: [] ``` -------------------------------- ### POST /backups Source: https://runcloud.io/docs/api/v3/api-8898871 Create a new backup instance for a specific web application or database using RunCloud, local, or external storage. ```APIDOC ## POST /backups ### Description Creates a new backup task for a web application or database. You must provide either a `webApplicationId` or a `databaseId` to specify the target. ### Method POST ### Endpoint /backups ### Parameters #### Request Body - **name** (string) - Required - Backup name - **webApplicationId** (integer) - Optional - ID of Web Application to backup - **databaseId** (integer) - Optional - ID of Database to backup - **backupType** (string) - Required - Type of backup ('incremental' or 'full') - **storage** (string) - Required - Storage location ('runcloud', 'local', or 'external') - **integrationId** (integer) - Optional - ID of 3rd Party API for external storage - **format** (string) - Required - Backup format ('tar' or 'tar.gz') - **frequency** (string) - Required - Backup frequency - **retention** (string) - Required - Retention period - **excludeDevelopmentFiles** (boolean) - Optional - Exclude dev files (default: true) - **excludeWordpressCacheFiles** (boolean) - Optional - Exclude WP cache (default: true) - **successNotification** (boolean) - Optional - Notify on success (default: false) - **failNotification** (boolean) - Optional - Notify on failure (default: true) - **excludeFile** (array) - Optional - List of files to exclude - **excludeTable** (array) - Optional - List of database tables to exclude ### Request Example { "name": "Test external Backup Via API2", "webApplicationId": 187, "databaseId": 123, "backupType": "full", "storage": "runcloud", "format": "tar", "frequency": "1 week", "retention": "1 month", "excludeDevelopmentFiles": true, "excludeWordpressCacheFiles": true, "successNotification": true, "failNotification": true, "excludeFile": ["wp-config.php", "index.php"], "excludeTable": ["wp-posts"] } ### Response #### Success Response (200) - **status** (string) - Confirmation of backup creation ``` -------------------------------- ### Get Domain Name DNS Setup Instruction Source: https://runcloud.io/docs/api/v3/api-8617115 Retrieves the DNS setup instructions for a specific domain name associated with a web application on a server. ```APIDOC ## GET /servers/{serverId}/webapps/{webappId}/domains/{domainId}/dns ### Description Retrieves the DNS setup instructions for a specific domain name associated with a web application on a server. ### Method GET ### Endpoint /servers/{serverId}/webapps/{webappId}/domains/{domainId}/dns ### Parameters #### Path Parameters - **serverId** (string) - Required - The ID of the server. - **webappId** (string) - Required - The ID of the web application. - **domainId** (string) - Required - The ID of the domain. ### Request Example ```json { "example": "No request body needed for this GET request." } ``` ### Response #### Success Response (200) - **type** (string) - Record type (e.g., A, CNAME). - **hostname** (string) - Domain name. - **content** (string) - The value for the DNS record. #### Response Example ```json { "example": [ { "type": "A", "hostname": "schimmel.alirahman.site", "content": "139.162.123.253" }, { "type": "CNAME", "hostname": "www.schimmel.alirahman.site", "content": "schimmel.alirahman.site" } ] } ``` ``` -------------------------------- ### POST /servers Source: https://runcloud.io/docs/api/v2 Creates a new server instance within the RunCloud management platform. ```APIDOC ## POST /servers ### Description Initiates the creation of a new server managed by RunCloud. ### Method POST ### Endpoint /servers ### Parameters #### Request Body - **name** (string) - Required - The name of the server - **ip_address** (string) - Required - The public IP address of the server - **server_provider** (string) - Required - The cloud provider name ### Request Example { "name": "production-web-01", "ip_address": "192.168.1.1", "server_provider": "digitalocean" } ### Response #### Success Response (200) - **id** (integer) - The unique identifier of the created server - **status** (string) - Current status of the server #### Response Example { "id": 12345, "status": "provisioning" } ``` -------------------------------- ### POST /servers/{serverId}/webapps/{webappId}/wordpress/staging Source: https://runcloud.io/docs/api/v3/api-8617125 Creates a new WordPress staging environment for a specified web application on a server. ```APIDOC ## POST /servers/{serverId}/webapps/{webappId}/wordpress/staging ### Description Creates a new WordPress staging site for an existing web application. This allows users to test changes in a separate environment before deploying to production. ### Method POST ### Endpoint /servers/{serverId}/webapps/{webappId}/wordpress/staging ### Parameters #### Path Parameters - **serverId** (string) - Required - The ID of the server. - **webappId** (string) - Required - The ID of the web application. #### Request Body - **url** (string) - Required - URL of the staging site. - **enableAuth** (boolean) - Optional - Enable HTTP Auth, default is false. - **username** (string) - Optional - Username for HTTP Auth (required if enableAuth is true). - **password** (string) - Optional - Password for HTTP Auth (required if enableAuth is true). - **discourageSearchEngine** (boolean) - Optional - Disable search engine indexing, default is true. - **enableCache** (boolean) - Optional - Set WP_CACHE constant to true, default is false. - **enableHttp** (boolean) - Optional - Enable HTTP, default is true. - **enableHsts** (boolean) - Optional - Enable HSTS redirection, default is false. - **http2** (boolean) - Optional - Enable HTTP2, default is false. - **brotli** (boolean) - Optional - Enable Brotli, default is false. - **dnsProvider** (string) - Optional - DNS provider (e.g., "cloudflare"), default is null. - **cfApiKeyId** (integer) - Optional - ID of Cloudflare API (required if dnsProvider is "cloudflare"). - **www** (boolean) - Optional - Enable WWW subdomain, default is false. - **redirection** (string) - Optional - Preferred redirection ("www", "non-www", or "none"). ### Request Example { "url": "test-staging.site", "enableAuth": false, "discourageSearchEngine": true, "enableCache": false, "enableHttp": true, "enableHsts": false, "http2": true, "brotli": true, "dnsProvider": "none", "www": false, "redirection": "non-www" } ### Response #### Success Response (200) - **status** (object) - Returns an empty object indicating successful creation. #### Response Example { "status": "success" } ``` -------------------------------- ### POST /web-apps Source: https://runcloud.io/docs/api/v3/api-8774310 Creates a new web application on the server with specified PHP settings, stack configurations, and security policies. ```APIDOC ## POST /web-apps ### Description Creates a new web application instance. This endpoint allows you to define the domain, PHP version, stack mode, and various PHP performance and security settings. ### Method POST ### Endpoint /web-apps ### Request Body - **name** (string) - Required - Name of the web app - **domainName** (string) - Required - The domain associated with the app - **phpVersion** (string) - Required - PHP version (e.g., php80rc) - **stack** (string) - Required - Web app stack type - **stackMode** (string) - Required - Production or development mode - **memoryLimit** (integer) - Optional - PHP memory limit in MB - **maxExecutionTime** (integer) - Optional - Max execution time in seconds ### Request Example { "name": "eyeshield-testing", "domainName": "eyeshield.alirahman.site", "phpVersion": "php80rc", "stack": "hybrid", "stackMode": "production", "memoryLimit": 256 } ### Response #### Success Response (200) - **id** (integer) - Web App ID - **server_user_id** (integer) - ID of the web app owner - **name** (string) - Name of web app - **created_at** (string) - Creation timestamp #### Response Example { "id": 655, "server_user_id": 1647, "name": "eyeshield-testing" } ``` -------------------------------- ### POST /webapps Source: https://runcloud.io/docs/api/v3/api-8795693 Creates a new web application on the server with specified PHP configurations and security settings. ```APIDOC ## POST /webapps ### Description Creates a new web application instance with custom PHP settings, security protections, and resource limits. ### Method POST ### Endpoint /webapps ### Request Body - **name** (string) - Required - The name of the web application - **domainName** (string) - Required - The domain associated with the app - **user** (integer) - Required - System user ID - **phpVersion** (string) - Required - PHP version (e.g., php80rc) - **processManager** (string) - Optional - PHP-FPM process manager mode - **memoryLimit** (integer) - Optional - PHP memory limit in MB - **uploadMaxFilesize** (integer) - Optional - Max upload size in MB ### Request Example { "name": "wp-via-api5", "domainName": "wp-via-api5.site", "user": 1539, "phpVersion": "php80rc", "processManager": "ondemand", "memoryLimit": 256 } ### Response #### Success Response (200) - **id** (integer) - Webapp ID - **server_user_id** (integer) - System user ID assigned to the web app - **name** (string) - Webapp name - **created_at** (string) - Creation timestamp #### Response Example { "id": 660, "server_user_id": 1539, "name": "wp-via-api5", "created_at": "2023-10-27T10:00:00Z" } ``` -------------------------------- ### Get Supervisor Jobs Object (OpenAPI Specification) Source: https://runcloud.io/docs/api/v3/api-8617169 This OpenAPI 3.0.1 specification defines the GET endpoint for retrieving supervisor job details. It outlines the request parameters, response structure, and example data for a successful retrieval. ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /servers/serverId/supervisors/supervisorId: get: summary: Get Supervisor Jobs Object deprecated: false description: '' tags: - Servers/Supervisor parameters: [] responses: '200': description: '' content: application/json: schema: type: object properties: id: type: integer description: Supervisor ID label: type: string description: Supervisor job label username: type: string description: System user that will be running supervisor jobs numprocs: type: integer description: Number of processor autoStart: type: boolean description: Toggle auto start autoRestart: type: boolean description: Toggle auto restart directory: type: string description: Directory command: type: string description: Command to be executed created_at: type: string description: Date which supervisor job was created at x-apidog-orders: - 01J3KXKR2PVH3NWRNMX2Z8EMYT required: - id - label - username - numprocs - autoStart - autoRestart - directory - command - created_at x-apidog-refs: 01J3KXKR2PVH3NWRNMX2Z8EMYT: $ref: '#/components/schemas/supervisor%20details' x-apidog-ignore-properties: - id - label - username - numprocs - autoStart - autoRestart - directory - command - created_at example: id: 17 label: my-firssst-crontjbo username: ammar numprocs: 5 autoStart: true autoRestart: true directory: "/" command: "/RunCloud/Packages/php74rc/bin/php /home/runcloud/queue.php" created_at: '2024-07-18 07:07:30' headers: {} x-apidog-name: Success security: - bearer: [] x-apidog-folder: Servers/Supervisor x-apidog-status: released x-run-in-apidog: https://app.apidog.com/web/project/600229/apis/api-8617169-run components: schemas: supervisor details: type: object properties: id: type: integer description: Supervisor ID label: type: string description: Supervisor job label username: type: string description: System user that will be running supervisor jobs numprocs: type: integer description: Number of processor autoStart: type: boolean description: Toggle auto start autoRestart: type: boolean description: Toggle auto restart directory: type: string description: Directory command: type: string description: Command to be executed created_at: type: string description: Date which supervisor job was created at required: - id - label - username - numprocs - autoStart - autoRestart - directory - command - created_at x-apidog-orders: - id - label - username - numprocs - autoStart - autoRestart - directory - command - created_at description: Supervisor job details x-apidog-ignore-properties: [] x-apidog-folder: '' securitySchemes: bearer: type: http scheme: bearer servers: - url: https://manage.runcloud.io/api/v3 description: API Docs security: [] ``` -------------------------------- ### GET /servers/{serverId}/php/version Source: https://runcloud.io/docs/api/servers Lists all available PHP versions that can be installed or used on a specific server. ```APIDOC ## List available PHP version ### Description Lists all available PHP versions that can be installed or used on a specific server. ### Method GET ### Endpoint `/servers/{serverId}/php/version` ### Parameters #### Path Parameters - **serverId** (integer) - Required - The unique identifier of the server. ### Request Example ```bash curl --request GET \ --url https://manage.runcloud.io/api/v2/servers/7/php/version \ -u YOUR_API_KEY:YOUR_API_SECRET \ --header 'accept: application/json' \ --header 'content-type: application/json' ``` ### Response #### Success Response (200) - **Array of strings** - Each string represents an available PHP version (e.g., `"php73rc"`). #### Response Example ```json ["php55rc", "php56rc", "php70rc", "php71rc", "php72rc", "php73rc"] ``` ``` -------------------------------- ### Retrieve WordPress General Settings via OpenAPI Source: https://runcloud.io/docs/api/v3/api-8617130 This OpenAPI specification defines a GET request to retrieve the home and site URL settings for a WordPress installation. It requires a valid bearer token for authentication and targets a specific server and web application ID. ```yaml paths: /servers/serverId/webapps/webappId/wordpress/general: get: summary: Get WordPress Settings responses: '200': content: application/json: schema: type: object properties: home: type: string siteurl: type: string example: home: http://schimmel.alirahman.site siteurl: http://schimmel.alirahman.site ``` -------------------------------- ### GET /websites/{id} Source: https://runcloud.io/docs/api/v3/api-18582844 Retrieves the full configuration details for a specific website, including its associated themes, plugins, and global settings. ```APIDOC ## GET /websites/{id} ### Description Retrieves the detailed configuration of a website, including themes, plugins, and system settings. ### Method GET ### Endpoint /websites/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The unique identifier of the website. ### Request Example GET /websites/45 ### Response #### Success Response (200) - **id** (integer) - Website ID - **name** (string) - Website name - **settings** (object) - Configuration settings including timezone, language, and SEO indexing preferences. #### Response Example { "id": 45, "name": "Updated Canvas Name", "settings": { "id": 39, "language": "en_US", "timezone": "UTC", "dateFormat": "F j, Y", "timeFormat": "UTC", "SEIndexingDisable": false, "organizeUploadFolders": true } } ``` -------------------------------- ### GET /atomic-deployment-scripts Source: https://runcloud.io/docs/api/v3/api-8617190 Retrieves the list of deployment scripts grouped by their execution phase: CloneNewRelease, ComposerInstall, and ActivateLatestRelease. ```APIDOC ## GET /atomic-deployment-scripts ### Description Retrieves the deployment scripts configured for an atomic project, categorized by their action phase (Clone, Composer Install, or Activate). ### Method GET ### Endpoint /atomic-deployment-scripts ### Parameters #### Query Parameters - **atomic_project_id** (integer) - Required - The ID of the atomic project to fetch scripts for. ### Request Example { "atomic_project_id": 24 } ### Response #### Success Response (200) - **CloneNewRelease** (array) - List of scripts executed during the clone phase. - **ComposerInstall** (array) - List of scripts executed during the composer install phase. - **ActivateLatestRelease** (array) - List of scripts executed during the activation phase. #### Response Example { "CloneNewRelease": [ { "id": 7, "name": "first decom", "scriptAction": "clone", "location": "after", "username": "runcloud", "script": "echo 'test'", "assignedWebApplicationIds": [683] } ] } ``` -------------------------------- ### GET /settings/wordpress/canvas/{id} Source: https://runcloud.io/docs/api/v3/api-18582843 Retrieves the canvas settings for a specific WordPress installation by its ID. This includes details about themes, plugins, custom themes, custom plugins, and general settings. ```APIDOC ## GET /settings/wordpress/canvas/{id} ### Description Retrieves the canvas settings for a specific WordPress installation by its ID. This includes details about themes, plugins, custom themes, custom plugins, and general settings. ### Method GET ### Endpoint /settings/wordpress/canvas/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The ID of the WordPress installation. #### Query Parameters - **Accept** (string) - Optional - Specifies the desired response format, typically 'application/json'. ### Request Example ```json { "example": "" } ``` ### Response #### Success Response (200) - **id** (integer) - The unique identifier for the canvas. - **name** (string) - The name of the canvas. - **created_at** (string) - The timestamp when the canvas was created. - **updated_at** (string) - The timestamp when the canvas was last updated. - **themes** (object) - Information about installed themes. - **data** (array) - A list of theme objects. - **id** (integer) - The theme's ID. - **name** (string) - The theme's name. - **activate** (boolean) - Indicates if the theme is active. - **slug** (string) - The theme's slug. - **plugins** (object) - Information about installed plugins. - **data** (array) - A list of plugin objects. - **id** (integer) - The plugin's ID. - **name** (string) - The plugin's name. - **activate** (boolean) - Indicates if the plugin is active. - **slug** (string) - The plugin's slug. - **customThemes** (object) - Information about custom themes. - **data** (array) - A list of custom theme objects. - **id** (integer) - The custom theme's ID. - **name** (string) - The custom theme's name. - **activate** (boolean) - Indicates if the custom theme is active. - **link** (string) - The URL for the custom theme. - **customPlugins** (object) - Information about custom plugins. - **data** (array) - A list of custom plugin objects. - **id** (integer) - The custom plugin's ID. - **name** (string) - The custom plugin's name. - **activate** (boolean) - Indicates if the custom plugin is active. - **link** (string) - The URL for the custom plugin. - **settings** (object) - General settings for the canvas. - **id** (integer) - The settings ID. - **language** (string) - The language setting. - **timezone** (string) - The timezone setting. - **dateFormat** (string) - The date format setting. - **timeFormat** (string) - The time format setting. #### Response Example ```json { "id": 123, "name": "My Website Canvas", "created_at": "2023-10-27T10:00:00Z", "updated_at": "2023-10-27T10:00:00Z", "themes": { "data": [ { "id": 1, "name": "Theme One", "activate": true, "slug": "theme-one" } ] }, "plugins": { "data": [ { "id": 10, "name": "Plugin Alpha", "activate": true, "slug": "plugin-alpha" } ] }, "customThemes": { "data": [ { "id": 100, "name": "Custom Theme X", "activate": false, "link": "http://example.com/custom-theme-x" } ] }, "customPlugins": { "data": [ { "id": 1000, "name": "Custom Plugin Y", "activate": false, "link": "http://example.com/custom-plugin-y" } ] }, "settings": { "id": 5, "language": "en_US", "timezone": "UTC", "dateFormat": "Y-m-d", "timeFormat": "H:i" } } ``` ``` -------------------------------- ### GET /atomic/atomicProjectId/scripts Source: https://runcloud.io/docs/api/v3/api-8617190 Retrieves a list of deployment scripts associated with a specific atomic project. This endpoint allows you to fetch scripts categorized by their action, such as cloning new releases, composer installations, or making live deployments. ```APIDOC ## GET /atomic/{atomicProjectId}/scripts ### Description Retrieves a list of deployment scripts for a given atomic project. Scripts are categorized by their action (e.g., clone, composer-install, make-live) and location (before/after action). ### Method GET ### Endpoint /atomic/{atomicProjectId}/scripts ### Parameters #### Path Parameters - **atomicProjectId** (integer) - Required - The ID of the atomic project. #### Query Parameters None #### Request Body None ### Request Example None ### Response #### Success Response (200) - **CloneNewRelease** (array) - An array of deployment script objects for cloning new releases. - **id** (integer) - Deployment script ID. - **atomic_project_id** (integer) - Atomic project ID. - **sequence** (integer) - Order of the script execution. - **created_at** (string) - Time the script was created. - **updated_at** (string) - Time the script was last updated. - **assignedWebApplicationIds** (array) - IDs of web applications assigned to this script. - **name** (string) - Name of the deployment script. - **scriptAction** (string) - Action the script performs ('clone', 'composer-install', or 'make-live'). - **location** (string) - When the script runs ('before' or 'after' scriptAction). - **username** (string) - System user that runs the script. - **script** (string) - Content of the script. - **webApplications** (array) - IDs of web applications using this script. - **ComposerInstall** (array) - An array of deployment script objects for composer installations. - **id** (integer) - Deployment script ID. - **atomic_project_id** (integer) - Atomic project ID. - **sequence** (integer) - Order of the script execution. - **name** (string) - Name of the deployment script. - **scriptAction** (string) - Action the script performs ('clone', 'composer-install', or 'make-live'). - **location** (string) - When the script runs ('before' or 'after' scriptAction). - **username** (string) - System user that runs the script. - **script** (string) - Content of the script. - **created_at** (string) - Time the script was created. - **updated_at** (string) - Time the script was last updated. - **assignedWebApplicationIds** (array) - IDs of web applications assigned to this script. #### Response Example ```json { "CloneNewRelease": [ { "id": 1, "atomic_project_id": 1, "sequence": 1, "created_at": "2023-01-01T10:00:00Z", "updated_at": "2023-01-01T10:00:00Z", "assignedWebApplicationIds": [1, 2], "name": "Clone Repository", "scriptAction": "clone", "location": "before", "username": "deployer", "script": "git clone example.com/repo.git", "webApplications": [1, 2] } ], "ComposerInstall": [ { "id": 2, "atomic_project_id": 1, "sequence": 2, "name": "Install Dependencies", "scriptAction": "composer-install", "location": "after", "username": "deployer", "script": "composer install", "created_at": "2023-01-01T10:05:00Z", "updated_at": "2023-01-01T10:05:00Z", "assignedWebApplicationIds": [1, 2] } ] } ``` ``` -------------------------------- ### Supervisor - Available Binary Source: https://runcloud.io/docs/api/supervisor Retrieves a list of available binaries that can be used for supervisor jobs on a specific server. ```APIDOC ## GET /servers/{serverId}/supervisors/binaries ### Description Retrieves a list of available binaries for supervisor jobs. ### Method GET ### Endpoint `/servers/{serverId}/supervisors/binaries` ### Parameters #### Path Parameters - **serverId** (integer) - Required - The ID of the server. ### Request Example ```bash curl --request GET \ --url https://manage.runcloud.io/api/v2/servers/7/supervisors/binaries \ -u YOUR_API_KEY:YOUR_API_SECRET \ --header 'accept: application/json' \ --header 'content-type: application/json' ``` ### Response #### Success Response (200) - **Array of strings** - A list of available binary paths. #### Response Example ```json [ "", "/RunCloud/Packages/php55rc/bin/php", "/RunCloud/Packages/php56rc/bin/php", "/RunCloud/Packages/php70rc/bin/php", "/RunCloud/Packages/php71rc/bin/php", "/RunCloud/Packages/php72rc/bin/php", "/RunCloud/Packages/php73rc/bin/php", "/usr/bin/node" ] ``` ``` -------------------------------- ### List Available Binaries OpenAPI Specification (YAML) Source: https://runcloud.io/docs/api/v3/api-8617163 This YAML code defines the OpenAPI 3.0.1 specification for the 'List Available Binaries' GET endpoint. It details the request path, expected responses, and provides an example of the JSON output containing a list of binary paths. ```yaml openapi: 3.0.1 info: title: '' description: '' version: 1.0.0 paths: /servers/serverId/supervisors/binaries: get: summary: List Available Binaries deprecated: false description: '' tags: - Servers/Supervisor parameters: [] responses: '200': description: '' content: application/json: schema: type: array items: type: string example: - '' - /RunCloud/Packages/php72rc/bin/php - /RunCloud/Packages/php73rc/bin/php - /RunCloud/Packages/php74rc/bin/php - /RunCloud/Packages/php80rc/bin/php - /RunCloud/Packages/php81rc/bin/php - /RunCloud/Packages/php82rc/bin/php - /RunCloud/Packages/php83rc/bin/php - /usr/bin/node headers: {} x-apidog-name: Success security: - bearer: [] x-apidog-folder: Servers/Supervisor x-apidog-status: released x-run-in-apidog: https://app.apidog.com/web/project/600229/apis/api-8617163-run components: schemas: {} securitySchemes: bearer: type: http scheme: bearer servers: - url: https://manage.runcloud.io/api/v3 description: API Docs security: [] ```