JD-API-CONNECTION-ASSESSMENT-2026-08-07.md 9.7 KB

京东店铺 API 连接与能力评估

2026-08-13 复测更新

  • AppKey 已恢复可用:新版 SP-API 与旧版 JOS 均不再返回“AppKey 已禁用”。
  • 本店授权 token 尚未接入测试:商品、库存、店铺、评价、流量等只读接口均已进入 access_token 校验,旧版 JOS 统一返回错误码 19(accessToken 不正确/为空),新版商品和库存接口返回 99904000016(accessToken 为空)。
  • 订单与售后仍有部署前置条件:新版订单列表和售后服务单接口返回 99904030005,明确要求从云鼎平台发起调用。
  • 已确认无权限的接口:新版客服列表和承运商列表返回 99904030008,当前应用没有这两个接口的调用权限。
  • 待单独复核:新版报表定义探测返回 99904000013(签名校验失败)。该接口需要以官方 SDK 或确认路径参与规则后的服务端签名实现复测,不能据此判定报表权限。

结论摘要

  • 初次测试时 AppKey 被禁用;2026-08-13 复测确认 AppKey 已恢复,不再是当前阻断项。
  • 当前未形成可用的店铺数据访问能力,直接原因是本店 access_token 尚未接入测试;需要授权的 API 均在 token 校验阶段拦截。
  • 当前无法确认商品、店铺、评价、流量等接口是否已真正返回店铺数据;解禁后仍须完成店铺授权并提供有效 access_token
  • 订单和售后在 token 之外还有云鼎调用前置条件;客服与承运商接口还需补充相应 API 权限包。
  • 仓库当前仅把 jd 作为平台标识并读取本地快照,没有京东签名、OAuth token 交换或真实京东 API 连接实现。

官方文档依据

  • SP-API 调用方法:新版入口为 https://api-cn.jd.com/rest;GET 请求需要 AppKey、时间戳、签名,标记为需要授权的接口还需要 X-JOS-Access-Token
  • 自研与 ISV 授权appKey/appSecret 用于创建应用;商家授权后通过 code 换取 access_token,并用 refresh_token 续期。
  • 订单详情 getOrder:订单详情接口 sp-order/v0/orders/{orderId} 标明需要授权,且订单数据属于敏感数据范围。
  • 旧版 JOS 调用说明:旧版接口使用 api.jd.com/routerjsonapp_keyaccess_token、GMT+8 格式的 yyyy-MM-dd HH:mm:ss 时间戳和签名参数。
  • 开发工具授权管理:用于确认服务对象、授权状态和 token 获取状态。

测试计划与执行

测试原则

  1. 先验证入口、签名和凭证状态,再验证接口权限。
  2. 只调用 GET 或等价只读接口;不调用库存写入、发货、订单备注、售后操作、营销人群创建/删除、报表生成等有副作用接口。
  3. 每个结果按四层解释:传输层、签名层、AppKey 状态、API 权限/授权层。
  4. 原始凭证仅通过进程环境变量传入,未写入仓库、浏览器存储或本报告。

已执行探测

入口 探测范围 结果
https://api-cn.jd.com/rest 商品列表、商品详情、订单列表、订单详情、售后列表、客服列表、报表定义、承运商、物流轨迹、库存查询,共 10 个 GET 10/10 HTTP 403,99904030002,AppKey 已禁用
https://api-cn-pre.jd.com/rest 商品列表 GET HTTP 403,99904030002,AppKey 已禁用
https://api.jd.com/routerjson 店铺基本信息、店铺信息、商品搜索/详情/库存、售后、评价、销售排行、店铺流量、客服评价等 V1 只读方法 普通方法返回错误码 21,AppKey 已禁用
https://api.jd.com/routerjson jingdong.pop.order.searchjingdong.pop.order.get 错误码 73,敏感 API 需要云鼎入驻;未进入业务数据返回

2026-08-13 复测

入口 探测范围 结果
https://api-cn.jd.com/rest 商品列表、SKU 库存 HTTP 400,99904000016,请求已通过 AppKey 校验但缺少 access_token
https://api-cn.jd.com/rest 订单列表、售后服务单列表 HTTP 403,99904030005,请求必须从云鼎平台发起
https://api-cn.jd.com/rest 客服列表、承运商列表 HTTP 403,99904030008,应用没有该 API 调用权限
https://api-cn.jd.com/rest 报表定义 HTTP 400,99904000013,待按该接口的官方签名规则/SDK复测
https://api.jd.com/routerjson 店铺、商品、库存、评价、流量、客服评价只读接口 HTTP 200 的业务错误响应,错误码 19access_token 为空或不正确

代表性请求追踪号已在终端结果中保留,建议提交工单时附上对应时间段的 requestId,而不要附带 AppSecret。

当前能力判断

已确认可用

没有确认到任何店铺数据 API 可用。公开文档可证明接口存在,不能证明当前应用拥有该接口权限。

解禁并授权后,理论上可覆盖

数据域 官方接口能力 对系统的可用场景 关键限制
店铺与经营范围 商家基本信息、店铺信息、店内分类、经营分类 店铺档案、类目树、商品归属校验 需对应店铺身份和权限包
商品与 SKU 商品列表、商品详情、SKU 列表、图片、标题/卖点、状态、库存、价格相关接口 自有商品主数据、SKU 维度经营分析、商品详情页 商品查询与库存/价格字段可能分权限;写接口必须单独申请,不纳入本次测试
订单 订单列表、订单详情、订单商品、支付、订单状态、发货和物流轨迹 GMV、销量、订单数、客单价、履约状态、订单级退款关联 getOrder 明确需要授权;旧版订单接口命中敏感 API/云鼎要求;收货人等字段需遵守脱敏和敏感数据规则
售后与退款 售后服务单列表/详情、日志、价保、小额打款等 退款金额、退款订单数、售后原因、商品/订单售后归因 不同售后类型对应不同接口和权限包,仍需按真实店铺数据回归
商品评价 旧版评价 API 包含 jingdong.pop.PopCommentJsfService.getVenderCommentsForJos 评价正文、星级、评价时间、商品 VOC 分析 当前 AppKey 已禁用;评价接口的字段、分页和权限未取得成功响应验证
客服与服务质量 客服列表、客服评价、会话、聊天记录、客服绩效等 客服 VOC、服务质量、咨询问题归因 聊天记录和用户信息属于敏感数据,需额外授权、脱敏和合规控制
经营指标与报表 新版 sp-data 报表定义/报表查询;旧版数据 API 流量、销量、经营日报、趋势指标 旧版数据 API 目录已提示下线并指向云海数据开放平台;新版报表接口需要 schema 和数据权限,当前未执行 POST 报表查询
会员与营销 会员列表/详情/积分、策略、人群包、营销活动 会员运营、营销活动效果 与 VOC 首期无关,涉及用户数据或写操作,需单独权限与审计

当前无法覆盖或不应假设可覆盖

  • 竞品价格、竞品销量、竞品评价和全网市场快照:店铺商家 API 主要面向本店数据,不能把本店授权推导为竞品数据权限。
  • 稳定的日粒度流量/转化/GMV趋势:需要实际可用的 sp-data 报表 schema 和店铺授权验证;旧版数据 API 已有下线提示。
  • 未经授权的评价正文、订单收货人明文、用户 PIN、手机号和聊天记录:这些属于敏感数据场景,需单独授权、脱敏和数据留存策略。
  • 自动修改商品、库存、价格、订单发货、订单备注、售后处理:即使接口存在,也必须按写权限单独验收,本次没有调用。

对现有仓库的影响

  • src/app/core/config/runtime-config.ts 固定 domesticPlatform: 'jd',但这只是数据模型平台标识。
  • src/app/core/services/domestic-ecommerce-gateway.service.ts 只提供 /api/voc-e-commerce/{platform}/{path} 的通用 GET 代理,不实现京东签名或 OAuth。
  • proxy.conf.json 的京东相关代理指向本地后端;当前前端默认国内数据仍可使用本地快照模式。
  • 因此,当前不能把本次 API 探测结果直接接入前端页面,也不应把 AppKey/AppSecret 放入 Angular 环境变量或浏览器代码。

恢复后的复测顺序

  1. 在京东开放平台确认应用状态,提交错误码 21/99904030002 对应的解禁工单。
  2. 在授权管理中确认服务对象为目标 POP 店铺,并完成商家授权。
  3. 获取并安全保存 access_tokenrefresh_token、过期时间和店铺标识;AppSecret 只放服务端密钥管理,不放前端。
  4. 先复测一个免授权 GET 和一个需要授权 GET,确认签名、店铺身份和 token 关系。
  5. 再按商品、订单、售后、评价、客服、报表顺序扩大探测;每一域至少验证分页、增量字段、时间范围、空数据和错误码。
  6. 以真实店铺数据做字段映射和数据质量验收,再接入本地快照/增量同步任务。

复测通过标准

  • AppKey 状态不再返回 99904030002 或 V1 错误码 21
  • 需要授权的接口返回业务层响应,而不是 token 缺失、过期或店铺身份不匹配。
  • 商品、订单、售后、评价、报表至少各有一个真实店铺数据样本,分页和增量游标可重复运行。
  • 失败请求不记录 AppSecret、完整 token、用户 PIN、手机号、地址或聊天正文。
  • 同步任务具备限流、重试、断点、幂等、审计和撤销授权后的降级行为。