【対応中】 Amazonの商品情報が表示されなくなっています 【Amazon Product Advertising API v5.0】

Amazon ロゴ
Amazon Product Advertising API v5.0に更新し忘れました。\(^o^)/


Amazonのアフィリエイトに関するプログラム(Amazon Product Advertising API)がアップデートされ、3/9までで旧バージョン(v4.0)が使えなくなった影響で、Amazonの商品情報が表示されなくなっています。本来であれば商品情報、ジャケット写真、価格などが表示されるはずなんですが、2020/03/24現在何も表示されません。




エラーログを見ると、


ServerException(code: 503): Server error: `GET https://webservices.amazon.co.jp/onca/xml?AWSAccessKeyId=...


となっていて、リクエストがv4.0で送られているようです。Product Advertising APIへのアクセスに使用しているLaravelライブラリ「revolution/laravel-amazon-product-api」のバージョンが古いのかなと思って調べてみると、最新バージョンは4.1.1。一方でcomposer.jsonは以下のようになっていて、メジャーアップデートに対応してませんでした。


"require": {
   "revolution/laravel-amazon-product-api": "^2.0"
}


以下のように書き換えてcomposer update


"require": {
   "revolution/laravel-amazon-product-api": "^4.0"
}


これで「revolution/laravel-amazon-product-api」のバージョンが最新になりましたが、相変わらず商品情報は表示されず、エラーは以下のように変わりました。


[403] Client error: `POST https://webservices.amazon.co.jp/paapi5/getitems` resulted in a `403 Forbidden` response:
{"__type":"com.amazon.paapi5#AccessDeniedException","Errors":[{"Code":"AccessDeniedAwsUsers","Message":"The Access Key I (truncated...)


要するに、認証情報(アクセスキーとシークレット)を新しくしなくてはいけないということ。移行ガイドにもそう書いてあるので、そういうことなんだと思うんですが、アソシエイト・セントラルにアクセスしてもこんな表示で何も出来ない。。なぜか見落としていたけど、Amazonからの案内にはこうあって、


【PA-API v5移行のご案内】PA-API の新しいバージョンについてご紹介します。現在PA-APIをご利用の方で引き続きのご利用をご希望の場合、移行手続きが必要になります。PA-API v5への移行を2020年02月11日までに実施しなかった場合、現在のPA-APIはご利用をいただけなくなります。

アソシエイト・セントラル – Product Advertising API


僕は「v4.0では利用できなくなる」と解釈していたんだけど、いやもしかして、「Amazon Product Advertising API」そのものが利用できなくなるってこと?なにそれやばい。


一応、現在Amazonに問い合わせ中ですが、ちゃんとした返事が返ってくる可能性は低いかな……その場合は、WordPressのプラグインを使うことにするけどさ。いやあどうしよ。