Merchant API では認証が厳密に求められます。認証には、OAuth 2.0 認証情報、サービス アカウント、またはアプリケーションのデフォルト認証情報(ADC)(通常はテストとローカル開発に使用されます)を使用できます。
サービス アカウントを使用して、Merchant API による独自の Merchant Center アカウントへのアクセスを承認できます。アプリがクライアントの Merchant Center アカウントにアクセスする必要がある場合は、サードパーティ製アプリに Merchant Center アカウントへのアクセスを承認するをご覧ください。
サービス アカウントは、ユーザーではなく、アプリケーションで使用される特別な種類のアカウントです。サービス アカウントは、アカウント固有のメールアドレスで識別されます。
これらの手順を完了するには、Merchant Center アカウントが必要です。
サービス アカウントを作成する
サービス アカウントの認証情報を生成するか、すでに生成されている公開認証情報にアクセスして、OAuth 2.0 クライアント ID を作成します。
- Google API Console に移動します。
- ページの上部にあるプルダウン メニューでプロジェクトを選択するか、[新しいプロジェクト] をクリックしてプロジェクトを作成します。
- Google API のリストで Merchant API を検索し、このプロジェクトで有効になっていることを確認します。
- [管理] をクリックします。
- 左側のサイドバーで [認証情報] を選択します。[認証情報] を表示するには、ページの左上にある左向き矢印をクリックする必要があります。
- [認証情報を作成]、[サービス アカウント] の順に選択します。
- サービス アカウントに名前を付けます。これは、サービス アカウント ID のデフォルトのユーザー名です。後で使用するために、サービス アカウント ID(「@」文字以降の部分を含む)を保存します。
[作成] をクリックし、オプションの手順に沿ってプロジェクトとユーザーにアクセス権を付与してから、[完了] をクリックします。
JSON 秘密鍵を取得する
Google API Console でサービス アカウントの JSON 秘密鍵を生成します。
- サービス アカウントをクリックし、[キー] タブを選択します。
- [鍵を追加] > [新しい鍵を作成] をクリックします。
- キーのタイプとして [JSON] を選択します。
- [作成] をクリックして秘密鍵をダウンロードします。注: 秘密鍵をダウンロードできるのは、秘密鍵の作成時のみです。このステップには後で戻ってくることはできません。
サービス アカウントに Merchant Center アカウントへのアクセス権を付与する
新しいサービス アカウントをユーザーとして Merchant Center アカウントに追加します。
- Merchant Center にログインします。
- [設定] 設定をクリックします。
- プルダウンで [アクセスとサービス] をクリックします。
- [ユーザーとアクセス] タブで、[ユーザーを追加] をクリックします。
新しいユーザーのメールアドレスとしてサービス アカウント ID を入力します。
サービス アカウント ID を保存していない場合は、[サービス アカウント] 管理ページに移動して、プロジェクトを選択します。
サービス アカウントのユーザー アクセスとメール通知の設定を指定します。
[ユーザーを追加] をクリックして保存し、ユーザーのリストに戻ります。サービス アカウント ID が、選択したユーザーロールとともに表示されます。
Merchant Center アカウント データにアクセスする必要があるすべてのサービス アカウントに対して、これらの手順を繰り返します。
よくある質問
- サービス アカウントを使用して Merchant Center の管理画面にログインできますか?
- いいえ。サービス アカウントは通常の Google アカウントではないため、Merchant Center UI にアクセスできません。
- サービス アカウントのアクセス トークンを更新する頻度はどのくらいですか?
- アクセス トークンは、Google OAuth 2.0 認可サーバーによって発行されてから 1 時間後に期限切れになります。アクセス トークンの有効期限が切れたら、アプリケーションはクライアント ライブラリを使用して別のアクセス トークンを取得する必要があります。トークンを手動で更新するには、
stored-token.jsonファイルを削除して再認証します。