开放平台-京东API调用指南
一、 开放平台API调用概述#
京东商家开放平台基于HTTP协议,开发者(ISV)可以使用开放平台提供的SDK(支持多种语言)或自行封装HTTP请求来调用API。调用过程包括请求封装、签名加解密等。
二、 通过SDK直接调用#
引入SDK后,直接参考接口文档中的示例进行调用即可。
参数说明:
SERVER_URL,参考 3.1、调用入口accessToken,授权token,详细可参考用户授权appKey,应用appKeyappSecret,应用appSecret
三、 API调用流程#
用户需按照开放平台的协议规范拼装正确的URL,通过HTTPS请求获取数据。主要流程包括:
- 填写参数
- 生成签名
- 拼装HTTPS请求
- 发起请求
- 得到响应结果
- 解析结果
3.1、调用入口#
调用京东商家开放平台API服务的URL地址:
| 调用环境 | 服务地址(https) |
|---|---|
| 正式环境 | https://api.jd.com/routerjson |
| 测试环境 | https://api-dev.jd.com/routerjson |
3.2、调用参数#
系统参数#
调用任何API都需传入的参数:
| 参数名称 | 参数类型 | 是否必传 | 参数描述 |
|---|---|---|---|
| method | String | 是 | API接口名称 |
| access_token | String | 否 | 授权token,接口需要用户授权时则必填 |
| app_key | String | 是 | 应用的appKey |
| sign | String | 是 | 参数签名,详见“5.签名算法” |
| timestamp | String | 是 | 时间戳,格式为yyyy-MM-dd HH:mm:ss |
| format | String | 否 | json,暂时只支持json |
| v | String | 是 | 2.0,API协议版本 |
| 360buy_param_json | String | 是 | 接口级别参数,以json形式传递 |
接口级别参数#
更多API接口级别参数参考接口文档。
3.3、签名算法#
为防止API调用过程中被恶意篡改,需传入签名参数。签名规则如下:
- 参数排序:按字母顺序排列所有请求参数。
- 参数拼接:拼接参数名和参数值。
- 加密处理:在拼接字符串首尾加上appSecret,使用MD5加密并转为大写。
3.4、调用示例#
授权接口示例#
https://api.jd.com/routerjson?360buy_param_json={"end_date":"2013-12-01 00:00:00","order_state":"WAIT_SELLER_STOCK_OUT,WAIT_GOODS_RECEIVE_CONFIRM","page":"1","page_size":"20","start_date":"2013-05-01 00:00:00"}&access_token=12345678-b0e1-4d0c-9d10-a998d9597d75&app_key=123456780233FA31AD94AA59CFA65305&method=jingdong.pop.order.search×tamp=2021-05-07 09:20:39.683+0800&v=2.0&sign=D70825340F4084360B9362B60DFD7930非授权接口示例#
https://api.jd.com/routerjson?360buy_param_json={"end_date":"2013-12-01 00:00:00","order_state":"WAIT_SELLER_STOCK_OUT,WAIT_GOODS_RECEIVE_CONFIRM","page":"1","page_size":"20","start_date":"2013-05-01 00:00:00"}&app_key=123456780233FA31AD94AA59CFA65305&method=jingdong.pop.order.search×tamp=2021-05-07 09:20:39.683+0800&v=2.0&sign=30902CFAF98AC0A3C4D0F5178F26F6713.5、API调用注意事项#
- 编码格式:所有API请求和响应数据编码为UTF-8。
- 参数格式:接口级别参数需转换为标准JSON格式。
- 日期格式:所有日期格式为yyyy-MM-dd HH:mm:ss,使用24小时制。
- 错误信息:API接口的错误信息在HTTP响应体内。
- 签名方式:MD5(appsecret + key+ value .... key + value+appsecret)转大写字母,key、value对按key升序排列,value无需编码。