コンテンツにスキップ

自動化 API

MyPanel には主に UI を動かすための REST API があります。このページでは、自動化(CI/CD、運用スクリプト)に役立つ安定したエンドポイント を一覧します。認証には API トークンPro)を使用します。

すべてのリクエストには次のヘッダーを含めます。

Authorization: Bearer mpat_xxxxxxxx

ベース URL はパネルのアドレスです(例: https://panel.example.com)。以下の例では 2 つの変数を使用します。

Terminal window
PANEL=https://panel.example.com
TOKEN=mpat_xxxxxxxx
Terminal window
# List websites
curl -H "Authorization: Bearer $TOKEN" $PANEL/api/sites
# Create a website (reverseproxy / static / nixpacks / dockerfile / image / wordpress)
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"domain":"app.example.com","buildKind":"reverseproxy","source":"http://127.0.0.1:3000"}' \
$PANEL/api/sites
# Deploy a website by id
curl -X POST -H "Authorization: Bearer $TOKEN" $PANEL/api/sites/1/deploy
# Get the latest deployment status
curl -H "Authorization: Bearer $TOKEN" $PANEL/api/sites/1/deployment
# Delete a website
curl -X DELETE -H "Authorization: Bearer $TOKEN" $PANEL/api/sites/1
Terminal window
# List databases
curl -H "Authorization: Bearer $TOKEN" $PANEL/api/databases
# Create a database
curl -X POST -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{"engine":"MySQL","name":"app_prod"}' $PANEL/api/databases
# Trigger a backup for a database by id
curl -X POST -H "Authorization: Bearer $TOKEN" $PANEL/api/databases/1/backups
Terminal window
# Server info (hostname, OS, uptime, load, version)
curl -H "Authorization: Bearer $TOKEN" $PANEL/api/system
# Update status (current / latest version)
curl -H "Authorization: Bearer $TOKEN" $PANEL/api/update
コード意味
200 / 201 / 202 / 204成功
400リクエストボディが不正
401トークンが欠落または無効
402プランの上限に到達({"upgrade":"pro"} を含む)
403権限が不足
404リソースが見つからない