[C#] Amazon Product Advertising API の利用(REST サンプルコードの修正)
C# で Amazon Product Advertising API の利用方法です。この API は商品情報とアフィリエイト(アソシエイト)用の URL が取得できます。Amazon の開発者向けサイトからダウンロードできるサンプルコードが古いので修正します。
アソシエイトタグ、Access Key ID と Secret Access Key の取得
最初に API 呼び出しに必要なキーの取得概要だけ紹介します。
Amazon アソシエイト のアカウントの作成し、***-22 という形式のアソシエイトタグ(トラッキング ID)を取得します。
さらに、アソシエイトのホームの「Product Advertising API」タブから Amazon Web Services アカウントを作成します。
最終的に、Amazon Web Services の IAM Management Console Your Security Credentials から、Access Key ID と Secret Access Key を作成・取得します。現在も作成した AWS のアカウントからキーを作成できますが、管理者ではなく IMA(Identity and Access Management) ユーザーを作りユーザーに対しキーを発行する方法が推奨されているようです。
サンプルコードの修正
Product Advertising API Signed Requests Sample Code – C# REST/QUERY : Sample Code & Libraries : Amazon Web Services という C# のサンプルが用意されているのですが、API バージョンが古いので修正します。
現在の API バージョン 2011-08-01 は、アソシエイトタグが API 呼び出しに必須です。
修正後のコードは、jz5/AmazonProductAdvtApiSample-2013 に置いてます。
SignedRequestHelper.cs
API 呼び出しの URL を生成できるヘルパークラスを修正します。コンストラクタ引数にアソシエイトタグを追加しています。
https://gist.github.com/jz5/d240691b29a402b7b12b
ItemLookupSample.cs
ヘルパークラス呼び出しのサンプルの修正です。アソシエイトタグの追加と、XML 名前空間の API バージョンを修正しています。
https://gist.github.com/jz5/be8a071681206529e227
以上で、サンプルが動作するようになります。