企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
## 1、 API调用请求基于HTTP协议,要求如下: Method : POST Content-Type : application/json ## 2、API调用请求分为2部分:请求URL和请求body。 平台参数:写入请求URL中; 业务参数:写入body中,目前只支持JSON字符串。 ## 3、appkey、appsecret、API接入地址 appkey、appsecret、API接入地址获取方式 1.在推送订单的接收平台(以下简称接收平台)入驻成为跑腿商家,入驻链接联系接收平台获取。入驻完成后,需接收平台审核通过后才算是入驻成功; 2.入驻成功后联系接收平台为入驻商户创建应用,创建完成后由接收平台提供appkey、appsecret、API接入地址; 3.推送订单时应保证商家的预存金余额充足。 ## 4、平台参数 | 参数名称 | 是否必填 | 范例 | 参数说明 | | ---- | ---- | ---- | ---- | | appkey | 是 | G86JM5RJ3h69ZHX286 | 为每个应用提供的唯一标识 | | timestamp | 是 | 1604027239 | 本次调用的秒级时间戳 | | nonce | 是 | 741852 | 随机数 | | sign| 是 | f30fc2aeb50c984bea266ba285ce2e8d9617253f | 签名,签名规则详见下说明 | | operate | 是 | deliveryFee | 请求api的名称 | 调用URL示例: 例如API接入地址是:https://xxx.xxx.com 则调用URL的完整地址是: https://xxx.xxx.com?appkey=G86JM5RJ3h69ZHX286&timestamp=1604027239&nonce=741852&sign=f30fc2aeb50c984bea266ba285ce2e8d9617253f&operate=deliveryFee ## 5、签名规则 1. 将URL中的平台参数appkey、nonce、operate、timestamp 按照 **参数名** ASCII码从小到大排序(字典序),每个参数后拼接'='以及参数值,然后再用'&'拼接,得到字符串A。 如:appkey=G86JM5RJ3h69ZHX286&nonce=741852&operate=deliveryFee&timestamp=1604027239 2. 字符串A拼接'&body=',再拼接body中的字符串内容,再拼接"&secret="和appsecret值,得到字符串B。 如:appkey=G86JM5RJ3h69ZHX286&nonce=741852&operate=deliveryFee&timestamp=1604027239&body={"acceptaddress":{"realname":"张三","mobile":"15364810000","sex":1,"address":"太原高新技术产业开发区山投大厦","location_x":"37.789","location_y":"112.56619"},"goods_weight":1.5,"delivery_time":"2020-10-30 12:00","delivery_tips":1}&secret=116588fe7846ee0bc24047c561691654 3. 对字符串B用sha-1签名算法进行hash运算,最终得到sign值。 如:83176cf89b06c639e7a89650c502e96c11c5fb04 **注意**:*回调中的签名的生成方式与请求API时签名的生成方式一致,开发者可通过验证签名来判断是否为合法请求* ## 6、平台响应参数 | 参数 | 类型 | 说明 | | --- | --- | --- | --- | | errno | Number | 平台响应码 | | message | String或Array | 具体的返回信息 | errno 可能的值: 0 请求成功 -1请求失败 请求成功结果示例: { "errno": 0, "message": { "delivery_fee": 5.5, "delivery_tips": 0, "total_fee": 5.5, "discount_fee": 0, "final_fee": 5.5, "distance": 1.1, "fees": { "basic": { "title": "基础配送费", "note": "固定金额", "fee": 5.5, "fee_cn": "¥5.5" } }, "delivery_time": "2020-10-30 12:00", "goods_weight": 1.5 } } 请求失败结果示例: { "errno": -1, "message": "签名验证错误" }