Google Play Developer API

概要

Google Play Console には、REST ベースのウェブサービス API のスイートが用意されています。これらの API を使用して、アプリに対し公開、レポート作成などのアプリ管理機能を直接実行できます。

すべてのデベロッパーがこれらのデベロッパー向け API を使用する必要があるわけではありません。ほとんどの場合は、Google Play Console を使用して引き続きアプリを直接管理できます。ただし、管理する APK の数が多い場合や、ユーザーの購入や定期購入を管理する必要がある場合は、これらの API を使用すると便利です。

含まれる内容

新規市場にビジネスを拡大する際も、Google Play Developer API を利用すればリリース管理に割く時間と手間を削減し、アプリの設計と開発に集中できます。

Google Play Console には、アプリの管理に役立つ API のスイートが用意されています。

  • Publishing API を使用すると、アプリのアップロード、公開、およびその他の公開関連のタスクを実行できます。
  • Subscriptions and In-App Purchases API を使用すると、アプリ内購入と定期購入を管理できます(以前の名称は「Purchase Status API」)。
  • Reporting API を使用すると、Android Vitals からアプリの品質に関する情報を取得できます。
  • Reply to Reviews API を使用すると、アプリのレビューの取得と返信を行えます。
  • Permissions API を使用すると、Google Play Console 内での権限の管理を自動化できます。
  • Play Games Services Management API を使用すると、REST 呼び出しを発行して、Google Play Games サービス機能の基盤となるメタデータをプログラムで管理できます。
  • Voided Purchases API からは、ユーザーが取り消した購入に関連付けられている注文のリストが提供されます。

はじめに

Google Play Developer API の使い方については、スタートガイドをご覧ください。

Publishing API

Publishing API を使用すると、アプリの配信に伴って頻繁に発生するタスクを自動化できます。この API は、デベロッパーが Google Play Console で利用できる機能と同様の以下のような機能を提供します。

  • アプリの新バージョンをアップロードする
  • APK をさまざまなトラック(アルファ版、ベータ版、段階的な公開、製品版)に割り当ててアプリをリリースする
  • Google Play ストアの掲載情報(ローカライズしたテキストとグラフィック、マルチデバイスのスクリーンショットを含む)を作成、変更する

こうしたタスクは、トランザクション方式で変更を加える編集機能を使用して行います。つまり、複数の変更を 1 つの編集の下書きにまとめて、一度に変更を commit します(編集を commit しない限り、変更は有効になりません)。

おすすめの方法

  • アプリの更新回数を抑えます。アルファ版またはベータ版の更新は、1 日に 1 回までにとどめてください(製品版のアプリはそれよりもさらに更新回数を少なくする必要があります)。更新のたびに時間が、場合によっては費用もかかります。あまりにも頻繁に更新すると、ユーザーは更新を無視するようになったり、アプリをアンインストールしたりすることにもつながりかねません。

Subscriptions and In-App Purchases API

Subscriptions and In-App Purchases API を使用すると、アプリ内アイテムや定期購入のアプリのカタログを管理できます。さらに、標準の GET リクエストで購入の詳細情報をすぐに取得することもできます。

リクエストには、購入に関する情報(アプリのパッケージ名、購入 ID または定期購入 ID、購入トークン)を渡します。サーバーは関連する購入の詳細情報、注文ステータス、デベロッパー ペイロードなどの情報を含む JSON オブジェクトを返します。

この API には、個々の注文の報告と照合、購入と定期購入期限の確認など、複数の用途があります。また、この API を使って、キャンセルされた注文について調べ、アプリ内アイテムが消費済みかどうか(キャンセル前に消費されたかどうかなど)を確認することもできます。

おすすめの方法

  • 定期購入情報をアプリ側のサーバーに保存して、不要な API 呼び出しが行われないようにします。アプリで定期購入について確認する必要がある場合は、Google に対する API 呼び出しを繰り返し行うのではなく、アプリ側のサーバーのキャッシュに保存されている情報を使用してください。
  • アプリ側の安全なサーバーで Google Play Developer API を使って定期購入情報を取得する必要があるシナリオには次の 2 つがあります。
    • 今までに見たことのない新しい購入トークンがアプリ側のサーバーに届いた。
    • 購入トークンを使って新しい定期購入情報を取得する必要があることを示すリアルタイム デベロッパー通知(RTDN)がアプリ側のサーバーに届いた。
  • 定期購入のステータスを確認するために、API を定期的にポーリングしないでください。たとえば、API を毎日呼び出して、個々の定期購入を確認することはお避けください。
  • 定期購入が期限切れになるか更新されると RTDN が届くため、有効期限に基づいて API 呼び出しのスケジュールを設定する必要はありません。

Reporting API

Reporting API は、Google Play Console のデータに基づいた自動化ワークフローの作成を希望するデベロッパーや、他のデータセット以外に、Google Play Console のデータを内部のビジネス レポートや分析に使う可能性があるデベロッパー向けの API です。この API を使用して、内部のレポート作成、分析、自動化に使用するアプリレベルのデータや指標にプログラムでアクセスできます。

Reporting API から、クラッシュ発生率、ANR 発生率、wake up と wake lock の問題、エラー スタック トレースなど、Android Vitals のデータにアクセスできます。

おすすめの方法

  • このバージョンの Reporting API の秒間クエリ数はデフォルトで 10 件に制限されています。クエリの使用は、Google Cloud コンソールの [割り当て] セクションで確認できます。この制限を超えるクエリが必要な場合は、こちらのフォームから割り当てリクエストを送信してください。

Reply to Reviews API

Reply to Reviews API を使用すると、アプリに対するユーザーのフィードバックを表示し、そのフィードバックに返信することができます。この API により、CRM システムなどの既存のカスタマー サポート ツールキット内でユーザーと直接やり取りできます。

Reply to Reviews API では、製品版のアプリに対するフィードバックにのみアクセスできます。アルファ版またはベータ版のアプリに対するフィードバックを表示するには、Google Play Console を使用してください。また、この API はコメントを含むレビューのみを表示します。ユーザーがアプリを評価したがコメントを入力しなかった場合、この API でそのフィードバックにアクセスすることはできません。

Permissions API

Permissions API を使用することで、デベロッパーは Google Play Console 内での権限の管理を自動化できます。これにより、手動で操作することなく、デベロッパー アカウントへのアクセス権を持つユーザーを柔軟に管理できます。

Permissions API では、次のような管理機能を実行できます。

  • ユーザーが退職した場合にアクセス権を削除する。
  • ユーザーが関連チームに加入した場合にアプリへのアクセス権を付与する。

Voided Purchases API

Voided Purchases API からは、ユーザーが取り消した購入に関連付けられている注文のリストが提供されます。このリストの情報を基に、ユーザーがそれらの注文からアイテムにアクセスできないようにする取り消しシステムを実装できます。

この API の対象は、1 回限りのアプリ内注文とアプリ定期購入です。

購入は以下の方法で取り消すことができます。

  • ユーザーが注文に対する払い戻しをリクエストする
  • ユーザーが注文をキャンセルする
  • 注文のチャージバックが行われる
  • デベロッパーが注文のキャンセルまたは払い戻しを行う(注: Voided Purchases API には取り消し済みの注文のみが表示されます。そのため、デベロッパーが取り消しオプションを設定せずに払い戻しを行った注文は、この API に表示されません)
  • Google が注文のキャンセルまたは払い戻しを行う

この API を使用すると、特にアプリがゲームの場合、アプリのすべてのユーザーに対してより公平なエクスペリエンスを提供できます。