サービス アカウント

サービス アカウントは特別な Google アカウントで、アプリケーションが OAuth 2.0 を通じて Google API にプログラマティックにアクセスするために使用できます。サービス アカウントは、人による承認を必要としない OAuth 2.0 フローを使用します。 人による承認の代わりに、該当のアプリケーションのみがアクセスできるキーファイルが使用されます。このガイドでは、サービス アカウントを使用して Content API for Shopping にアクセスする方法について説明します。

注: 認証にサービス アカウントを使用するアプリケーションは、パートナー様自身の Merchant Center アカウントにのみアクセスできます。クライアントの Merchant Center アカウントにアクセスする必要があるサードパーティ アプリケーションを作成している場合は、リクエストの承認 ガイドを参照してください。

前提条件

サービス アカウントを使用して Content API for Shopping にアクセスする手順

  1. サービス アカウントの認証情報を生成するか、すでに生成した公開認証情報にアクセスします。OAuth 2.0 クライアント ID を作成し、*.json 秘密鍵ファイルを取得する必要があります。
    1. Google API コンソールに移動します。
    2. ページ上部のプルダウン メニューでプロジェクトを選択します。まだプロジェクトがない場合は、[新しいプロジェクト] をクリックして作成します。
    3. このプロジェクトで Content API for Shopping をまだ有効にしていない場合は、Google API のリストで検索して有効にします。
    4. 左上のナビゲーション メニュー(☰)をクリックし、[API とサービス]、[認証情報] の順に選択します。
    5. サービス アカウントを設定するには、[認証情報を作成]、 次に [サービス アカウント] の順に選択します。
    6. 新しいサービス アカウントに名前を付けます。これは、サービス アカウント ID のデフォルトのユーザー名としても使用されます。後で使用できるように、'@' 文字以降を含むサービス アカウント ID を記録します。[**作成**] をクリックし、プロジェクトとユーザーへのアクセス権を付与する手順(省略可)を行い、[**完了**] をクリックします。

      サービス アカウントのロールを選択しても、Content API に対して行える呼び出しには影響しません。Content API メソッドへのアクセスは、Merchant Center のサービス アカウント ID に関連付けられたロールによって決定されます。どれを選択すればよいかわからない場合は、[プロジェクト > 閲覧者] を選択してください。

    7. [サービス アカウント] ページが表示され、新しいサービス アカウントにアクセスできます。
    8. JSON 秘密鍵を取得するには、サービス アカウントをクリックし、[] タブをクリックします。[鍵を追加 > 新しい鍵を作成] をクリックし、鍵の種類として [JSON] を選択します。[作成] をクリックして、秘密鍵をパソコンにダウンロードします。
  2. 新しいサービス アカウントをユーザーとして Merchant Center アカウントに追加します。サードパーティ デベロッパーの場合は、クライアントにこの手順を行ってもらう必要があります。
    1. Merchant Center アカウントに移動します
    2. Merchant Center アカウントの設定で [アカウント アクセス] に移動します。
    3. [+ ユーザーを追加] をクリックし、新しいユーザーのメールアドレスとしてサービス アカウント ID を使用します。

      サービス アカウント ID をメモしていない場合は、[サービス アカウント] 管理ページに移動し、作成したプロジェクトを選択します。

    4. サービス アカウントの [ユーザー アクセス] と [メール通知] の設定を指定します。Accounts サービスを使用するには、管理者権限 が必要です。
    5. [ユーザーを追加] をクリックして設定を保存し、ユーザーのリストに戻ります。選択したユーザーロールとともにサービス アカウント ID が表示されます。
    6. 追加する他のすべてのサービス アカウントに対して、この手順を繰り返します。
  3. これで、サービス アカウントを使用して Merchant Center アカウントにアクセスできるようになりました。 Google アプリケーション のデフォルト認証情報フローを使用するか、サービス アカウント フロー を直接使用します。Content API for Shopping の サンプルでは、サポートされている各プログラミング言語でサービス アカウントの認証情報に両方のフローを使用する方法を示しています。コードサンプルを確認して、新しいサービス アカウントを試してみてください。また、独自のコードでサービス アカウントを使用するために必要な変更についてもご確認ください。

よくある質問

サービス アカウントで Merchant Center の管理画面にログインできますか?
いいえ。サービス アカウントは通常の Google アカウントではないため、Merchant Center の管理画面にアクセスすることはできません。
サービス アカウントのアクセス トークンはどのくらいの頻度で更新する必要がありますか?
アクセス トークンは、Google OAuth 2.0 認証サーバーによって発行されてから 1 時間後に有効期限が切れます。アクセス トークンの有効期限が切れたら、アプリケーションはクライアント ライブラリを使用して別のアクセス トークンを取得する必要があります。