Kinstaをご利用であれば、「MyKinsta」はお馴染みの存在でしょう。Kinsta独自の設計により、ウェブサイト、データベース、アプリケーションを1箇所で簡単に管理することができる専用コントロールパネルです。

MyKinstaでは、サイトキャッシュをクリアしたり、ステージング環境を作成してテストや開発を行ったり、テーマやプラグインをリモートで更新したりなど、生産的かつ効率的にプロジェクトを進めることができます。

しかし、通常は手動で行うこれらのタスクを自動化すれば、さらに業務効率が向上します。あるいは、サードパーティのアプリケーションやインターフェースにフックするのも効果的です。

これを実現するために誕生したのが、Kinsta APIです。Kinsta独自のREST APIを使用することで、WordPress環境を最適化し、タスクを自動化することが可能になります。

今回は、Kinsta APIを使用してWordPress環境を最適化するさまざまな方法をご紹介します。

Kinsta APIで実行できること

Kinsta APIは、Kinstaをご利用のすべてのお客様向けに、パブリックベータ版としてリリースされています。現在も開発を進めており、今後も多くのエンドポイントをリリースし、さらに機能を拡張していく予定です。

現時点では、MyKinstaで使用できる機能のほとんどにKinsta APIを使用することができます。

  • 自動化とタスク実行の日時設定─MyKinstaにログインしてインターフェースを操作する手間を省き、機能を即座に自動化。サイトのメンテナンスタスクは、定期的に実行されるように設定可能。
  • サイトの作成と管理─ステージングサイトやサイトの自動作成や、プラグインのインストールおよび更新を実行。さらに、WordPressのマルチサイトにも対応。
  • リモート管理─サイトの稼働状況をリモートでチェックし、何か問題があれば再起動、またはキャッシュをクリア。他のアプリからサイトをリモート管理することもできる。
  • データベースとアプリケーションの管理─ウェブサイトだけでなく、Kinstaでホストするデータベースやアプリケーションの管理も。
  • トラッキングとレポート内部追跡システムや独自アプリケーションを使用している場合、MyKinstaデータの統合も簡単。
  • カスタムダッシュボード─クライアントサイト情報などのMyKinstaのデータを、顧客用に独自に構築したダッシュボードに一覧表示。
  • サードパーティツールの統合:Slack、ChatGPT、または独自に開発したアプリなど、サードパーティアプリケーションからサイトを管理。

なお、注意点として、Kinsta APIには現在1分あたり120件、ウェブサイトの作成には1分あたり5件のレート制限があります。

Kinsta APIへのアクセス方法

Kinsta APIを使用するには、Kinstaのいずれかのホスティングプラン(WordPress専用マネージドホスティング、アプリケーションホスティング、データベースホスティング、および静的サイトホスティング)が必要になります。

MyKinstaのアカウントを作成後、以下の手順でAPIキーを生成してください。

  1. MyKinstaにログインする
  2. 画面右上のユーザー名を選択し「企業の設定」>「APIキー」に移動する
  3. APIキーの作成」をクリックする
  4. APIキーの識別のため「APIキー名」を設定し、セキュリティ上の理由から「有効期限」を選択する(「カスタム」を選択すると期間を詳細に指定できる)
  5. 生成」をクリックしてAPIキーを作成する(必要に応じて複数作成可能)
  6. APIキーの有効期限が切れるまで、パスワードマネージャーなどにAPIキーを保存する
MyKinstaでAPIキーを作成
MyKinstaでAPIキーを作成

意図しない別のユーザーがAPIキーにアクセスしたり、APIキーを扱うIT担当者が離職したりなどの状況で、APIキーの取り消しが必要になる場合は、この「APIキー」画面にアクセスし、キー識別子の横にある「取り消し」をクリックしてください。

また、APIキーは、生成したユーザーによって異なるアクセス権を持ちます。たとえば、「企業の開発者」が生成したキーのアクセス権は、「企業の管理者」や「企業の所有者」が生成したキーとは異なります。

APIキーを作成したら、早速Kinsta APIを使い始めましょう。

Kinsta APIを使ってWordPress環境を最適化する方法

Kinsta APIをセットアップしたら、以下にご紹介する9つの方法で、WordPress環境と開発ワークフローを最適化することができます。

なお、各機能のエンドポイントはこちらでご紹介しています。

メンテナンスタスクの自動化

APIでキャッシュのクリアを自動化
APIでキャッシュのクリアを自動化

Kinsta APIの主な用途の1つは、通常手間のかかるメンテナンスタスクの自動化です。

例えば、訪問者がほとんどいない真夜中に、サイトのキャッシュを自動的にクリアするなど。訪問者が非常に少ない時間帯であれば、通常稼働状況にちょっとした変動が出ても問題ありません。

以下をはじめとする、MyKinstaのサイト管理ツールの多くをAPIで使用することができます。

  • サイトキャッシュのクリア─サイト、エッジ、CDNのキャッシュをリモートでクリア。毎日、毎週、または毎月自動的に実行されるように設定し、コンテンツを新鮮な状態に保つことができる。
  • PHPエンジンの再起動─サイトが壊れたり遅くなったりした際にPHPエンジンを再起動することで、破損したデータを洗い出し、全体を再稼働することができる。このタスクも自動的に実行されるように事前に日時を設定可能。
  • PHPバージョンの変更─PHPを常に最新のバージョンに保つことはセキュリティ上重要。APIを使って安全性を確保することができる。
  • ブロックしたIPアドレスの一覧表示と更新─公開状態のリストを使用してブロックしたIPの一覧を定期的に更新。ブルートフォース攻撃やDDoS攻撃を行う可能性のある既知のボットの侵入を防ぐ。
  • プラグインの一覧表示と更新─プラグインを常に最新の状態を保つ。また別のエンドポイントでプラグインを一括更新することも可能で、サイトの安全性とプラグインの機能性を常に維持することができる。
  • テーマの一覧表示と更新─プラグイン同様、テーマを常に最新の状態に保ち、別のエンドポイントで一括更新。
  • サイトの自動バックアップ─毎日、毎週、毎月、または手動でバックアップを作成。手動でバックアップを作成するのを忘れがちな場合に便利。

sitesと/environmentsエンドポイントを使って環境IDを取得すると、上記のメンテナンスタスクを実行することができます。Reactアプリケーションを構築すれば、毎日または毎週決まった日時でタスクを自動化することも可能です。

サイトのリモート管理

site_id を使ってサイト情報をリモートで取得
site_idを使ってサイト情報をリモートで取得

自動化に加えて、サードパーティのアプリケーションやコマンドラインを通してリモートでサイトを管理できるのも、Kinsta APIのメリット。通常、MyKinstaにログインして作業を行うよりもはるかに効率的です。

使用方法は、技術的なセットアップや使用するアプリケーションによって異なりますが、以下のようなサイト管理タスクをリモートで実行できます。

  • IDによるサイトの取得─サイトを一覧表示して情報を取得。別のエンドポイントを使用して、個々の環境に対しても同じことを実行可能。
  • PHPの再起動─サイトがダウンした際、またはPHPの機能が遅い場合は、MyKinstaにログインしてトラブルシューティングを行うよりもはるかに効率的にPHPを再起動できる。
  • キャッシュのクリア─サイトに何らかの問題が見られる場合に、サイト、CDN、エッジキャッシュをクリア
  • ブロックすたIPの一覧表示と更新─ブロックしたIPの一覧表示とリストの更新。
  • テーマとプラグインの一覧表示と更新─テーマとプラグインの管理もでき、テーマやプラグインが古いことが原因で問題が起きている場合などに有用。
  • バックアップの一覧表示、作成および復元─MyKinstaにログインせずにバックアップの作成、削除、または現在のバックアップを一覧表示。外出先や他のアプリケーションで作業している際にかなり有用。
  • ログの確認─どこからでもサイトのログファイルにアクセスし、トラブルシューティングや問題の検出。

上記のようなタスクをリモートで実行できると、クライアントはサイト問題を自分でトラブルシューティングすることができるようになります。なお、リモート管理のメリットを最大限活かすには、独自のアプリケーションを構築するか、Slackなどのプログラムにフックする必要があります。

Kinstaサービスによる内部追跡

Kinsta APIでサイトログを追跡するプログラムをセットアップ
Kinsta APIでサイトログを追跡するプログラムをセットアップ

Kinsta APIで、Kinstaのサービスにフックする内部追跡サービスをセットアップすることもできます。これにより、以下のようなことを実現可能です。

  • カスタムダッシュボードの設定─自社または自社の顧客のためにカスタムダッシュボードを開発し、サイトに関する情報を表示したり、リモートでトラブルシューティングを実行。
  • クライアントサイトの追跡─何十、何百ものクライアントサイトを一覧表示し、ステータスを確認。
  • 自動レポート─定期的にAPIからデータを取得する自動レポートシステムを設定。
  • 監視と警告サイトのログや帯域幅の使用状況を追跡し、明らかな問題が検出されると警告を送信する自動プログラムを作成し、サイトのダウンのような深刻な問題を報告する。

Kinsta APIの使い道は、要件に応じて千差万別。また、Reactや類似の言語でアプリケーションを開発できるかどうかは非常に重要です。

WordPressサイトの高速作成

Kinsta APIでWordPressサイトを簡単に作成または複製
Kinsta APIでWordPressサイトを簡単に作成または複製

Kinsta APIは、WordPressサイトや環境の作成、削除、複製にも使用できます。ビジネス要件によって、以下のような様々な用途があります。

  • サイトの自動プロビジョニング─複数のWordPressサイトを管理する代行業者などは、顧客のために新規サイトを作成するプロセスを自動化することができる。
  • テスト環境とステージング環境─大規模なチームを抱える場合、本稼働前の機能のテストに、ステージング環境の作成が必要になることも。ステージング環境や既存サイトの複製をAPIで実行することで、開発チームの負担が大幅に軽減される。
  • マルチサイトWordPressのマルチサイトでも、API経由でサイトの作成と削除ができるため、マルチサイトの管理タスクも簡素化できる。
  • 継続的インテグレーションとデプロイメント(CI/CD)CI/CDパイプラインとの統合で、WordPressサイトを自動デプロイ。APIを使用して、デプロイメントの各段階でWordPressサイトのインスタンスをプロビジョニングできる。
  • セルフサービス型─顧客が自身でWordPressサイトを作成できる場合は、サイト管理もできるようにすることで、ITチームの負担を軽減できる。

また、WordPressをインストールしない空のサイトや環境を作成したり、静的サイトを扱ったりすることも可能です。

テーマやプラグインの更新

Kinsta APIでWordPressプラグインをリモート管理
Kinsta APIでWordPressプラグインをリモート管理

Kinsta APIを使用して、テーマやプラグインをリモートで管理することもできます。

  • プラグインとテーマの一覧表示─サイトにインストールされているプラグインとテーマのリストを取得。
  • プラグインとテーマの更新─プラグインやテーマが最新の状態であるかを確認し、必要に応じて更新。
  • プラグインとテーマの一括更新─プラグインとテーマを一括で更新し、常に最新の状態を保つ。

バックアップのリモート管理

バックアップをリモートで管理することもできます。
バックアップをリモートで管理することもできます。

リモートでバックアップを作成、管理、削除できるのも、Kinsta APIのメリットです。

  • バックアップの一覧表示─サイトの手動、自動、およびシステム生成バックアップの一覧を取得。
  • ダウンロード可能なバックアップの一覧表示─サイトのダウンロード可能なバックアップの一覧を取得。
  • バックアップの復元─日時を設定した自動バックアップ、手動バックアップ、またはシステム生成バックアップの復元。
  • バックアップの作成─環境にバックアップを手動で追加。
  • バックアップの削除─不要になったバックアップや誤って作成されたバックアップを削除。

静的サイトの管理

静的サイトの管理も簡単
静的サイトの管理も簡単

Kinsta APIでは、標準的なWordPressサイトだけでなく、静的サイトも管理することができます。

  • 静的サイトの一覧表示─すべての静的サイトを一覧表示、および特定の静的サイトの基本情報を表示。
  • 静的サイトのデプロイと再デプロイ─静的サイトを手動でデプロイしたり、一度変更した静的サイトを再デプロイしたりできる。
  • 静的サイトの更新─静的サイトの基本情報を更新および変更。
  • 静的サイトの削除─権限のある静的サイトを削除。

Kinstaの静的サイトホスティングを利用すれば、静的サイトの作成とデプロイを無料で行うことができるため、Kinsta APIを手軽にお試しいただけます。

データベースの管理

データベースの一覧表示から更新まで、あらゆるタスクを実行可能
データベースの一覧表示から更新まで、あらゆるタスクを実行可能

データベースのリモート管理は、MyKinstaにログインしてデータベースを検索する手間を省くことができるため、非常に便利です。

  • データベースの一覧表示─すべてのデータベースを一覧表示、および特定のデータベースの情報を表示。
  • データベースの作成と削除─名前、パスワード、データベースの種類など、必要情報を入力してデータベースを作成したり、既存のデータベースを削除したりできる。
  • データベースの更新─リソースタイプの文字列を使用してデータベースの設定を更新。

簡単なコマンドで、他のアプリケーションからデータベースを完全管理することができます。

アプリケーションの管理

サイト管理だけでなく、Kinsta APIでアプリケーションの管理も可能
サイト管理だけでなく、Kinsta APIでアプリケーションの管理も可能

Kinsta APIの活用方法は、サイトやデータベースの管理だけにとどまりません。他のアプリケーションからサイトにアクセスし、サイトを作成するのと同じような用途もありますが、以下のようなタスクも実行可能です。

  • アプリケーションの一覧─すべてのアプリケーションを一覧表示、およびIDを使って特定のアプリケーションの情報を表示。
  • アプリケーションの更新、デプロイおよび削除─アプリケーションの基本情報の更新や削除、また手動でアプリケーションをデプロイすることも可能。
  • アプリケーション指標の追跡─帯域幅、実行時間、ビルド時間、1分あたりのHTTPリクエスト数、平均応答時間、CPUやメモリの章状況などの指標を監視。他のアプリケーションにフックすることで、これらの指標を追跡し、何か問題が発生すれば警告を送信。
  • アプリケーションとデータベースの接続─アプリケーションとKinstaでホストするデータベース間の内部接続を作成。
  • CDNとキャッシュの管理─CDNとエッジキャッシュの有効/無効化や、キャッシュのクリアも可能。

サードパーティサービスの統合

APIを用いてサードパーティのアプリケーションに接続し、アプリケーションをサイトの管理に利用することもできます。Kinsta APIはあらゆるサービスに統合可能です。

例えば、以下のようなことも実現できます。

APIを使用できるプラットフォームやサービスがあれば、Kinsta APIと統合可能です。APIで作業時間を削減し、生産性を高めましょう。

まとめ

Kinsta APIにより、多数のWordPressタスクを自動化して最適化し、MyKinstaおよびWordPressサイトをサードパーティのアプリケーションと連携させることができます。

APIの用途はさまざまです。リモートでサイトを管理したり、新規サイトや開発用のステージングサイトを作成したり、あるいは独自のアプリケーションを書くことも可能です。

Kinsta APIは、Kinstaのすべてのホスティングプランでご利用いただけます。Kinsta APIが気になる方は、お好きなプランを選択して、ぜひ一度お試しください。APIのドキュメントもご用意しています。

Kinsta APIをどのような用途に使用していますか?以下のコメント欄でぜひお聞かせください。

Jeremy Holcombe Kinsta

Content & Marketing Editor at Kinsta, WordPress Web Developer, and Content Writer. Outside of all things WordPress, I enjoy the beach, golf, and movies. I also have tall people problems ;).