出品パートナーアプリストアの認証ワークフロー
出品パートナーアプリストアを使用してアプリを認可します。
出品パートナーは、出品パートナーアプリストアで、SP-APIと統合するサードパーティ製アプリケーションを探し、接続できます。このようなアプリケーションは、出品パートナーがAmazonでの出品ビジネスを効率的に管理するのに役立ちます。出品パートナーが出品パートナーアプリストアのアプリケーションを使用するためには、自分のAmazon出品パートナーアカウントの情報にアプリケーションがアクセスすることを認可する必要があります。アプリケーションにアクセス権を付与するには、OAuthワークフローを通じて以下の手順を実行します。
ステップ1. 出品パートナーアプリストアから認可を開始する
- セラーセントラルにサインインし、出品パートナーアプリストアに移動します。
- を開きます Detail アプリケーションのページ。
- Authorize Nowを選択します。
ステップ2. アプリケーションの認可に同意する
-
アプリケーションによって要求されるデータアクセスを確認し、受け入れます。
-
Login to < your application name > nowを選択します。
Amazonは、お客様のログインURI(アプリケーションの登録時に指定)をブラウザーに読み込み、次のクエリーパラメーターを追加します。
パラメーター 説明 amazon_callback_uri
ブラウザーをAmazonにリダイレクトするためのURI。 amazon_state
クロスサイトリクエストフォージェリ攻撃を防ぐためにAmazonが生成する状態値。 selling_partner_id
アプリケーションを認可している出品パートナーの識別子。 注
注: テストワークフロー(OAuth認可URIに移動することから開始)の場合、Amazonは
version=beta
パラメーターを含めます。実稼働ワークフロー(出品パートナーアプリストアから開始)の場合、Amazonはパラメーターを含めません。例:
https://d2yzyfnnpjylxu.cloudfront.net/index.html?amazon_callback_uri=https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57&amazon_state=amazonstateexample&selling_partner_id=A3FHEXAMPLEYWS
ステップ3. ウェブサイトにサインインする
-
Web サイトにサインインします。アカウントをお持ちでない場合は、まず登録プロセスを完了する必要があります。
-
アプリケーションが(前のステップでAmazonから渡された)AmazonコールバックURIをブラウザーに読み込み、次のパラメーターを追加します。
パラメーター | 説明 |
---|---|
redirect_uri | ブラウザーをアプリケーションにリダイレクトするためのURI。これは、アプリケーションを登録したときに指定したOAuthリダイレクトURIである必要があります。redirect_uri パラメーターを含めない場合、デフォルトはアプリケーションの登録時に指定した最初のOAuthリダイレクトURIです。オプション |
amazon_state | 前のステップでAmazonから渡されたamazon_state 値。 |
state | アプリケーションによって生成される状態値。アプリケーションはこの値を使用してこのリクエストとレスポンスの間の状態を維持し、クロスサイトリクエストフォージェリ攻撃を防ぐのに役立ちます。 重要:OAuth情報はURIクエリーパラメーターを介して渡されるため、以下の操作を行うことを強くお勧めします。(1)状態トークンの有効期間が短く、検証可能な形でユーザー固有のものであることを確認し、(2)ウェブサイトがリンクしているウェブサイトに機密情報が漏洩するのを防ぐ、 |
注
ワークフローをテストする場合は、以下も含める必要があります
version=beta
パラメータ。これにより、ワークフローでアプリケーションが確実に承認されます。Draft
状態。パラメータを指定しない場合、ワークフローは販売パートナーアプリストアで公開されているアプリケーションを承認します。
例:
https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57?redirect_uri=https://d2yzyfnnpjylxu.cloudfront.net/landing.html&amazon_state=amazonstateexample&state=-37131022&version=beta
または
https://amazon.com/apps/authorize/confirm/amzn1.sellerapps.app.2eca283f-9f5a-4d13-b16c-474EXAMPLE57?redirect_uri=https://d2yzyfnnpjylxu.cloudfront.net/landing.html&amazon_state=amazonstateexample&state=-37131022
ステップ4. Amazonが認可情報を送信する
セラーセントラルには、Amazonがデータへのアクセスを認可していることを示す通知が表示されます。このページが表示されている間、以下のアクションが実行されます。
-
AmazonはOAuthリダイレクトURIをブラウザーに読み込み、以下のクエリーパラメーターを追加します。
パラメーター 説明 state
前のステップで渡した状態値。 selling_partner_id
アプリケーションを認可している出品パートナーの識別子。 spapi_oauth_code
LWA更新トークンと交換するAmazonアカウントでログイン(LWA)認可コード。詳細については、ステップ5. アプリケーションでLWA認証コードとLWA更新トークンを交換するを参照してください。
注: LWA認証コードは5分後に期限切れになります。期限切れになる前に LWA更新トークンと交換する必要があります。例:
https://client-example.com?state=state-example&selling_partner_id=sellingpartneridexample&spapi_oauth_code=spapioauthcodeexample -
アプリケーションは状態値を検証します。
-
アプリケーションは以下を保存します。
selling_partner_id
そしてspapi_oauth_code
値。 -
ウェブサイトのランディングページが起動します。
重要
サインアッププロセスが10分を超えると、AmazonコールバックURIと状態が期限切れになり、ワークフローが中断されるのでご注意ください。サインアップ後にAmazonコールバックURIへのリダイレクトが検出されない場合、開発者はその出品パートナーにWebサイトワークフローによるOAuthフローを開始してもらう必要があります。あるいは、出品パートナーが出品パートナーアプリストアのアプリケーション詳細ページに戻り、ワークフローを再開することも可能です。
ステップ5. LWA認可コードとLWA更新トークンを交換する
ヒント
注:オプションでJavaScriptにAmazonアカウントでログインを使用してLWA認可コードをLWA更新トークンとの交換を支援できます。詳細については、Amazonアカウントでログインに関するドキュメントを参照してください。
-
アプリケーションがAmazonアカウントでログイン(LWA)認可サーバー(
https://api.amazon.com/auth/o2/token
)を呼び出し、LWA認可コードをLWA更新トークンと交換します。呼び出しには以下のクエリーパラメーターを含める必要があります。パラメーター 説明 grant_type
リクエストされたアクセス許可のタイプ。 authorization_code
である必要があります。code
ステップ4. Amazonが認可情報を送信するで受信したLWA認可コード。 redirect_uri
アプリケーションのリダイレクトURI。 client_id
LWA認証情報の一部。この値を取得するには、アプリケーション情報と認証情報の表示を参照してください。 client_secret
LWA認証情報の一部。この値を取得するには、アプリケーション情報と認証情報の表示を参照してください。 例:
POST /auth/o2/token HTTP/l.l Host: api.amazon.com Content-Type: application/x-www-form-urlencoded;charset=UTF-8 grant_type=authorization_code&code=SplxlOexamplebYS6WxSbIA&client_id=foodev&client_secret=Y76SDl2F -
LWA認可サーバーはLWA更新トークンを返します。レスポンスはJSON形式で、以下の要素が含まれます。
パラメーター 説明 access_token
出品パートナーに代わってアプリケーションが特定のアクションを実行することを認可するトークン。詳細については、Selling Partner APIへの接続を参照してください。 token_type
返されるトークンのタイプ( bearer
である必要があります)。expires_in
アクセストークンが無効になるまでの秒数。 refresh_token
新しいアクセストークンと交換できる長期間有効なトークン。詳細については、Selling Partner APIへの接続を参照してください。 HTTP/l.l 200 OK Content-Type: application/json; charset UTF-8 Cache - Control: no-store Pragma: no-cache { "access_token": "Atza|IQEBLjAsAexampleHpi0U-Dme37rR6CuUpSR", "token_type": "bearer", "expires_in": 3600, "refresh_token": "Atzr|IQEBLzAtAhexamplewVz2Nn6f2y-tpJX2DeX" } -
アプリケーションは、
refresh_token
値を保存します。 -
ブラウザーは、アプリケーションを使用するための次のステップを示すページを開きます。
注
LWA更新トークンは、LWAアクセストークンと交換する長期間有効なトークンです。このトークン交換を通じて取得するアクセストークンは、多少異なる認可モデルを使用する、制限付きオペレーションと許可不要のオペレーションを除くすべてのSelling Partner APIオペレーションの呼び出しに含める必要があります。アクセストークンは発行後1時間有効です。有効期限が切れるまで、同じアクセストークンを複数のAPI呼び出しに使用できます。
生成されたSDKを使用して更新トークンをアクセストークンと交換するには、生成されたJava SDKを使用したSelling Partner APIへの接続を参照してください。更新トークンを手動でアクセストークンと交換する方法については、Selling Partner APIへの接続を参照してください。
ステップ 6:(オプション) 認証ワークフローをテストする
認証ワークフローをテストして、アプリケーションがAmazonとパラメータを交換し、認証情報を受信できることを確認することをお勧めします。承認ワークフローは、申請中にテストする必要があります。 Draft
ステータス。
-
アプリケーションが入っていることを確認してください
Draft
ステータス。 -
テスト用に 1 つ以上の OAuth 認証 URI を作成します。以下を含めてください。
version=beta
OAuth URI のパラメーター。このワークフローが OAuth でアプリケーションを承認するためのものであることを示すDraft
ステータス。詳細については、「」を参照してください。 OAuth オーソライゼーション URI の作成。ステップ 1. 出品パートナーが出品パートナーアプリストアから認可ワークフローを開始するから始める代わりに、既存のOAuth認可URIに移動することでテストワークフローを開始できます。
ヒント
信頼できる販売パートナーとワークフローをテストする場合は、その販売パートナーが営業地域に対応するOAuth認証URIを持っていることを確認してください。
テスト認可ワークフローが成功したら、実稼働ワークフローに変換できます。
ステップ 7:(オプション) テスト承認ワークフローをプロダクションワークフローに変換する
-
出品パートナーアプリストアにアプリケーションを掲載してください。この操作により、アプリケーションが自動的に次のものから変更されます。
Draft
にPublished
。 -
ワークフローを更新して削除してください
version=beta
Amazon コールバック URI のパラメータ。このパラメータを削除すると、どの販売パートナーも公開アプリケーションを承認できるようになります。 ステップ 1。
ワークフロー図
次の図は、販売パートナーアプリストアとウェブサイトの OAuth ワークフローの概要を示しています。
Updated 27 days ago