京东商品列表API接口解析(附 JSON 样例)

摘要

在电商店铺商品资产盘点、类目商品批量采集、竞品店铺监控、选品系统开发场景,需要批量获取店铺下全部商品列表。很多开发人员会选择爬虫抓取店铺商品页,但京东前端动态渲染、页面改版频繁、反爬严格,维护成本高且存在合规风险。本文基于京东宙斯 JOS 开放平台店铺商品列表接口,讲解接口基础规范、请求入参、返回字段,附带标准 JSON 返回样例,梳理字段解析、边界处理、开发踩坑点与业务落地场景,提供合规稳定的官方接口获取方案。

1. 接口基础信息

jd.item_search 京东商品列表搜索接口,作为商品批量检索入口,输入关键词或类目 ID 获取淘宝、京东商品摘要集合。

  • 接口标识:jd.item_search (京东淘宝商品列表API,taobaoapi2014前往体验)
  • 请求网关: c0b.cc/R4rbK2 (HTTPS,支持 GET/POST)
  • 接口版本:2.0

接口能力覆盖

  1. 商品基础元数据:标题、售卖价、划线价、销量
  2. 基础素材:商品主图 CDN 地址
  3. 店铺信息:店铺 ID、店铺名称,区分自营 / POP 店铺
  4. 辅助标记:广告商品标识、类目信息、发货地、自营标识
  5. 接口能力:获取指定店铺 / 类目下商品 SPU、SKU 列表,包含商品标题、SKU 编号、上下架状态、主图、价格、类目等基础信息。

2. 请求入参说明

参数名 是否必传 说明
app_key 是 京东开放平台应用密钥
method 是 商品列表接口方法名
timestamp 是 13 位毫秒时间戳
v 是 协议版本,一般 2.0
sign_method 是 签名算法:sha256
sign 是 参数排序后加密生成的签名串
access_token 是 商家接口必填授权令牌;联盟检索接口按需
shopId 可选 目标店铺 ID,拉取店铺内商品列表
cid 可选 类目 ID,按类目检索商品
page 否 页码,从 1 开始
pageSize 否 单页商品条数,受接口配额限制
status 否 商品状态筛选:1 在售,0 下架

推荐入参组合:shopId,page,pageSize,status

3. 返回核心字段说明

外层根节点:code、message、result,商品数组在result.goodsList

字段 数据类型 说明 开发注意事项
spuId string 商品 SPU 编号 商品公共主体 ID,一个 SPU 对应多个 SKU
skuId string 商品 SKU 编号 最小销售单元 ID,关联商品详情接口
title string 商品完整标题 商品全称,用于检索
shortTitle string 短标题 列表展示精简标题
saleStatus int 商品销售状态 1 = 在售,0 = 下架;下架商品部分字段为空
mainImage string 商品主图地址 CDN 图片,带防盗链
price string 商品售价 该 SKU 当前售卖价格
categoryInfo object 类目信息 一级、二级、三级类目 ID 与名称
brandInfo object 品牌信息 brandId、brandName
stock int 库存数量 该 SKU 可用库存
shopId string 所属店铺 ID 用于店铺分组统计
shopName string 店铺名称 商品归属店铺
publishTime string 商品上架时间 yyyy-MM-dd HH:mm:ss

4. JSON 返回样例

javascript 复制代码
{
    "code": 0,
    "message": "success",
    "result": {
        "totalCount": 126,
        "goodsList": [
            {
                "spuId": "100089765400",
                "skuId": "100089765432",
                "title": "2026新款无线蓝牙耳机主动降噪入耳式长续航运动耳机",
                "shortTitle": "主动降噪蓝牙耳机",
                "saleStatus": 1,
                "mainImage": "https://img10.360buyimg.com/n1/main.jpg",
                "price": "199.00",
                "categoryInfo": {
                    "cid1": 737,
                    "cid1Name": "数码",
                    "cid2": 738,
                    "cid2Name": "耳机",
                    "cid3": 739,
                    "cid3Name": "蓝牙耳机"
                },
                "brandInfo": {
                    "brandId": 2365,
                    "brandName": "数码声学"
                },
                "stock": 312,
                "shopId": "100012389",
                "shopName": "数码声学自营旗舰店",
                "publishTime": "2026-03-15 10:20:00"
            },
            {
                "spuId": "100089765500",
                "skuId": "100089765511",
                "title": "无线充电器 支持15W快充兼容安卓苹果",
                "shortTitle": "15W无线快充充电器",
                "saleStatus": 1,
                "mainImage": "https://img10.360buyimg.com/n1/wireless.jpg",
                "price": "79.00",
                "categoryInfo": {
                    "cid1": 737,
                    "cid1Name": "数码",
                    "cid2": 740,
                    "cid2Name": "充电器",
                    "cid3": 741,
                    "cid3Name": "无线充电器"
                },
                "brandInfo": {
                    "brandId": 2365,
                    "brandName": "数码声学"
                },
                "stock": 560,
                "shopId": "100012389",
                "shopName": "数码声学自营旗舰店",
                "publishTime": "2026-04-02 09:10:00"
            }
        ]
    }
}

5. 调用流程简述

  1. 京东宙斯开放平台创建应用,申请店铺商品列表接口权限,获取 appKey、appSecret,商家接口需获取 access_token;
  2. 组装公共参数 + 业务参数,参数按规则排序,SHA256 生成 sign 签名,时间戳使用 13 位毫秒;
  3. 传入 shopId 或类目 cid,配置分页、商品状态筛选,发起 POST 请求;
  4. 循环分页读取goodsList,使用 skuId/spuId 做数据去重;
  5. 列表拿到 skuId 后,可联动京东商品详情 API拉取规格、评价等详细数据;
  6. 数据入库,用于店铺商品盘点、类目商品监控、竞品店铺上新监测。

6. 业务落地场景

  • 自有店铺商品资产盘点:定时同步店铺全部商品,统计上下架数量;
  • 竞品店铺上新监控:轮询抓取竞品店铺商品列表,监测新品上架;
  • 类目商品批量采集:指定类目获取商品清单,用于选品分析;
  • 商品中台构建:批量拉取商品基础信息,作为详情、评论接口的数据源入口。
相关推荐
资深技术分享员27 分钟前
Geejing WebBuilder 数据库连接配置与在线 SQL 工具,运维的左右手
运维·数据库·sql·低代码
ao-weilai1 小时前
MySQL数据库:表操作
数据库·mysql·adb
宵时待雨1 小时前
MySQL数据库1:数据库基础
服务器·数据库·mysql
做运维的阿瑞1 小时前
一个 NULL 让整列姓名消失?MySQL 字符串与日期函数复盘
数据库·sql·mysql
程序猿乐锅1 小时前
【黑马点评 | 第十一篇】关注 Feed 流实现
java·数据库·redis·分布式·后端·缓存·maven
phltxy2 小时前
C 语言文件操作:让数据从内存走向持久化
c语言·网络·数据库
阳光九叶草LXGZXJ2 小时前
达梦数据库-学习-69-DM9主备集群部署
linux·运维·服务器·数据库·sql·学习
jnrjian2 小时前
Connect Microsoft Tools to Oracle Databases powerbi 之类的oracle 客户端
数据库·microsoft·oracle
北京恒星科通刘军2 小时前
灾害监测预警系统中,应急疏散广播的“应急叫应”实际送达率与有效性研究
网络·数据库·人工智能
ShineWinsu2 小时前
对于Redis:List类型的解析
数据库·c++·redis·链表·缓存·面试·list