ちょっと前にメールが来てて「何だろう・・・」でそのままにしていたAmazonアソシエイトのPA-API仕様変更。突然メールが来て何が何だか・・・という方も多いのではないでしょうか??

私も「ふーーーん」と受け流してメールは削除してしまったのですが(笑)、きちんと適切に対応しないとPA-APIが使えなくなりますよ!というのが管理画面にも表示されています。
Amazonアソシエイトからのお知らせはここだけの話理解不能というか分かりにくいというか・・・で私もこれまでいろいろな仕様変更に対して理解するのに時間がかかりました(笑)。
巷では売り上げが計上されないなんていう情報が流れているような流れていないような・・・もありますが、それも含めてあくまでも私の解釈のもと、できる限り分かりやすく「何が必要なのか?どうすればいいのか?」を紹介したいと思います。
そもそもPA-APIって何?私はそれを使っているの?
多分使用に関わらずメールはすべてのAmazonアソシエイトユーザーに送られているでしょうし、全員の管理画面に表示されていると思われます(想像です)。
PA-APIはAmazonの商品の中から希望に沿った(プログラムが要求した)商品データなどを取得するための機能。つまりPA-API経由でデータを取得して商品の紹介などをしている人でなければ何もすることはないんです。ご自身が使っているかはWordPressであればテーマやプラグインなどの設定で「アマゾンアソシエイトの認証キー(アクセスキー、シークレットアクセスキー)」を入力した覚えがあるかどうかです。覚えがなければ何もすることはありません。
問題は、PA-APIを使っている場合はきちんとアソシエイト・セントラルの認証キーが使われているかを確認する必要があるということになります。
マニュアルは公式ページの「移行ガイド」に書かれていますが、何とも分かりにくい・・・(私だけでしょうか??)。
アマゾンのapiを使うための認証キーには簡単に言うと以下の2種類があるんです
- AWS(アマゾンウェブサービス)で取得した認証キー
- Amazonアソシエイト(セントラル)で取得した認証キー
前者は【AWS認証キー(AWSアクセスキー、AWSシークレットキー)】と呼ばれ、アマゾンウェブサービスから取得した認証キーのことで、後者はAmazonアソシエイト(セントラル)で取得した認証キーのことを言います。多分この段階で混乱される方が多いでしょうね。
つまり現状ではどちらの認証キーでもPA-APIを使が使えるのを、APIバージョン移行後はAWS認証キーでの使用ができなくなるというのが大きな変更になるということなんです。
どちらの認証キーを使っているかを確認するには移行ガイドの中のリンクをクリックして、そこに登録されている認証キーがサイトの設定で使われているかどうかで判断できます。
移行ガイドを開くと【ステップ1. 新しいアクセスキーの取得】のところにPA-API設定ページへのリンクがありますのでクリックします。

すると画面が変わりますので、「認証キーの管理」という部分までスクロールして

に書かれている「アクセスキーID」がサイト内でPA-APIのキー設定をする画面のものと一致しているかを確認すればOKです。
いかがでしたか?大丈夫でしたか??
一致していれば何もすることはありません。もしも違ったらこちらへ変更してきちんと動作するか確認しましょう。
認証には「アクセスキーID」と「シークレットアクセスキー」が必要で、「シークレットアクセスキー」は作成時にしか表示・ダウンロードできませんので、「シークレットアクセスキー」が不明な場合は認証キーを一旦削除してから追加する(2つまで生成できるので追加するだけでも可)などして取得するようにしてください。
WordPressで作るサイトでどんな影響があるのか?
「ふ~~確認もしたし、変更もしたから安心・・」ではありません。肝心なことが抜けています。
今回の変更はキーの変更ではなく、PA-APIの仕様変更が発生するということなのです。
むしろ問題はここからでしょう。仕様が変更されるということは・・・今使っているプラグインやテーマの機能で、Amazonアソシエイト(セントラル)のPA-APIに対応していないもの、対応していてもV5に対応していないものは使えなくなるということです。
何がどう変わるのかはPA-API 4.0 to 5.0 Mappingに詳しく書かれています。
が、自身で作ったプログラムでなく、プラグインやテーマの機能として追加している場合(圧倒的にこちらの方が多いでしょう)、V5(仕様変更後のPA-API)に対応したものに更新されないと基本的に商品の掲載ができなくなります。
残念ながらAmazonアソシエイト(セントラル)ではテストの方法と使えなくなる日しか書かれておらず、いつからこの仕様に切り替わるのかが書かれていませんのでバシッと入れ替えになるのか?ある程度猶予期間があるのかは不明なのですが、恐らくバシッと入れ替わるので、その後プラグイン等にアップデートを待つしかないということになります。
切り替え日は2月とのこと。それ以降は3月9日まではバージョン4.0、バージョン5.0の両方に対応するそうです(届いたメール含め後述しています)。
古いプラグインではもう開発放棄されていて更新されない可能性がありますから、それを使い続けるためには自身で変更するしかないでしょう(泣)。
当初の予定では2019年11月30日で切り替えるという情報でしたから、実際にその日が過ぎても商品が掲載されることがあるのでひょっとすると
「2019年11月30日を過ぎたのに商品表示されとる。この情報は嘘か!」
と思われるかもしれませんが、これは、プラグインなどが設けるキャッシュ(一時的なデータ保存)機能が働いているからで、その間はたとえ仕様が変わって実際に商品情報を引っ張ることができなくなっていても商品は表示されますし、そこ経由で売り上げも計上されます。でもその後は・・・となりますので、間違いではありません。
前述したように最終的には2020年3月9日を過ぎるとV4.0仕様のコードでは商品情報の取得ができなくなりますから、対策は必須となります。
それからもう1つ。WordPressのプラグインの多くは【AWS認証キー(AWSアクセスキー、AWSシークレットキー)】のみを使うものもありますので、それらのプラグインが更新され対応できるようにならなければそちらも使用し続けることができないということになりますので注意が必要です。
プラグインやテーマがPA-API 5.0に対応していないときは・・
残念ながら現段階でPA-API 5.0への対応が完了していない(更新されていない)テーマやプラグインは今後PA-API 5.0に対応していくとは考えにくいと考えられるので、それらの使用をスパッとあきらめる、Amazonアソシエイトの商品表示をあきらめる、新たに対応しているものを探すのいずれかになると思います。
そこで、参考資料として、他サイト様で紹介されていたコードを引用しつつ、後から管理しやすいように導入する方法を紹介した
を参考に切り替えを行うのも1つの手だと思います。
この方法を使うと

のようなカード型の商品表示ができます。
PA-API 5.0に適用できているかの確認方法
WordPressでPA-APIを使った商品表示をする場合のほとんどはテーマの機能を使うか、プラグインに頼ることが多いと思います。
そこで「自分のサイトの商品はきちんとPA-API5.0が使われているの??」と不安に思われる方もいるでしょう。

PA-API 5.0経由で商品のクリックや成果が発生しているかどうかは最終的に「Amazonアソシエイト」のレポートで確認できます。「Amazonアソシエイト」にログインして「レポート」メニューをクリックすると切り替わったページ中程に以下のような欄があります。
そこで「リンクタイプレポート」タブをクリックすると、上のような画面が表示できます。
そこに赤枠で囲んだ部分のように「PA-API 5」の欄が存在していればひとまず対応はできていると判断できます。
もしも画像のように「PA-API」と「PA-API 5」が両方存在している場合には管理されているサイトによって、もしくはサイト内の商品表示によって両方のバージョンが存在しているということになりますので、同じレポート上でPA-APIのバージョンを切り替えた日付で絞って確認するなどして漏れがないかチェックしましょう。
プラグインや機能の状況、キャッシュの有無などによってはしばらく様子を見る必要があるかもしれません
ここに書く必要はないかと思いますが一応・・・、テーマやプラグインの更新を行うことで一部の機能が変更されてしまったり、カスタマイズした内容が上書きされて台無しになってしまったりすることがありますから、更新前にバックアップを取るなりして対処してくださいね!

あとがき
以上がPA-APIの仕様変更で確認すべきことと仕様変更後の懸念事項になります。
再度お断りしておきますが、この記事はあくまでも私の解釈ですので、内容が誤っている可能性がありますので、参考としてご覧ください。
正確に大丈夫か?を確認するにはご自身で問い合わせていただくのが最良かと思います(Amazonアソシエイトからの回答で理解できるかどうかは個人的に??な感じもしますが・・)ので確認してみてください。
2020年1月23日 追記 --3月9日まではどちらのバージョンも使用可
Amazonアソシエイトから以下のようなメールが来ました
Hello associate,
We would like to inform you that all of your applications making calls to Amazon’s Product Advertising API version 4.0 (PA API 4.0) will need to upgrade to Amazon’s Product Advertising API version 5.0 (PA API 5.0) by *March 9**, 2020*.
PA API 5.0 is a more simple, granular, and consistent API that enables you to quickly and easily link your content to Amazon.
*Key Features & Changes*
* Access information about the latest offers and products in the entire Amazon product database/catalog, such as Prime discounts, multi-currency formats, and shipping eligibility
* Newer, improved ways to get the most relevant and up to date product information
* Rapid integration and easier development with lower engineering cost through use of popular tools and languagesYou may continue to use both PA API 4.0 and PA API 5.0 without disruption through March 9, 2020. After that date, we will deprecate PA API 4.0
Click here for more information on PA API 5.0. When you are ready to upgrade to PA API 5.0, please follow BOTH of the two steps below:
1. Migrate your AWS account to a Product Advertising API account, if you have not done so already.
2. After completing step 1, upgrade each of your applications to PA API 5.0, as per the details here .If you have further questions or problems with the upgrade, please contact us here and include your Store ID.
We wish you a happy new year.
The Amazon Associates Program
Sincerely, The Amazon Associates Program
Google翻訳の力を借りつつ要約すると・・
AmazonのProduct Advertising APIバージョン4.0(PA API 4.0)を呼び出すすべてのアプリケーションは、* 2020年3月9 **までにAmazonのProduct Advertising APIバージョン5.0(PA API 5.0)にアップグレードする必要がある
バージョン5.0の主な機能と変更点は大きく以下の3点
- プライム割引、多通貨形式、配送資格など、Amazon製品データベース/カタログ全体の最新のオファーおよび製品に関する情報へのアクセス
- 最も関連性がある最新の製品情報の情報取得方法の改善
- 一般的なツールと言語の使用により、エンジニアリングコストを削減し、迅速な統合と開発の容易化
2020年3月9日まで4.0と5.0の両方を引き続き使用できるが、その日以降4.0は廃止され、使用できなくなる。
PA-APIへの移行(前述したようにこれ結構分かりづらい)とバージョンへの対応
AWSアカウントをProduct Advertising APIアカウントに移行します(まだ行っていない場合)。
AWSのアカウントではなくAmazonアソシエイトにログインして設定するPA-APIを使いなさいということです
手順1の完了後、こちらの詳細に従って、各アプリケーションをPA API 5.0にアップグレードします。
プラグインなどで商品の表示をしている場合はプラグインの更新待ち、または、自力で更新しなさいということです。
2020年2月7日追記 まだV4.0を使ってますよ!というメールが来た
今回はco.jp(日本のサイト)から日本語でメールが来ました。
=====================================================================
Amazon.co.jp
=====================================================================
平素は格別のお引き立てを賜り、誠にありがとうございます。
Product Advertising API (以下PA-API)の新しいバージョン(PA-API v5)への移行のご案内となります。ご登録のサイトから現行のPA-API v4のCallを少なくとも1回以上検知したためご連絡致しました。既にご案内させて頂いておりますように、お客様において、PA-API v5への移行を2019年3月9日までに実施しなかった場合、現行のPA-APIをご利用いただけなくなります。
[移行の手順]
下記URL記載の詳細なPA-API v5移行ガイドをご確認ください。現時点で移行プロセスを実施しても、2020年3月9日までは引き続き現行PA-APIをご利用いただけます。[主な機能と変更点]
PA-API v5はこれまでよりもシンプルで、より詳細な情報を取得できる、さらに安定したAPIです。・最新の出品情報(金額など)や商品カタログの情報をAmazonのデータベースより取得することができます。加えて、プライム対象かどうか、他の通貨での商品金額、発送情報なども取得することができます。
・改善された手法により最新のデータを取得することができるようになります。
・SDKツールやプログラミング言語別のサンプルなどが提供されます。ご不明な点がございましたら下記ページをご参照ください。
今後ともAmazonアソシエイト・プログラムをどうぞよろしくお願いいたします。
The Amazon Product Advertising API team
PA-API4.0を使ってデータを取得してますよ!早急にV5.0で取得するように変更してくださいねと読んだ通りの内容です。まだ対応させていないですから当然です。
私の場合は「CS-SHOP」というプラグインで商品表示をさせていて、正式に変更日が知らされている今の段階でもプラグイン更新されない・・・ということは、恐らくプラグイン作者は開発放棄していると思われ、このままだと3月9日で終了・・・となるでしょう(泣)。
便利なプラグインですし、AmazonアソシエイトのAPIによるデータ取得方法の問題だけですし、コードが分からんでもないので自力でマイグレーションして使い続けようとは思っています(まあ現状それほどAmazonアソシエイトでの収益もないので気長に考えてます)。
恐らく皆さんにもこのメールが届いたのか、この記事のアクセス数が大幅に増えていますのでもう一度簡潔にどうしたらいいのかを紹介すると
- AWSで取得したAPIキーを使用している場合はPA-APIの取得をする
- PA-APIで取得したキーで動作しないプラグインは今後使えなくなるので、プラグインを変える
- プラグインの公式ページ等を見て、PA-API v5.0に対応していない、またはする予定がなさそうな場合にはプラグインを変える
ということですね。
Amazonアソシエイトからの収益が命!という方でなければ、APIによるデータの取得ができない=商品が表示されない=収益がなくなるということで、Amazonアソシエイトのアカウントが消失するわけではないでしょうから、ゆっくりじっくり対応するか、対応済のテーマ・プラグインへの変更を検討すればいいかと思います。変更したらしたでショートコードの入れ替えなど大変な作業が待っている方もいるでしょうから・・・。
おまけ Product Advertising API 利用ポリシー変更について
2019/01/23 – Product Advertising API 利用ポリシーの変更について
のポリシー改訂により、PA-API(Product Advertising APIの略)でデータをちょーだい!とリクエストできる回数に制限が設けられているのはご存知かと思います。
でも原則PA-APIを利用する場合には
- 原則としてキャッシュ(保存)したデータを表示してはいけない
- 24時間以内に取得したデータを表示しないといけない
- 1時間に1回以下の更新頻度で価格情報・発送可能時期を表示する場合にはいつの情報なのかを表記する必要がある
というのがProduct Advertising API ライセンス契約の「4.利用要件」の「n」「o」
で定められているのをご存知ない方が多いと思います。
この内容を一番厳しくとらえると、多くのテーマやプラグインで組み込まれているキャッシュ機能は使ってはいけない(例外として24時間以内は可)ことになります。また、価格については原則都度取得して表示しなければなりません。
さらに規約にはそうした疑いがあって連絡を受けた場合にはAmazonアソシエイトにプログラムコードを提出するなどして潔白を証明しなければならないとも書かれています。
ただ、これを遵守しているとごく少量の商品を掲載している場合でもそのページへのアクセス数によってはすぐに1日のリクエスト上限数を超えてしまうのも事実・・・。
一生懸命規約を読みましたが、このリクエスト数がPA-APIへの接続を「1」とカウントするのか?それぞれの情報を「1」とするのか?が不明ですが、後者の場合の例をあげると、
1つの商品リンクで商品名・説明・メーカー・画像の4つをリクエストしているとして、10個の商品リンクがある記事が100回閲覧されると4リクエストx10商品x100ページビュー=4,000となり、この条件の記事が3個あるだけで1日の上限(8,640)を超えてしまうことになります。個人的には「こんな条件で30日以内にPA-API経由で売り上げがなければPA-APIが使えなくなる」というのはどう?とさえ思える数字です。これは前者のPA-APIへの接続を「1」とカウントする場合でも相当厳しい数字だと思います。
この対策として多くのプラグインやテーマでは、ある程度の期間キャッシュするようにしたり、価格については取得日時を表示するようにしたりしています。訪問者にとってもサイト運営者にとってもできるだけ商品が表示されるようにする措置なので仕方ない部分でもあるのですが、厳密には前述したように規約違反ですから、PA-APIの規約違反と判断される可能性があることを理解した上で自己責任で利用するようにしてください。
※商品表示機能のあるテーマやプラグインの説明にPA-APIから取得した情報をキャッシュすることについての記述が何もないものは規約の把握をされずに作成されている可能性や知っててあえて書いていないというものもあると思いますから必ず確認するようにしましょう。