プログラミング PR

【Keepa APIの使い方】公式レファレンスを日本語訳してみました【Product Object】

Keepa APIのレスポンスの1つ、「Product Object」の公式レファレンスを日本語訳しました。

商品情報を検索するリクエスト「Request Products」の実行結果であり、商品価格や販売数の情報が中に入っています。

最も需要がある情報なので、どんな情報が取得できるかをしっかり把握しておきたいですね。

それでは、↓から日本語訳スタートです!

  • 「参考」で囲った部分は筆者の補足です。
  • 適宜サブタイトルの追加や、意訳を実施しています。
  • Keepaから翻訳の許可を頂いております。

こちら↓↓↓の記事に全てのKeepa APIに関する日本語訳記事をまとめているので、他のレファレンスも確認したい場合はご参考ください!

【Keepa APIの使い方】公式レファレンス日本語訳のまとめ 当ブログで投稿してきたKeepa APIの公式レファレンス(英語)の日本語訳解説のまとめ記事です。 Google翻訳でページ一括...

概要

Product Objectには、すべての価格履歴データと基本的な商品情報が含まれています。

Product Objectを返すリクエスト

Product Objectは、次のリクエストによって返されます。

重要なポイント

常に productType フィールドを最初に評価します。

このフィールドは、取得対象ASINで使用できるデータを決定します。

レスポンスの形式

{
    "productType": Integer,
    "asin": String,
    "domainId": Integer,
    "title": String,
    "trackingSince": Integer,
    "listedSince": Integer,
    "lastUpdate": Integer,
    "lastRatingUpdate": Integer, 
    "lastPriceChange": Integer,
    "lastEbayUpdate": Integer,
    "imagesCSV": String,
    "rootCategory": Integer,
    "categories": Long array,
    "categoryTree": Object array,
    "parentAsin": String,
    "variationCSV": String,
    "frequentlyBoughtTogether": String array,
    "eanList": String array,
    "upcList": String array,
    "manufacturer": String,
    "brand": String,
    "productGroup": String,
    "partNumber": String,
    "binding": String,
    "numberOfItems": Integer,
    "numberOfPages": Integer,
    "publicationDate": Integer,
    "releaseDate": Integer,
    "contributors": two dimensional String array,
    "languages":  two dimensional String array,
    "model": String,
    "color": String,
    "size": String,
    "edition": String,
    "format": String,
    "features": String array,
    "description": String,
    "packageHeight": Integer,
    "packageLength": Integer,
    "packageWidth": Integer,
    "packageWeight": Integer,
    "packageQuantity": Integer,
    "itemHeight": Integer,
    "itemLength": Integer,
    "itemWidth": Integer,
    "itemWeight": Integer,
    "availabilityAmazon": Integer,
    "availabilityAmazonDelay": Integer array,
    "ebayListingIds": Long array,
    "isAdultProduct": Boolean,
    "launchpad": Boolean,
    "audienceRating": String,
    "newPriceIsMAP": Boolean,
    "isEligibleForTradeIn": Boolean,
    "isEligibleForSuperSaverShipping": Boolean,
    "fbaFees": Object,
    "referralFeePercent": Integer,
    "variations": Object array,
    "coupon": Integer array,
    "promotions": Promotion Object array,
    "stats": Statistics Object,
    "salesRankReference": Long,
    "salesRankReferenceHistory": Long array,
    "salesRanks": Object,
    "lastSoldUpdate": Integer,
    "monthlySold": Integer,
    "rentalDetails": String,
    "rentalSellerId": String,
    "rentalPrices": Rental Object,
    "offers": Marketplace Offer Object array,
    "liveOffersOrder": Integer array,
    "buyBoxSellerIdHistory": String array,
    "buyBoxUsedHistory": String array,
    "isRedirectASIN": Boolean,
    "isSNS": Boolean,
    "offersSuccessful": Boolean,
    "csv": two dimensional Integer array
}

productType

常に最初に評価されます。
製品のどのデータが利用可能かを決定します。

可能な値:

  • 0 – 標準: すべてアクセス可能
  • 1 – ダウンロード可能: マーケットプレイス/サードパーティの価格データなし
  • 2 – 電子書籍: 価格データと販売ランキングにアクセスできません
  • 3 – アクセスできない: データにアクセスできません。
    Keepa は製品のデータを収集できません (例: MAP – 最低広告価格)
  • 4 – 無効: ASIN が無効または廃止されているか、その他の問題のため、現在のデータはありません。
    一時的なものかもしれません。
  • 5 – VARIATION_PARENT: 商品は親 ASIN です。
    バリエーションとバリエーションCSVが設定されています。

asin

商品のASIN。

例: B00M0QVG3W

domainId

商品の Amazon ロケールの domainId。

有効な値:
1: com | 2: co.uk | 3: de | 4: fr | 5: co.jp | 6: ca | 8: it | 9: es | 10: in | 11: com.mx ]

title

商品のタイトル。
注意: まれに、エスケープされていない HTML マークアップが含まれる場合があります。

例: Canon PowerShot SX400 デジタル カメラ 30 倍光学ズーム (ブラック)

trackingSince

この製品の追跡を開始した時刻を Keepa Time 分単位で示します。

例: 2711319

listedSince

商品が Amazon に最初に出品された時刻を Keepa Time 分で示します。

このタイムスタンプは、一部の製品でのみ使用できます。
利用できない場合、フィールドの値は 0 または -1 になります。

例: 2711319

lastUpdate

この製品の情報を最後に更新した時刻を、Keepa Time の分単位で示します。

例: 2711319

lastRatingUpdate

製品の評価とレビュー数を最後に更新した時刻を Keepa Time の分単位で示します。

例: 2711319

lastPriceChange

最後に価格変更を登録した時刻 (任意の価格タイプ) を Keepa Time の分単位で示します。

例: 2711319

lastEbayUpdate

この商品の eBay 価格を最後に更新した時刻を Keepa Time 分単位で示します。
一致する製品が見つからない場合、整数は負になります。

例: 2711319

imagesCSV

商品のAmazon画像名のCSVリスト。
これらの画像を使用する権利を所有していることを確認してください。
利用できない場合は null。

バリエーション画像 (プライマリ/最初の画像以降のすべての画像) は、必ずしも Amazon と同じ順序であるとは限りません。

例: 51InzcaVqrL.jpg,41W5Xu0%2BZGL.jpg,515ZN4%2BKDhL.jpg,51SQ74yfEWL.jpg,415Vq998F3L.jpg,41ocdONIHkL.jpg,31w%2BPv7qUyL.jpg

完全な Amazon イメージ パス:
https://images-na.ssl-images-amazon.com/images/I/<イメージ名>。

rootCategory

商品のルート カテゴリのカテゴリ ノード ID。
ルート カテゴリが不明な場合は 0。

ID 9223372036854775807 (最大符号付き long 値) は、「?」という名前の空のカテゴリを示します。
これは、製品がカテゴリにリストされていないか、存在しない場合に使用されます。

例: 562066

categories

この商品がリストされている Amazon カテゴリ ノード ID の配列。
空のこともあります。

例: [569604]

categoryTree

カテゴリ ツリーをオブジェクトの順序付けられた配列として表します。
各オブジェクトは次の 2 つのフィールドで構成されます。

  • catId – Long – カテゴリ ID
  • name – Str – カテゴリの名前

parentAsin

親商品の ASIN (商品にバリエーションがある場合、そうでない場合は null)。

例: B00M0QVG3W

variationCSV

商品の最大 1800 のバリエーション ASIN の CSV リスト (利用可能な場合)。
それ以外の場合は null。

このフィールドのライブ データをリクエストするには、 offers パラメータを使用する必要があります。

例: B00M0QVG3W,B00T85PMWY

frequentlyBoughtTogether

1 つまたは 2 つの「よく一緒に購入される」ASIN。
利用できない場合は null。

offers パラメータが使用されたときにフィールドが更新されます。

例:[「B00M0QVG3W」、「B00T85PMWY」]

upcList

この商品に割り当てられた UPC のリスト。
最初のインデックスはプライマリ UPC です。
利用できない場合は null。

例: [「045496590086」]

eanList

この製品に割り当てられた EAN のリスト。
最初のインデックスはプライマリ EAN です。
利用できない場合は null。

例: [「8806088624952」]

manufacturer

メーカーの名前。
利用できない場合は null。

例:キヤノン

brand

アイテムのブランド。
利用できない場合は null。

例:ソニー

productGroup

アイテムの productGroup。
利用できない場合は null。

例: カメラ

partNumber

アイテムの部品番号。
利用できない場合は null。

例:DSC-H300/BM-RB

binding

アイテムのバインディング。
利用できない場合は null。

アイテムが書籍でない場合、通常は代わりに製品カテゴリになります。

例: ハードカバー

numberOfItems

この商品の商品数です。
利用できない場合は -1。

例: 1

numberOfPages

この商品のページ数です。
利用できない場合は -1。

例: 514

publicationDate

次の 3 つの形式のいずれかでのアイテムの発行日: (Y = 年、M = 月、D = 日)

  • YYYY
  • YYYYMM
  • YYYYMMDD

利用できない場合は -1。

例:

  • 1978 = 1978年
  • 200301 = 2003 年 1 月
  • 20150409 = 2015 年 4 月 9 日

releaseDate

アイテムのリリース日。
発行日と同じ形式。
利用できない場合は -1。

contributors

アイテムの貢献者。
寄稿者には、著者、俳優、監督などを指定できます。

寄稿者の各エントリには、名前と役割タイプがあります。

例: [ [ 「ヴィン・ディーゼル」, 「俳優」 ] ]

languages

アイテムには 1 つ以上の言語を含めることができます。
各言語エントリには名前があり、ほとんどの言語エントリにもタイプがあります。
利用できない場合は null。

例: [ [「英語」]、[「英語」、「元の言語」]]

model

アイテムのモデル。
利用できない場合は null。

例:DSC-H300/BM

color

アイテムの色。
利用できない場合は null。

例: 黒

size

アイテムのサイズ。
利用できない場合は null。

例:S

edition

アイテムのエディション。
利用できない場合は null。

例: 通常版

format

アイテムのフォーマット。
利用できない場合は null。

例:AC-3

features

最大 5 つの製品機能のリスト/箇条書き。
利用できない場合は null。
まれに、エントリに HTML マークアップが含まれる場合があります。

現在、各エントリは最大 1000 文字に制限されています (機能がそれより長い場合は切り捨てられます)。
この制限は、予告なしに将来変更される場合があります。

例: [「6 ユニバーサル コンセント、長さ 6 フィート」、「世界中のプラグ タイプのほとんどを受け入れます!」、…]

description

商品の説明です。
利用できない場合は null。

HTML マークアップと \n 改行を含めることができます。

商品説明は最大4000文字までとさせていただいております(それ以上の場合は切り捨てさせていただきます)。
この制限は、予告なしに将来変更される場合があります。

このフィールドのライブ データをリクエストするには、オファー パラメータを使用する必要があります。

例 (抜粋):
<p><b>Why should you buy our Universal Surge Protector?<b></p> • Professional series Universal Surge Protector will accept most of the plug types from around the world, including: UK, US, all of Europe, China, Australian and more! <br />• The AC surge suppression for full protection of 220-250V workstations…

packageHeight

パッケージの高さ (ミリメートル単位)。
利用できない場合は 0 または -1。

例: 144

packageLength

パッケージの長さ (ミリメートル単位)。
利用できない場合は 0 または -1。

例: 144

packageWidth


パッケージの幅 (ミリメートル単位)。
利用できない場合は 0 または -1。

例: 144

packageWeight

パッケージのグラム単位の重量。
利用できない場合は 0 または -1。

例: 1500 (= 1.5 kg)

packageQuantity

パッケージ内のアイテムの数量。
利用できない場合は 0 または -1。

例: 4

itemHeight

アイテムの高さ (ミリメートル単位)。
利用できない場合は 0 または -1。

例: 144

itemLength


アイテムの長さ (ミリメートル単位)。
利用できない場合は 0 または -1。

例: 144

itemWidth

アイテムの幅 (ミリメートル単位)。
利用できない場合は 0 または -1。

例: 144

itemWeight

商品のグラム単位の重量。
利用できない場合は 0 または -1。

例: 1500 (= 1.5 kg)

availabilityAmazon

Amazon オファーの可用性。可能な値:

  • -1: Amazon オファーは存在しません
  • 0: Amazon オファーは在庫があり、出荷可能です
  • 1: Amazon オファーは現在在庫がありませんが、将来的には在庫があります (予約注文)
  • 2: Amazon オファーの可用性は「不明」です
  • 3: Amazon オファー は現在在庫がありませんが、将来的には在庫があります (取り寄せ)
  • 4: Amazon オファーの発送が遅れています – 詳細については、「availabilityAmazonDelay」を参照してください

availabilityAmazonDelay

availabilityAmazon の値が 4 の場合、このフィールドは遅延間隔を時間単位で提供します。
利用可能なデータがない場合は null。

例:
[ 24, 48 ] (= 1~2日で発送可能です。)
[ 0, 288 ] (=通常12日以内に発送されます。)
[ 732, 1464 ] (=在庫あり。通常1~2ヶ月で発送。)
※筆者注 時間単位なので÷24で日数を確認可能。

ebayListingIds

一致する最低価格の eBay リスト ID が含まれています。
常に 2 つのエントリが含まれます。
最初のエントリは、新品の状態の最低価格の出品の ID で、2 番目は中古の状態の出品 ID です。

null または利用できない場合は 0。

例: [ 273344490183, 0 ]

isAdultProduct

アダルト商品かどうかを示します。

例: true

launchpad

項目がlaunchpad カテゴリにリストされているかどうかを示します。
その場合、salesRankReference は使用できません。

例: true

launchpad カテゴリとは?

Amazonが実施している(いた?)販促プログラムで、主にスタートアップ企業の新製品を対象としたもののようです。

あまりに知名度が低く、現在日本で稼働しているかは不明です…。

audienceRating

視聴者の区分け。
レーティングは、メディアが適切な年齢を示唆しています。

例: PG-13 (親は強く注意)

newPriceIsMAP

新品最低価格 (価格タイプ AMAZON または NEW) が MAP (最低広告価格) によって制限されているかどうか。

これを使用して、在庫切れ (価格 = -1) と MAP 制限を区別します。

例: true

MAPとは?

Minimum Advertisement Price の略で、アメリカ販売商品に設定されていることがある最低広告価格のことのようです。

例えばMAPが100ドルの場合、100ドル以下で商品を販売する広告は出せません。

しかもこのMAP、オンライン販売価格にも適用されるようです
(多くの人が目にするから広告と同等ってことでしょうか?)

isEligibleForTradeIn

製品が下取りの対象であるかどうか。

例: true

isEligibleForSuperSaverShipping

商品のショッピング ボックスが送料無料の対象であるかどうか。

例: true

fbaFees

この商品の FBA 集荷手数料を提供するオブジェクトが含まれています。
利用できない場合は null。

料金は、それぞれの Amazon ロケールの最小通貨単位 (ユーロ セントまたは円など) の整数です。

例:

"fbaFees": {
	"pickAndPackFee": 1345
}

referralFeePercent

販売価格 100.00 に基づく販売手数料の割合。
利用できない場合は null

例: 12

手数料にかかる消費税が考慮されていないことに注意!
例えば値が10の商品を1,000円で販売した場合、1,000円×10% = 100円に加え10%消費税分の110円が請求されます。

また、100.00と書いてありますが、検証した結果日本だと10,000円で販売した際の手数料を割合(%)に直した値っぽいです。

実際の販売価格ではないので、販売時の手数料とは一致しない可能性があります。

例えば、「服&ファッション小物」のreferralFeePercentは9(%)になっています。
しかし、実際には

  • 3,000円以下の部分については、商品代金の12%
  • 3,000円を超える部分については商品代金の8%

で、販売価格によって変動します。

販売価格が10,000円だと手数料の割合は、

(3,000円×12% + 7,000円×8%)÷10,000円 = 9.2%

なので、確かに四捨五入すると9%になりますね。

variations

この商品のバリエーションのdimension属性が含まれています。

配列内の各オブジェクトは、1 つのバリエーションを表します。
バリエーション オブジェクトは、バリエーション ASIN と属性配列で構成されます。
各エントリは、ディメンションとそれに対応する値を含む 1 つのバリエーション dimensionを表します。

このフィールドのライブ データをリクエストするには、 offers パラメータを使用する必要があります。

※筆者注 ここでのdimensionとは、バリエーションを区分する要素という意味で用いられているようです。
例えばサイズや色などですね。

例:

"variations": [{
    "asin": "B07GFPNJL9",
    "attributes": [{
            "dimension": "Size",
            "value": "7.24 LB"
        }, {
            "dimension": "FlavorName",
            "value": "Cheddar"
        }
    ]
}]

coupon

利用可能な場合、製品のクーポンの詳細が含まれます。
利用できない場合は null。

2 つのエントリを持つ整数配列:

  • 1番目のエントリ : 1 回限りのクーポンの割引です
  • 2番目のエントリ : 定期購入して割引するクーポンです

エントリ値は、そのタイプのクーポンが提供されていない場合は 0、絶対割引の場合は正、パーセンテージ割引の場合は負のいずれかです。

クーポン フィールドは常にアクセス可能ですが、Product Requestでオファー パラメータが使用された場合にのみ更新されます。

例:

  • [ 200, -15 ] – 両方のクーポン タイプを利用できます:
    200円 の 1 回限りの割引または 15% の定期購入と割引。
  • [ -7, 0 ] – 7% 割引を提供する 1 回限りのクーポン タイプのみが利用可能です。

promotions

アクティブなプロモーションの配列が含まれています。
すべての製品プロモーションを提供できるわけではありません。

プロモーション オブジェクトは次のもので構成されます。

  • type – 整数 – プロモーションのタイプ
    • 10 – SNS
  • amount – 整数 – 割引価格
  • discountPercent – 整数 – 割引率

SNSは定期おトク便(subscribe and save)による割引のことだと思われます。

公式レファレンスではこの記述しかないので、現状は定期おトク便によるプロモーションにしか対応していない?(要確認)

stats

オプションのフィールド。 Product Requestで stats パラメータが使用された場合にのみ設定されます。

Statistics Objectが含まれています。

salesRankReference

主な売上順位のカテゴリ ノード ID。

利用できない場合は -1、launchpadにリストされている場合は -2。

例: 281052 – http://www.amazon.com/b/?node=281052

salesRankReferenceHistory

主な売上ランクの履歴カテゴリ ノード ID を含む長い配列。

このデータが利用可能な場合は、CSV フィールドで提供された過去の売上ランクを参照カテゴリと照合するために使用できます。

カテゴリ ID の値は、使用できない場合は -1、ランチパッドにリストされている場合は -2 です。

形式: [ keepaTime, カテゴリ ノード ID, … ]

例: [2711319、281052、…]

このフィールドは、参照カテゴリが途中で変わった場合に補正をかけて分析する際に参考にする項目っぽいです。

例えば100万商品あるカテゴリの1万位と、1万商品あるカテゴリの1万位では、相対的な順位が大きく異なります。
前者は上位1%ですが、後者だと最も売れていない商品になってしまいますね笑。

salesRanks

売上順位履歴を含むオブジェクト。
各キーはランクのカテゴリ ID を表し、対応する値に履歴が含まれます。例:↓↓↓

"salesRanks": {
		"281052": [ keepaTime, salesRank, ... ]
		"123112042": [ keepaTime, salesRank, ... ]
	}

lastSoldUpdate

monthSold フィールドを最後に更新した時間を Keepa Time 分単位で示します。 monthSold に値がない場合は未定義。

例:2711319

※2023年9月追記

monthlySold

過去 1 か月間でこの商品が購入された頻度。

このフィールドは、Amazon の検索結果ページで見つかった過去 1 か月の購入指標を表します。
見積りではありません。

値がない場合は未定義です。
ほとんどの ASIN にはこの値が設定されていません。
値はバリエーション固有です。

例:1000 – ASIN は先月に少なくとも 1000 回購入されました。

※2023年9月追記

rentalDetails

レンタル カートボックス出品オファーのレンタル詳細説明が含まれます。
利用できない場合は null。

offersrental パラメータがProduct Requestで使用された場合にのみアクセスできます。

例:

レンタル元: RentU
レンタル料金 1 学期: $25.24
延長料金 15 日: $12.61
追加学期: $25.24
買取価格: $34.89.
支払われたレンタルおよび延長料金は、書籍の買取価格に適用されます。

rentalSellerId

レンタル カートボックス出品オファーの販売者 ID が含まれます。
利用できない場合は null。

offersrantalパラメータが Product Requestで使用された場合にのみアクセスできます。

例: A2L77EE7U53NWQ

rentalPrices

このオブジェクトには、(rentalDetails フィールドで説明されているように) initialPrice、shortExtnPrice、longExtnPrice、および fullPrice のレンタル価格が含まれています。

利用できない場合は null。

offersrantalパラメータが Product Requestで使用された場合にのみアクセスできます。

offers

オプションのフィールド。

offersパラメータが Product Requestで使用された場合にのみアクセスできます。

Marketplace Offer Objectsが含まれています。

liveOffersOrder

オプションのフィールド。
Product Requestでoffers パラメータが使用された場合にのみ設定されます。

この呼び出しで取得されたすべての Marketplace Offer Objects のオファー配列内のインデックス位置の順序付けられた配列が含まれます。

オファーが見つからない場合、フィールドは null になります。

整数の並びは、Amazon オファー ページでのオファーの順序を反映します (すべてのコンディションについて)。

offers フィールドには過去のオファーと現在のオファーが含まれているため、この配列を使用して、Amazon に現在リストされているすべてのオファーを正しい順序で検索できます。 : 同一のオファー (同じ販売者、同じ状態、同じ配送タイプ、同じ状態テキスト) がある場合、最低価格のもののみを追跡します。

これが発生した場合、liveOffersOrder フィールドの省略された重複 (高価格) オファーの位置に重複オファー インデックスが存在し、すべて最低価格のオファーのインデックスを指します。

例:

  • [ 3, 5, 2, 18, 15 ] –
    オファー フィールドの配列インデックス 3 を持つオファーは、現在、Amazon のオファー リスト ページにリストされている最初のオファーであり、その後にインデックス 5 を持つオファーが続きます。
  • 重複の例: [ 3, 5, 2, 18, 5 ] –
    Amazon にリストされている 2 番目のオファーは、Amazon の 6 番目のオファーの低価格の複製です。
    低価格のものは、インデックス 5 の offersフィールドに含まれています。

buyBoxSellerIdHistory

オプションのフィールド。
Product Requestでオファーまたは購入ボックス パラメータが使用された場合にのみ設定されます。

ショッピングカートボックスを保持した sellerIdsの履歴が次の形式で含まれます:
[Keepa time minutes, SellerId], […].

ショッピングカートボックスの対象となる出品者がいない場合は、sellerId「-1」が使用されます(カートボックスが無い状態)。

販売者を特定できなかった場合、または商品が在庫切れ (販売者なし) の場合、sellerId は「-2」です。


例: [“2860926″、”ATVPDKIKX0DER”、…]

buyBoxUsedHistory

オプションのフィールド。
Product Requestでオファーまたは購入ボックス パラメータが使用された場合にのみ設定されます。

、中古ショッピング カート ボックス獲得者の履歴でsellerIds、オファーのサブコンディション、および FBA ステータスを次の形式で含みます:
[Keepa time minutes, Seller id, condition, isFBA], […].

中古のショッピング カート ボックスの対象となる販売者がいない場合は、sellerId “” (空の文字列) が使用されます。

  • condition には次の値を指定できます。
    “2” – 中古 – ほぼ新品、”3″ – 中古 – 非常に良い、”4″ – 中古 – 良好、”5″ – 中古 – 可
  • isFBA は、”1″ – オファーが FBA であるか、”0″ – オファーが販売者によって出荷されているかのいずれかです。

例: [“2860926″、”ATVPDKIKX0DER”、”4″、”1″、…]

isRedirectASIN

オファー パラメータがProduct Requestで使用された場合にのみ有効です。

ASIN が Amazon の別の ASIN にリダイレクトされるかどうかを示すブール値。
(例: ASIN には黒色のバリエーションがありますが、これは利用できず、Amazon では赤色にリダイレクトされます)

isSNS

オファー パラメータがProduct Requestで使用された場合にのみ有効です。

商品のショッピング ボックスが subscribe and saveできるかどうかを示すブール値。

subscribe and save とは?

日本でいう「定期おトク便」です。

定期購入することで商品を安く購入できるプログラムです。
(Amazon公式ページリンク)

offersSuccessful

オファー パラメータが製品リクエストで使用された場合にのみ有効です。

システムが新しいオファー情報を取得できたかどうかを示すブール値。

製品にオファーがない場合、新しいオファーの取得は常に失敗します。
(COUNT_*csv エントリを比較してください)

csv

製品の履歴データを含む 2 次元履歴配列。

次の列挙型/定数を使用して、最初の次元のインデックスにアクセスします。

  • 0 – アマゾン: アマゾンの価格履歴
  • 1 – NEW: マーケットプレイスの新品価格履歴
  • 2 – USED: マーケットプレイスの中古価格履歴
  • 3 – SALES: 販売ランクの履歴
    (すべての製品に販売ランクがあるわけではありません。通常、バリエーション商品には個々の販売ランクはありません)
  • 4 – LISTPRICE: 希望小売価格の履歴
  • 5 – COLLECTIBLE: コレクターの価格履歴
  • 6 – REFURBISHED: 再生品の価格履歴
    ※筆者注 日本でいうと「Amazon Renewed(Amazon整備済み品)」のことでしょうか。
    一応Amazonページのリンクを載せておきます。

    ※追記 調べてみたらAmazon Renewedではなく、「再生品」コンディションの商品でした。
    下にスクロールした「参考」で囲った部分に解説追記しました。
  • 7 – NEW_FBM_SHIPPING: サードパーティ (Amazon を除く) 送料を含む新品価格履歴、出品者のみが発送 (FBM)
  • 8 – LIGHTNING_DEAL: ライトニング ディールの価格履歴 (以下の特別な関連情報)
    ※筆者注 日本でいう「タイムセール」です。
  • 9 – WAREHOUSE: Amazon倉庫の価格履歴
    ※筆者注 日本だと「Amazonアウトレット」が近い。
    Keepaにより価格取得しているかは要検証。
    ※追記 やっぱり「Amazonアウトレット」のことでした。
  • 10 – NEW_FBA: 最低価格のサードパーティ (Amazon/Warehouse を除く) の価格履歴 Amazon がフルフィルメントする新しいオファー
  • 11 – COUNT_NEW: 新品の出品数の履歴 (= 商品を新品として販売しているマーケットプレイス セラーの数)
  • 12 – COUNT_USED: 中古の出品数履歴
  • 13 – COUNT_REFURBISHED: 再生品の出品数の履歴
  • 14 – COUNT_COLLECTIBLE: コレクターアイテムの出品数の履歴
  • 15 – EXTRA_INFO_UPDATES:
    すべてのオファー パラメータ関連データに対する過去の更新履歴:
    offers、
    isSNS、
    isRedirectASIN、
    および csv タイプの
    NEW_FBM_SHIPPING、
    WAREHOUSE、
    NEW_FBA、
    RATING、
    COUNT_REVIEWS、
    USED_SHIPPING、
    COLLECTIBLE_SHIPPING、
    REFURBISHED_SHIPPING
    これらのフィールドは頻繁に更新されないため、システムがいつそれらを更新したかを知ることが不可欠です。

    絶対値は、特定の時間にフェッチされたオファーの数を示します。
    値が正の場合、利用可能なすべてのオファーが取得されたことを意味します。
    負の場合は、取得したよりも多くのオファーがあったことを示します。
  • 16 – RATING: 製品の評価履歴 (0 から 50 までの整数、例: 45 = 4.5 星)
  • 17 – COUNT_REVIEWS: 商品のレビュー数履歴
  • 18 – BUY_BOX_SHIPPING: 送料を含む新品カートボックスの価格履歴。
    カート ボックスに該当するオファーがない場合 (またはショッピング ボックスが中古のオファーの場合)、価格の値は -1 になります。
  • 19 – USED_NEW_SHIPPING: 「中古 – 新品同様」の価格履歴 (送料を含む)
  • 20 – USED_VERY_GOOD_SHIPPING: 「中古 – 非常に良い」の価格履歴 (送料を含む)
  • 21 – USED_GOOD_SHIPPING: 「中古 – 良い」価格履歴(送料を含む)
  • 22 – USED_ACCEPTABLE_SHIPPING: 「中古 – 可」の価格履歴 (送料を含む)
  • 23 – COLLECTIBLE_NEW_SHIPPING: 「コレクター – 新品同様」の価格履歴 (送料を含む)
  • 24 – COLLECTIBLE_VERY_GOOD_SHIPPING: 「コレクター – 非常に良い」の価格履歴 (送料を含む)
  • 25 – COLLECTIBLE_GOOD_SHIPPING: 「コレクター – 良い」の価格履歴 (送料を含む)
  • 26 – COLLECTIBLE_ACCEPTABLE_SHIPPING: 「コレクター – 可」の価格履歴 (送料を含む)
  • 27 – REFURBISHED_SHIPPING: 再生品の価格履歴(送料を含む)
  • 28 – EBAY_NEW_SHIPPING: 各 eBay ロケールでの新品最低価格の価格履歴 (配送料を含む)
  • 29 – EBAY_USED_SHIPPING: 各 eBay ロケールで中古最低価格の価格履歴 (配送料を含む)
  • 30 – TRADE_IN: Trade-in 価格履歴 (Amazon 下取りはすべてのロケールで利用できるわけではありません)
    ※筆者注 リンクはamazon.com です。
    日本には同様のプログラムはなさそうです。
  • 31 – RENTAL: レンタル価格の履歴 (レンタルとオファーのパラメーターを使用する必要があります。
    Amazon レンタルは Amazon US でのみ利用可能です)
  • 32 – BUY_BOX_USED_SHIPPING: 送料を含む、中古のショッピング ボックスの価格履歴 (サブコンディション)。
    中古のショッピング ボックスに適したオファーがない場合、価格の値は -1 になります。
  • 33 – PRIME_EXCL: 最安値のプライム限定新オファーの価格履歴
REFURBISHEDって何?

Keepaで使われているREFURBISHEDという項目は、「再生品」コンディションの商品のことです。

例えば、下記画像の赤で囲った部分が「再生品」となっている出品の情報が取得できます。

ただ「再生品」の定義がわからん!!笑
Amazonのコンディションガイドラインにも書いてないんですよね…。

2 番目の次元には、価格/値の履歴が次の形式で含まれます。
 Keepa time minutes, value, […]
または、タイプに *_SHIPPING コストが含まれている場合は、次の形式:
 Keepa time minutes, price, shippingcosts, […]

履歴が利用できない場合は null です。

価格は、それぞれの Amazon ロケールの最小通貨単位 (ユーロ セントまたは円など) の整数です。
指定された間隔でオファーが利用できなかった場合 (在庫切れなど)、価格の値は -1 になります。

csv 項目のデータ形式

csv項目には価格履歴などのデータが二次元配列(リスト)形式で含まれています。

  • 1番目の次元 : データの種類
  • 2番目の次元 : データの値

です。

履歴データなので「いつ」「どんな値」だったかの情報があるのですが、それらはどちらも2番目の次元に配置されています。

例 : [時間1, 時間1での値, 時間2, 時間2での値, …]

時間と価格等の異なる単位の情報が同じ配列内に存在するのが個人的には違和感があるのですが、そういうものなんですかね…?

以下は返されるデータのイメージです↓↓↓

// csv項目のデータ
[
    [時間1, 時間1での値, 時間2, 時間2での値, ...], // Amazon販売価格
    [時間1, 時間1での値, 時間2, 時間2での値, ...], // 新品価格
        // 実際のデータは↓↓↓のように、
        // [Keepa Time minutes, 値, Keepa Time minutes, 値,...] という形式です。
    [6242832,839,6365074,819,6365200,839, ...], //  中古価格
    ......
    [6263604,852,6280164,-1,6282614,852, ...] // プライム限定価格
]
csvに関する重要な情報:
  • 製品を更新するたびにではなく、価格/値が変更された場合にのみ、履歴配列に新しいエントリを追加します。
  • 特に明記しない限り、送料と手数料は含まれていません。
  • Amazon はマーケットプレイスの一部と見なされます。
    Amazon の新価格が全体的に最も低い場合、対応する時間間隔におけるマーケットプレイスの新価格は Amazon の価格と同じです。
  • 次のタイプは、オファー パラメータが商品リクエストで使用された場合にのみ設定されます:
    • NEW_FBM_SHIPPING
    • WAREHOUSE
    • NEW_FBA
    • RATING
    • COUNT_REVIEWS
    • BUY_BOX_SHIPPING
    • USED_SHIPPING
    • COLLECTIBLE_SHIPPING
    • REFURBISHED_SHIPPING
    • BUY_BOX_USED_SHIPPING
    • PRIME_EXCL
  • ライトニング ディールについて:
    ディールが現在アクティブな場合、履歴配列の最後のエントリには、価格が -1 の終了日 (将来の日付) が含まれます。
    現在の取引価格にアクセスするときは、この特殊なケースを処理してください。

    または、stats objectの現在の価格配列を使用して、現在の価格にアクセスします。 現在アクティブな取引がなく、最後のエントリの値が -1 で将来の日付である場合、次の取引が発表されたことを意味します (その日付に開始する予定)
  • eBay の価格について:
    eBay のリストには、情報や製品コードが正しくないことが多く、アイテムの不一致や価格情報の誤りが発生します。
    eBay の価格履歴情報は注意して使用し、その正確性に依存しないでください。
    eBay の価格は、Amazon の価格とは異なる間隔で更新されます。
  • 予告なしに、csv フィールドに新しいデータ型を随時追加できます。
    実装の最初の配列次元の固定サイズを期待しないでください。
Keepa Time minutes について

すべてのタイムスタンプに使用される時刻形式です。
圧縮されていないタイムスタンプ (Unix エポック時間) に変換するには、21564000 を加算してから 60000 を掛けます (ミリ秒の場合、秒の場合は 60)。

以上です!

販売数や販売価格、評価数など有用な情報が取得できますね。
しかし、実はなかなかトークン消費が激しいです。

消費トークンなどリクエストの詳細については下記記事を参考にしてみてください。

【Keepa APIの使い方】公式レファレンスを日本語訳してみました【Request Products】 Keepa APIのリクエストの1つ、「Request Products」の公式レファレンスを日本語訳しました。 Amazonの...
【Keepa APIの使い方】公式レファレンスを日本語訳してみました【Product Search】 Keepa APIのリクエストの1つ、「Product Search」の公式レファレンスを日本語訳しました。 Amazonの検索...