APIのインプットに対するアウトプットイメージを整理する。
URL
Type | 必須(Required) | POST | |
URL | 必須(Required) | https://api.amazon.com/auth/o2/token | |
Param | (none) | (none) | (none) |
Header
Param | (none) | (none) | (none) |
Body
Type | 必須(Required) | x-www-form-urlencoded | |
Key | 必須(Required) | grant_type | refresh_token |
必須(Required) | refresh_token | Atz…※1 | |
必須(Required) | client_id | amz…※2 | |
必須(Required) | client_secret | amz…※2 |
※1 リフレッシュトークン:
・「セラーセントラル > 左上の「三」 > アプリとサービス > アプリの開発」を開く。
・「新しいアプリクライアントを追加」で作成した際のトークンを確認する。
※2 クライアントID、秘密鍵:
・「セラーセントラル > 左上の「三」 > アプリとサービス > アプリの開発」を開く。
・対象となるアプリの「LWA認証情報」で表示可。
結果(Response)
{
"access_token": "Atz...",
"refresh_token": "Atz...",
"token_type": "bearer",
"expires_in": 3600
}
上記のアクセストークンの値を使って、SP-APIに対してリクエストを投げる。
phpコード
postmanで生成されたphpコードの例)
- <?php
- $curl = curl_init();
- curl_setopt_array($curl, array(
- CURLOPT_URL => 'https://api.amazon.com/auth/o2/token',
- CURLOPT_RETURNTRANSFER => true,
- CURLOPT_ENCODING => '',
- CURLOPT_MAXREDIRS => 10,
- CURLOPT_TIMEOUT => 0,
- CURLOPT_FOLLOWLOCATION => true,
- CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
- CURLOPT_CUSTOMREQUEST => 'POST',
- CURLOPT_POSTFIELDS => 'grant_type=refresh_token&refresh_token=Atz(省略)&client_id=amz(省略)&client_secret=amz(省略)',
- CURLOPT_HTTPHEADER => array(
- 'Content-Type: application/x-www-form-urlencoded',
- 'X-Amz-Content-Sha256: aaf(省略)',
- 'X-Amz-Date: 20230730T123926Z',
- 'Authorization: AWS4-HMAC-SHA256 Credential=<アクセスキー>/20230730/us-west-2/execute-api/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date, Signature=c56(省略)'
- ),
- ));
- $response = curl_exec($curl);
- curl_close($curl);
- echo $response;
関連記事
・phpでSP-APIを利用する方法(認証編)
・SP-APIリクエストをPostmanで確認する方法
・SP-APIリクエスト(アクセストークン取得)
・SP-APIリクエスト(商品情報取得)
・SP-APIリクエスト(商品情報取得JAN)
・SP-APIリクエスト(価格取得)
参考
・Postman API Platform
https://www.postman.com/
・【Postman】配列データを送るやり方を解説します
https://www.tairaengineer-note.com/postman-send-array/
ブログ記載関連)
・マージナルソフト:ソースをHTML化
コメント