KinstaのAPIを拡張し、新しいドメインとユーザー管理機能を追加しました。結果として、MyKinstaにログインすることなく、ご利用のサーバー環境を今まで以上に管理できるようになりました。
Kinsta API経由でWordPress環境のプライマリドメインを変更したり、追加のSFTPアカウントを細かに管理したりすることが可能です。
環境のプライマリドメインを変更する
以前は、Kinsta APIでサイトからドメインを追加または削除することができました。しかし、環境のプライマリドメインの変更は対象外でした。
今回のリリースにより、以下のエンドポイントを使用して、既存のドメインを特定の環境のプライマリドメインとして設定できるようになりました。
PUT /sites/environments/{env_id}/change-primary-domain
このエンドポイントを使用するには、プライマリに設定したいドメインのdomain_id
が必要です。指定するドメインは、その環境にすでに紐づけられている必要があります。
Get Site by ID
またはGet Site Environments
エンドポイントを使って
domain_id
を確認することができます。結果は次のようになります。
"domains": [
{
"id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
"name": "example.com",
"type": "live"
}
]
また、run_search_and_replace
フィールドを設定する必要があります。true
に設定すると、サイトのデータベース全体で検索と置換が行われ、対象のドメインを参照するURLが変更されます。
以下は、curl
を使用した例です。
curl -i -X PUT \
'https://api.kinsta.com/v2/sites/environments/{env_id}/change-primary-domain' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"domain_id": "your-domain-id",
"run_search_and_replace": true
}'
追加SFTPアカウントの細かな管理
4月に、管理画面「MyKinsta」で直接複数のSFTPユーザーアカウントを作成して管理する機能を追加しました。そして今回、この操作をKinsta APIを介して行うことが可能になっています。
これにより、各環境における追加のSFTPユーザーをAPIで細かに制御できます。アクセスを有効にしたり、新しいユーザーを追加したり、既存のユーザーの一覧を取得したり、削除したりすることができます。
アクセスを有効または無効にする
ユーザーを追加する前に、SFTPアクセスを有効にする必要があります。そのためには以下の操作を行います。
PUT /sites/environments/{env_id}/additional-sftp-accounts/toggle-status
以下は、curl
を使用した例です。
curl -i -X PUT \
'https://api.kinsta.com/v2/sites/environments/{env_id}/additional-sftp-accounts/toggle-status' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"enabled": true
}'
これは"enabled": false
を設定することで、いつでも元に戻せます。
新しいSFTPユーザーの追加
有効後、次のエンドポイントを使用してユーザーを追加できます。
POST /sites/environments/{env_id}/additional-sftp-accounts
このリクエストでは、ユーザー名、安全なパスワード(最低16文字)、ルートディレクトリ、権限レベル(read
またはwrite
)を定義できます。
curl -i -X POST \
'https://api.kinsta.com/v2/sites/environments/{env_id}/additional-sftp-accounts' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"username": "dev-user",
"password": "R8zXwT@#bV!kJq9^",
"root_directory": "/wp-content/themes",
"permission": "write"
}'
これは、特定のディレクトリへのアクセス制限や、読み取り専用の権限の割り当てといった、MyKinstaの機能を反映したものです。
ユーザーの一覧取得と削除
このように、追加のSFTPアカウントの一覧を取得することができます。
GET /sites/environments/{env_id}/additional-sftp-accounts
削除するには以下を実行します。
DELETE /sites/environments/additional-sftp-accounts/{sftp_account_id}
これにより、アカウントのローテーションを自動化したり、共同作業者に限定的なアクセスを付与したり、デプロイ後にログイン情報を失効させるなど、柔軟な対応が可能になります。
環境一覧の新しいメタデータ
これらの新しい機能をサポートするために、is_additional_sftp_accounts_enabled
フィールドを以下のエンドポイントに追加しました。
- GET /sites/{site_id}/environments
- GET /sites(
include_environments=true
クエリパラメータ使用時)
これにより、どの環境で追加のSFTPアクセスが有効になっているか、特にプラットフォームやクライアントアカウント全体で多数の環境を管理している場合に、簡単に監査できるようになります。
共同作業により柔軟なコントロールを
今回の新たなAPIの改善点により、ステージングワークフローの自動化、SFTPログイン情報のローテーション、サイトURLの切り替えなど、インフラを今までより深く柔軟に制御できます。
すべてのリクエスト/レスポンスの詳細は Kinsta APIドキュメントをご覧ください。Kinsta APIではできることが数多くあり、すでに多くのWeb制作会社や開発者の方々が、何百ものサイトを効率的に管理するために活用しています。
MyKinstaにアクセスしてAPIトークンを生成することで、すぐに構築を始められます。早速KinstaのWordPress専用マネージドサーバーをご活用ください。