RunCloud MCP by usefulapi
Read RunCloud servers, web apps, databases and logs; deploy, restart services, renew SSL.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (2)
- LOWin runcloud_list_atomic_deployments
- LOWin runcloud_install_letsencrypt_ssl
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"runcloud": {
"url": "https://runcloud.usefulapi.io/mcp"
}
}
}Remote-Endpunkte
https://runcloud.usefulapi.io/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (36)
🟢runcloud_ping
Check that the API key works: RunCloud answers with a message ('pong'). GET /ping.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_servers(page, per_page)
List the servers connected to the workspace: id, name, provider, IP address, OS, stack, online/connected state, agent and PHP CLI version, auto-update settings and tags. GET /servers.
Eingabe-Schema
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_server(server_id)
One server by id: provider, IP, OS and version, stack, online state, agent version, update settings, tags. GET /servers/{id}.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_server_stats(server_id)
How many web applications, databases, cron jobs and supervisor jobs a server has, and its country. GET /servers/{id}/stats.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_server_hardware(server_id)
Kernel version, CPU model and cores, memory and disk totals/free, load average and uptime of a server. GET /servers/{id}/hardwareinfo.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_server_health(server_id)
The latest health sample of a server: total/available/used memory and disk space (MB) and load average. GET /servers/{id}/health/latest.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_server_logs(server_id, page, per_page)
The server's activity log (what was changed in RunCloud and when), newest first. GET /servers/{id}/logs.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_services(server_id)
The services on a server (nginx, php-fpm, mariadb, redis, supervisor...) with real name, running state, CPU, memory and version. The realName is what runcloud_control_service needs. GET /servers/{id}/services.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_system_users(server_id, page, per_page)
The system (Linux) users on a server: id, username, whether deletable. Deployment keys and passwords are never returned. GET /servers/{id}/users.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_webapps(server_id, search, page, per_page)
List the web applications on a server: id, name, root/public path, PHP version, stack, type (wordpress, custom...), default flag, alias. Deployment webhook keys are not returned. GET /servers/{id}/webapps.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"search": {
"description": "Filter by web application name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_webapp(server_id, webapp_id)
One web application by id (path, PHP version, stack, type, default flag). GET /servers/{id}/webapps/{webapp}.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_webapp_settings(server_id, webapp_id)
PHP and FPM/Nginx settings of a web application (disabled functions, timezone, memory and upload limits, process manager...). GET /servers/{id}/webapps/{webapp}/settings.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_webapp_logs(server_id, webapp_id, page, per_page)
The activity log of a web application (settings changes, PHP version changes, deployments), newest first. GET /servers/{id}/webapps/{webapp}/log.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_domains(server_id, webapp_id, page, per_page)
The domain names of a web application: id, name, type (primary/alias), www, redirection, wildcard, DNS integration, status. GET /servers/{id}/webapps/{webapp}/domains.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_domain_dns(server_id, webapp_id, domain_id)
The DNS records (A, CNAME...) a domain name needs to point at the server. GET /servers/{id}/webapps/{webapp}/domains/{domain}/dns.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
},
"domain_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Domain name id (see runcloud_list_domains)."
}
},
"required": [
"server_id",
"webapp_id",
"domain_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_webapp_ssl(server_id, webapp_id)
The web application's SSL certificate (basic / web-app-level SSL): provider, validity, HTTPS settings. Private keys are never returned. GET /servers/{id}/webapps/{webapp}/ssl.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_ssl_method(server_id, webapp_id)
Whether the web application uses basic (one certificate for the app) or advanced (one per domain) SSL, and its AutoSSL status. Advanced SSL is a Business/Enterprise feature. GET /servers/{id}/webapps/{webapp}/ssl/advanced.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_git_deployment(server_id, webapp_id)
The Git deployment configured on a web application: provider, branch, repository URL, auto-deploy flag, deployment script and whether it is an atomic deployment. The deployment webhook keys are not returned. The id of the result is the git_id for runcloud_deploy_git. GET /servers/{id}/webapps/{webapp}/git.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
}
},
"required": [
"server_id",
"webapp_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_databases(server_id, page, per_page)
The databases on a server: id, name, collation. No credentials. GET /servers/{id}/databases.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_database_users(server_id, page, per_page)
The database users on a server (id, username). Passwords are never returned. GET /servers/{id}/databaseusers.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_cronjobs(server_id, page, per_page)
The cron jobs of a server: id, label, user, schedule, command, enabled flag. The id is what runcloud_run_cronjob needs. GET /servers/{id}/cronjobs.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_supervisors(server_id, page, per_page)
The supervisor (background worker) jobs of a server: id, label, user, process count, auto start/restart, directory, command. GET /servers/{id}/supervisors.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_get_supervisor_status(server_id)
The live status (RUNNING, FATAL, BACKOFF...), pid and uptime of every supervisor process, by job label. GET /servers/{id}/supervisors/status.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_firewall_rules(server_id, page, per_page)
The firewall rules of a server: type (global/rich), port, protocol, IP address, action. GET /servers/{id}/security/firewalls.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_blocked_ips(server_id)
The IP addresses Fail2Ban currently blocks on a server. GET /servers/{id}/security/fail2ban/blockedip.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
}
},
"required": [
"server_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_backups(server_id, storage, status, search, page, ...)
The backup instances of the workspace: label, what they cover (web app / database), storage, type, frequency, size, status. Filter by server, storage, status or name. GET /backups.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"description": "Only backups of this server id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"storage": {
"description": "Storage type, e.g. runcloud or local.",
"type": "string",
"minLength": 1,
"maxLength": 60
},
"status": {
"description": "Backup status, e.g. active.",
"type": "string",
"minLength": 1,
"maxLength": 60
},
"search": {
"description": "Filter by backup name.",
"type": "string",
"minLength": 1,
"maxLength": 200
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_backup_snapshots(backup_id, page, per_page)
The snapshots of one backup instance: run date, status, type and size. GET /backups/{id}/snapshots.
Eingabe-Schema
{
"type": "object",
"properties": {
"backup_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Backup instance id (see runcloud_list_backups)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"backup_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_atomic_projects(page, per_page)
The atomic Git deployment projects of the workspace: name, provider, repository, branch, auto-deploy, success/failure counts and the latest deployment. Webhook keys are not returned. GET /atomic.
Eingabe-Schema
{
"type": "object",
"properties": {
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢runcloud_list_atomic_deployments(project_id, page, per_page)
The deployments of an atomic project: commit hash, branch, message, committer, release name, status (DEPLOYING, COMPLETED, FAILED), start and end time. GET /atomic/{project}/deployments.
Eingabe-Schema
{
"type": "object",
"properties": {
"project_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Atomic project id (see runcloud_list_atomic_projects)."
},
"page": {
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100000
},
"per_page": {
"description": "Results per page, 1-40 (default 20).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 40
}
},
"required": [
"project_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_control_service(server_id, action, real_name)
WRITE: run systemctl start, restart or reload on one service of a server (for example nginx-rc or php81rc-fpm). A restart briefly interrupts that service and the sites behind it. 'stop' is deliberately not offered. Get the realName from runcloud_list_services. PATCH /servers/{id}/services.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"action": {
"type": "string",
"enum": [
"start",
"restart",
"reload"
],
"description": "systemctl action."
},
"real_name": {
"type": "string",
"pattern": "^[A-Za-z0-9][A-Za-z0-9._@+-]{0,63}$",
"description": "The service's realName from runcloud_list_services, e.g. nginx-rc or redis-server."
}
},
"required": [
"server_id",
"action",
"real_name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_deploy_git(server_id, webapp_id, git_id)
WRITE: force a Git deployment of a web application now: RunCloud pulls the configured branch and runs the deployment script, which changes the live site's files. Get git_id from runcloud_get_git_deployment (its id). PUT /servers/{id}/webapps/{webapp}/git/{git}/script.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
},
"git_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Git deployment id (runcloud_get_git_deployment -> id)."
}
},
"required": [
"server_id",
"webapp_id",
"git_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_force_deploy_atomic(project_id)
WRITE: start an atomic deployment of a project now (builds a new release and switches the live symlink when it succeeds). PUT /atomic/{project}/forcedeploy.
Eingabe-Schema
{
"type": "object",
"properties": {
"project_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Atomic project id (runcloud_list_atomic_projects)."
}
},
"required": [
"project_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_run_cronjob(server_id, cronjob_id)
WRITE: force-run one cron job of a server once, right now, outside its schedule. The job's command runs on the server with its configured user. Get the id from runcloud_list_cronjobs. POST /servers/{id}/cronjobs/{job}/run.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"cronjob_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Cron job id (runcloud_list_cronjobs)."
}
},
"required": [
"server_id",
"cronjob_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_reload_supervisor(server_id, supervisor_id)
WRITE: reload one supervisor job so its worker processes restart (running processes are interrupted). Get the id from runcloud_list_supervisors. POST /servers/{id}/supervisors/{job}/reload.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"supervisor_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Supervisor job id (runcloud_list_supervisors)."
}
},
"required": [
"server_id",
"supervisor_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_renew_ssl(server_id, webapp_id, ssl_id, domain_id)
WRITE: redeploy (renew) the Let's Encrypt certificate of a web application, which re-issues it and reloads the web server. Let's Encrypt certificates only. For basic SSL pass the ssl_id from runcloud_get_webapp_ssl; for advanced (per-domain) SSL, which requires advanced SSL mode (check runcloud_get_ssl_method), also pass domain_id. PUT /servers/{id}/webapps/{webapp}/ssl/{ssl} or /domains/{domain}/ssl/{ssl}.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
},
"ssl_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "SSL certificate id (runcloud_get_webapp_ssl -> id)."
},
"domain_id": {
"description": "Only for advanced (per-domain) SSL mode (see runcloud_get_ssl_method): the domain's id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"server_id",
"webapp_id",
"ssl_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴runcloud_install_letsencrypt_ssl(server_id, webapp_id, domain_id, authorization_method, external_api, ...)
WRITE: issue and install a free Let's Encrypt certificate for a web application (basic SSL) or for one domain of it (advanced SSL, pass domain_id; this requires advanced SSL mode, see runcloud_get_ssl_method). The web server is reloaded; the domain's DNS must already point at the server. Custom certificates are not supported here. POST /servers/{id}/webapps/{webapp}/ssl or /domains/{domain}/ssl.
Eingabe-Schema
{
"type": "object",
"properties": {
"server_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "RunCloud server id (see runcloud_list_servers)."
},
"webapp_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Web application id (see runcloud_list_webapps)."
},
"domain_id": {
"description": "Only for advanced (per-domain) SSL mode (see runcloud_get_ssl_method): the domain's id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"authorization_method": {
"type": "string",
"enum": [
"http-01",
"dns-01"
],
"description": "Let's Encrypt challenge: http-01, or dns-01 (needs external_api, a Cloudflare DNS integration)."
},
"external_api": {
"description": "Id of the Cloudflare DNS integration; required for dns-01.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"environment": {
"description": "live (default, trusted certificate) or staging (test certificate).",
"type": "string",
"enum": [
"live",
"staging"
]
},
"enable_http": {
"type": "boolean",
"description": "Keep plain HTTP enabled alongside HTTPS."
},
"enable_hsts": {
"type": "boolean",
"description": "Send the HSTS header (browsers will insist on HTTPS)."
}
},
"required": [
"server_id",
"webapp_id",
"authorization_method",
"enable_http",
"enable_hsts"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Nachweis