Header
2019-04-01
2019-10-03

Ruby on RailsでAmazon アフィリエイトのProduct Advertising APIが利用できない

2019 04 01 161 min

適当なアプリでAmazon アフィリエイトのAPIを使ってアフィリエイトリンクを作成しようとしたのですが、リクエストがずっとエラーで利用できませんでした。

以下原因とプログラミング言語はRubyで利用する場合の内容です。

仕様変更で売上実績がないとAmazon アフィリエイトのAPIは利用できない

2019年01月23日のポリシー変更で

売上実績の発生がない場合は、Amazon API (Product Advertising API 通称PA-API)の利用開始はできません。 となっていて

実際APIへrequestを投げても、エラーが返ってきて利用できませんでした。

売上実績がない場合は素直にsearchウィジットやAmazon公式から生成した商品リンクなどを利用する必要があります。

こちらはワードプレスのプラグインでも同様です。

なおアフィリエイト売上が実績が発生するとAPIを利用できるようになります。

※2019年01月23日以前にAmazonアフィリエイトのAPIアカウントを取得しているしていて、売上実績がない場合は段階的に、リクエスト上限が減り最終的にAPIを利用できない恐れがあります。  

Rubyでサーチウィジットを利用する場合

記事の右下の中盤と記事の最下部にカテゴリーに関連した技術書籍のAmazonリンクを表示したかったのですが

APIが利用できないため、単純にamazonの商品検索ウィジット(サーチウィジット)を利用して DBへから検索用キーワードを取得し表示する設定にしました。

設定例

Amazonのsearchウィジット用商品コードをダウンロード

ウィジット画像

※検索キーワードのRubyは例として表示しています。

商品コードをページに設定

パーシャルに商品コードを設定

articles/partial/amazonsearch.html.erb

<script type="text/javascript">amzn_assoc_ad_type ="responsive_search_widget"; amzn_assoc_tracking_id ="自分のアカウントID"; amzn_assoc_marketplace ="amazon"; 
amzn_assoc_region ="JP"; amzn_assoc_placement =""; amzn_assoc_search_type = "search_widget";amzn_assoc_width ="auto"; amzn_assoc_height ="auto"; 
amzn_assoc_default_search_category =""; amzn_assoc_default_search_key ="<%= search_wards %>";amzn_assoc_theme ="light"; amzn_assoc_bg_color ="FFFFFF"; </script>

<script src="//z-fe.amazon-adsystem.com/widgets/q?ServiceVersion=20070822&Operation=GetScript&ID=OneJS&WS=1&Marketplace=JP"></script>

article.html.slimで呼び出し

== render partial: 'articles/partial/amazon_search', locals: { search_wards: ”Ruby”}

※DBへアフィリエイト用キーワードを設定して表示するのでも可

以上になります。

Rubyでサイトをスクレイピングし、ローカルに画像を保存する

Rubyの練習問題:配列編|初心者・独学者向け入門コンテンツ

Ransackとajax で検索結果を動的に表示する|Ruby on Rails5

Ruby on Railsで外部APIを利用して、簡単なアプリケーションを作成する

前の記事
次の記事
人気記事
カテゴリーから記事を探す