このガイドでは、OAuth 2.0 を 使用して他のユーザーの Merchant Center アカウントへのアクセスをリクエストする方法について説明します。サードパーティ プロバイダの場合は、このワークフローを使用して、クライアントの Merchant Center アカウントへのアクセスをアプリにリクエストさせることができます。
自社の Merchant Center アカウントのみにアクセスする必要がある自社アプリを開発している場合は、アカウントにアクセスする をご覧ください。
アプリの確認をリクエストする
Merchant API にアクセスするアプリは、OAuth 検証の審査プロセスを受ける必要があります。未確認のアプリには警告 が表示され、機能が制限されます。
アプリとは、Google Cloud 内に一意の OAuth 2.0 クライアント ID を持つすべてのものを指します。
通常、確認プロセスには 3 ~ 5 営業日かかります。詳細と確認のリクエストの送信については、アプリの確認をご覧ください。
このポリシーはすべてのアプリに適用されます。ビジネスの中断を避けるため、できるだけ早くすべてのアプリで確認プロセスを受けることをおすすめします。
OAuth スコープを取得する
スコープの選択に関する問題を回避するため、段階的な承認 を設定します。
複数のOAuth スコープをリクエストした場合、アプリの同意画面ではデフォルトですべての OAuth スコープが選択解除されます。アプリがユーザーに同意画面を表示すると、ユーザーはアクセスを承認するために各スコープを手動で選択する必要があります。
Merchant API を使用するには、アプリが OAuth 同意画面で次のスコープをリクエストする必要があります。
https://www.googleapis.com/auth/content
OAuth リクエストからのレスポンスを確認して、アプリがこのスコープを受け取ったことを確認します。
詳しくは、OAuth 2.0 ポリシー をご覧ください。
リクエストの承認
アプリケーションから Merchant API に送信するすべてのリクエストには、承認トークンを含める必要があります。このトークンは Google でアプリケーションを識別するためにも使用されます。
認証プロトコルについて
リクエストを承認するために、アプリケーションは OAuth 2.0 を使用する必要があります。これ以外の認証プロトコルには対応していません。アプリケーションで「Google でログイン」を使用している場合、承認手続きの一部が自動化されます。
OAuth 2.0 を使用したリクエストの承認
Merchant API へのすべてのリクエストは、認証済みのユーザーによって承認される必要があります。
OAuth 2.0 の承認プロセス(「フロー」)の詳細は開発するアプリケーションの種類によって若干異なりますが、次の一般的なプロセスはすべての種類のアプリケーションに当てはまります。
- アプリケーションの作成時に、Google API Console を使用してアプリケーションを登録します。登録すると、後で必要になるクライアント ID や クライアント シークレットなどの情報が Google から提供されます。
- Google API Console で Merchant API を有効にします。(API が API Console に表示されない場合は、この手順をスキップしてください)。
- アプリケーションでユーザーデータにアクセスする必要がある場合は、特定のアクセスのスコープを Google にリクエストします。
- データをリクエストするアプリケーションの承認を求める Google の同意画面がユーザーに表示されます。
- ユーザーが承認すると、有効期間の短いアクセス トークンがアプリケーションに付与されます。
- アプリケーションは、リクエストにそのアクセス トークンを付与してユーザーデータをリクエストします。
- Google がそのリクエストとトークンが有効であると判断すると、リクエストされたデータが返されます。
プロセスによっては、更新トークンを使用して新しいアクセス トークンを取得するなど、追加の手順が必要になる場合もあります。各種アプリケーションのフローについて詳しくは、Google の OAuth 2.0 ドキュメントをご覧ください。
Merchant API で使用される OAuth 2.0 のスコープ情報は次のとおりです。
| スコープ | 意味 |
|---|---|
https://www.googleapis.com/auth/content |
読み取り / 書き込みアクセス。 |
OAuth 2.0 を使用してアクセスをリクエストする場合、アプリケーションを登録したときに Google から提供された情報(クライアント ID やクライアント シークレットなど)に加えて、スコープ情報が必要になります。
承認に使用できるサンプル を次に示します。