山东省采网上商城接口对接技术方案
一. 接口概述
API(Application Programming Interface,应用编程接口),简单来说就是把不同的系统通过统一的接口协同一起来完成需求任务,就像像USB数据线一样不管两端连的是什么,都就可以使用。
二. 具体接口(电商平台)
以下接口服务需贵方提供,我方调用。
2.1 接口约定
所有请求方式均为:POST。
所有返回为JSON型字符串。
所有返回基本结构如下:
{"success": 布尔类型, "desc" : "描述","result" : json或数组}
注意:返回体中不要带换行符等容易影响解析的特殊字符。
参数 |
是否必须 |
描述 |
success |
必须 |
true或者false,表示接口调用成功与否 |
desc |
非必须 |
描述,如:调用失败原因,成功提示等 |
result |
非必须 |
返回结果,如[{"sku": 12345”, "price”: 1000}, {"sku”: "11111”, price: "1200”}]或{"sku”: "12345”, "num” : 99, "area_id”: "1000000” }等 |
2.2 授权获取Access Token
除此之外的所有接口均需提供有效的access_token参数。
【请求url】https://贵方域名/api/auth2/access_token
【请求参数】
参数 |
类型 |
是否必须 |
描述 |
timestamp |
string |
必须 |
当前调用时间,格式为"2014-01-01 01:01:01” |
username |
string |
必须 |
贵方提供的用户名 |
password |
string |
必须 |
贵方提供的用户密码 |
sign |
string |
必须 |
签名规则: username+password+timestamp+password 将上面字符串MD5加密后转为小写。 |
【返回结果】
参数 |
类型 |
描述 |
access_token |
string |
|
expires_at |
string |
过期时间 |
2.3 获取品目池接口
【请求URL】https://贵方域名/api/product/get_pools
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
platformCode |
string |
必须 |
平台code标识 |
2.4 获取商品编号SKU接口
【请求URL】https://贵方域名/api/product/skus
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
catalog_id |
string |
必须 |
池子编号 |
platformCode |
string |
必须 |
平台code标识 |
2.5 商品详情接口
【请求URL】https://贵方域名/api/product/detail
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
sku |
string |
必须 |
商品编号,只支持单个查询 |
product_extend_attributes |
string |
|
获取除基本商品信息外的其他商品信息。如传:“example_sku,example_emall”则除基本信息,同时返回“标杆供应商商品sku,标杆供应商”。当不传,或者传“”时,表示不需要额外的参数信息 |
platformCode |
string |
必须 |
平台code标识 |
【返回参数】
参数名称 |
类型 |
描述 |
sku |
string |
商品编号 |
url |
string |
商品url |
model |
string |
型号 |
weight |
string |
重量 |
image_path |
string |
主图地址 |
state |
string |
上下架状态 |
brand_name |
string |
品牌 |
name |
string |
商品名称 |
product_area |
string |
产地 |
upc |
string |
条形码 |
unit |
string |
销售单位 |
category |
string |
类别 |
service |
string |
售后服务 |
code_69 |
string |
69码 |
attributes |
string |
[{attributeID => 标准参数项的ID, attributeName => 贵方参数项的名称,valueID => 标准参数值的ID,value => 贵方参数值}] |
introduction |
string |
详细介绍 |
param |
string |
规格参数 |
ware |
string |
包装清单 |
sale_actives |
int |
是否是促销商品,数值类型,“0-不是促销产品, 1-是促销产品” |
case |
string |
cas号 |
goods_number |
string |
货号 |
goods_date |
string |
货期 |
purity |
string |
纯度 |
2.5.1 获取商品标准信息(非必须)
【请求URL】https://贵方域名/api/product/product_quality
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
skus |
必须 |
商品编号,支持批量查询,以,分隔。 |
platformCode |
必须 |
平台code标识 |
2.5.2 批量更新商品参数(非必须)
【请求URL】https://贵方域名/api/product/batch_update
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
attributes |
必须 |
参数的参数,多个参数用“,”分隔。 示例: name,brand_name 注:此处的参数,来自于2.5商品详情接口返回的商品参数 |
skus |
必须 |
查询的skus,多个sku用“,”分隔 示例:sku1,sku2 |
platformCode |
必须 |
平台code标识 |
2.5.3 获取商品参数(新增)(非必须)
【请求URL】https://贵方域名/api/product/ product_attributes
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
platfromCode |
必须 |
平台code(id) |
sku |
必须 |
查询的sku |
➢ 【返回结果】
参数名称 |
是否必须 |
描述 |
attributes |
必须 |
商品参数字符串,多个参数用分号间隔,数据格式:"参数名称 1":参数值1;"参数名称 2":参数值 2; |
2.5.4 获取商品承诺函/产品认证信息(甘肃对接)
说明:3.5接口查询有返参时,该接口需返回对应信息,否则该商品无法上架
【请求URL】https://贵方域名/api/product/product_promise
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
platfromCode |
必须 |
平台code |
sku |
必须 |
查询的sku |
➢ 【返回结果】
参数名称 |
是否必须 |
描述 |
promises |
必须 |
json数组 |
promises对象信息
参数名称 |
是否必须 |
描述 |
regionpromiseguid |
必须 |
商品承诺/产品认证唯一识别码 |
promisefilepath |
必须 |
商品承诺/产品认证附件路径 |
remark |
必须 |
备注信息 |
2.6 上下架状态接口
【请求URL】https://贵方域名/api/product/shelf_states
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
sku |
string |
必须 |
商品编号,支持批量查询,以,分隔。 1为上架,0为下架 |
platformCode |
string |
必须 |
平台code标识 |
2.7 图片接口
【请求URL】https://贵方域名/api/product/images
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
sku |
string |
必须 |
商品编号,支持批量,以,分隔 |
platformCode |
string |
必须 |
平台code标识 |
2.8 商品好评度接口(非必需)
【请求URL】https://贵方域名/api/product/ratings
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
sku |
string |
必须 |
商品编号,支持批量,以,分隔 (最高支持50个商品) |
platformCode |
string |
必须 |
平台code标识 |
➢ 【返回结果】
参数名称 |
描述 |
average |
商品评分 (5颗星,4颗星) |
good |
好评度 |
medium |
中评度 |
bad |
差评度 |
2.9 价格接口
返回协议优惠价格price,和商城售价mall_price。
【请求URL】https://贵方域名/api/product/prices
【请求参数】
参数名称 |
类型 |
是否必须 |
描述 |
token |
string |
必须 |
授权接口获取的access token |
sku |
string |
必须 |
商品编号,请以,分割。例如:12345 ,54321 |
platformCode |
string |
必须 |
平台code标识 |
2.10 地址接口
2.10.1获取一级地址
【请求URL】https://贵方域名/api/area/provinces
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
2.10.2获取二级地址
【请求URL】https://贵方域名/api/area/cities
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
id |
必须 |
一级地址ID |
2.10.3 获取三级地址
【请求URL】https://贵方域名/api/area/getCounty
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
id |
必须 |
二级地址ID |
2.10.4 电商获取地址接口(非必需)
根据阳光公采地址api(见附)进行映射后,通过三级地址id返回贵方对应的id。
【请求URL】https://贵方域名/api/area
【请求参数】
参数名称 |
是否必须 |
描述 |
token |
必须 |
授权接口获取的access token |
id |
必须 |
阳光公采三级地址id, 如:110101(即北京-市辖区-东城区) |