Market NinjaMarket Ninja
使用情境

價格歷史

什麼時候搜尋回應中的目前價格就已足夠,什麼時候需要專屬的歷史記錄端點——附帶監控範例。

您已經擁有目前價格

GET /productsGET /products/{id} 回傳的每項商品都已包含 prices 陣列—— 每個實際觀測到的(國家、地區、登入狀態)組合各佔一筆記錄:

"prices": [
  {
    "country_code": "ru",
    "region_code": null,
    "user_auth_status": "anonymous",
    "price": 7093,
    "old_price": 8651,
    "currency": "RUB",
    "recorded_at": "2026-08-02T23:21:53.185302+00:00"
  }
]
country_code 反映的是電商平台自身的國家網域版本(例如 Wildberries 的 .ru/.kz/.by/.am 站點)——同一個商品 id 在不同國家可能確實對應不同價格,因此它與 region_code(一個更細緻、經常缺漏的送貨地址訊號)是各自獨立的分組維度。
專屬的 GET /products/{id}/price-history 呼叫用於趨勢分析——如果您只需要目前價格,完全不需要呼叫它。

什麼時候需要歷史記錄

GET /products/{id}/price-history 會回傳完整的觀測時間序列——用於繪圖、追蹤價格變動頻率, 或計算某段期間內的平均值。

curl -G -H "Authorization: Bearer mn_live_..." \
  "https://data.marketninja.ru/v1/products/e86bee19-9cc9-4a83-b9cc-6b61f1209d90/price-history" \
  --data-urlencode "from=2026-08-01T00:00:00Z" \
  --data-urlencode "to=2026-08-02T23:59:59Z"
{
  "data": [
    { "price": 7093, "old_price": 8651, "recorded_at": "2026-08-02T23:21:53.185302+00:00", "...": "..." },
    { "price": 6993, "old_price": 8688, "recorded_at": "2026-08-01T01:03:17.999423+00:00", "...": "..." }
  ],
  "meta": { "total": 2, "page": 1, "page_size": 100 }
}

fromto 皆為選填——省略它們即可取得完整的可用歷史記錄,依最新優先排序。 需要指定國家、地區或登入狀態(訪客或已登入使用者)?加上 country_coderegion_code 和/或 user_auth_status 即可。

持續監控

您不需要把整段歷史都存成一份本機副本才能追蹤價格變化——定期(例如每天一次)輪詢該端點, 將 from 設為您上次成功輪詢的時間戳記,只把新記錄附加到自己的資料庫裡:

# 範例:只取得上次檢查之後的新記錄
curl -G -H "Authorization: Bearer mn_live_..." \
  "https://data.marketninja.ru/v1/products/e86bee19-9cc9-4a83-b9cc-6b61f1209d90/price-history" \
  --data-urlencode "from=2026-08-02T23:21:53Z"
商品的 id 永遠不會改變——與其他每個情境相同,在第一次搜尋後儲存下來(參閱 API 概覽),之後每次檢查都不需要重複呼叫 GET /products

Last updated on

On this page