使用场景
价格历史
什么时候搜索响应中的当前价格就够用,什么时候需要专门的历史记录端点——附带监控示例。
您已经拥有当前价格
GET /products 和 GET /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 }
}from 和 to 都是可选的——省略它们即可获得完整的可用历史记录,按最新优先排序。
需要指定国家、地区或登录状态(访客还是登录用户)?添加 country_code、region_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