PA-API v5からCreators API(v3.3)への移行において、最もミスが起きやすいのが「パラメータ名の小文字化」と「リソース名の構造変更」です。
開発時に手元に置いておけるよう、主要な書き換え対応表を辞書形式でまとめました。
1. 基本リクエストパラメータの書き換え
リクエストのルート階層にある主要なパラメータは、先頭が小文字(ローワーキャメルケース)に変更されました。
| PA-API v5 (旧) | Creators API (新) | 備考 |
Keywords | keywords | 検索ワード |
ASIN / ASINs | asin / asin | GetItems時は単数形asinに統一 |
BrowseNodeId | browseNodeId | カテゴリーID |
PartnerTag | partnerTag | アソシエイトID |
PartnerType | (削除) | 新APIでは不要になりました |
SearchIndex | searchIndex | 検索カテゴリー |
ItemCount | itemCount | 取得件数 |
ItemPage | itemPage | ページ番号 |
SortBy | sortBy | 並び順 |
| (新規) | marketplace | 必須項目 (www.amazon.co.jp等) |
2. リソース名(Resources)の書き換え
resources 配列に指定する文字列も、構造レベルで小文字化・変更されています。
| PA-API v5 (旧) | Creators API (新) | 主な取得内容 |
ItemInfo.Title | itemInfo.title | 商品タイトル |
Images.Primary.Medium | images.primary.medium | メイン画像(中) |
Offers.Listings.Price | offersV2.listings.price | 最安値・現在の価格 |
BrowseNodeInfo.BrowseNodes | browseNodeInfo.browseNodes | カテゴリー情報 |
VariationSummary.Price | variationSummary.price | バリエーションの価格幅 |
3. レスポンスデータの参照パス書き換え
プログラム側で値を取り出す際のパスも変わります。JSONのキーがすべて小文字から始まる点に注意してください。
| 取得したいデータ | PA-API v5 でのパス | Creators API でのパス |
| ASIN | ...['ASIN'] | ...['asin'] |
| 商品名 | ...['ItemInfo']['Title']['DisplayValue'] | ...['itemInfo']['title']['displayValue'] |
| 価格(数値) | ...['Price']['Amount'] | ...['price']['money']['amount'] |
| 通貨単位 | ...['Price']['Currency'] | ...['price']['money']['currency'] |
| 詳細URL | ...['DetailPageURL'] | ...['detailPageURL'] |
4. 移行時の「落とし穴」回避ポイント
「marketplace」パラメータの必須化
旧APIではエンドポイント(URL)で国を判別していましたが、新APIではリクエストボディ内に "marketplace": "www.amazon.co.jp" の記述が必須です。これを忘れるとエラーになります。
「Offers」から「OffersV2」へ
価格や在庫情報を取得するリソース名が offers から offersV2 にアップグレードされました。構造も price の下に money オブジェクトが挟まる形(price.money.amount)に変更されているため、既存のパース処理の修正が必要です。
エラーレスポンスの形式
エラー時のキーも Errors から errors へ変更されています。例外処理を組んでいる場合は、参照しているキー名を一括置換しておきましょう。
Creators API Documentation
Documentation for Amazon Creators API
記事のまとめ
パラメータの書き換え自体は単純な置換作業が多いですが、offersV2 周りの階層構造の変化には注意が必要です。この辞書を参考に、まずは1つのASIN取得からテストを行い、徐々に全体のロジックを更新していくことをおすすめします。


コメント