前言

本文主要对网约车订单信息同步服务-专车进行介绍,包括信息传输方式、协议、具体信息等内容。

注意

  • 本服务以HTTPS方式进行访问。

  • 本接口为高级接口,默认不可调用,使用请与腾讯位置服务商务人员取得联系,开放调用配额后,即可使用。

  • 接口中的参数key和调用示例中的(含尖括号), 请使用您在https://lbs.qq.com/key.html中申请的key。

  • 如无特殊说明,所有接口的输入参数和输出参数编码全部统一为UTF-8。

概述

本服务为司乘同显服务配套后端WebService接口,用于网约车订单信息变更时将相应数据进行同步。用户需要在创建订单,派单给司机,司机接驾,行程结束,订单取消时调用此服务。

请求URL

URL: https://apis.map.qq.com/ws/tls/v1/order/sync
Method: POST
Content-Type: application/json

请求参数

名称 类型 必填 说明
key string 客户注册的访问webservice的key
reqid string 需要全局唯一,推荐使用UUID生成
例如:b7be9806-0b13-11e9-9aed-6c92bf46a458
reqtime int 调用方服务器请求接口时的本地时间
单位:秒
需满足:UNIX时间戳+[-30min,30min]
driver_orderid string 司机预约单订单id,type为2时必填,长度限制50字节,具体参考后面调用示例
passenger_orderid string 乘客预约单订单id,type为3时必填,长度限制50字节,具体参考后面调用示例
business_type int 业务类型,用于区分不同业务间的订单,取值范围[1,200]
例如:
1. 业务A
2.  业务B
status int 订单状态,可选值:
司机端:
0. 创建行程
2. 准备出发
3. 行程中
4. 订单取消
6. 结束行程
301. 某乘客已上车
601. 某乘客已下车
乘客端:
0. 创建订单
1. 已派单(准备出发)
3. 开始送驾
4. 订单取消
6. 结束行程
uptime int 订单状态变更的时间戳,秒为单位,需满足:UNIX时间戳+[-30min,30min]
userid string 网约车下单用户id
注:status=1,2,4时必填非空值
userdev string 网约车下单用户设备id
Android系统:IMEI
iOS系统: IDFV
注:status=1,2,4时必填非空值
driverid string 网约车接单司机id
注:status=2,4时必填非空值
driverdev string 网约车接单司机设备id
Android系统:IMEI
iOS系统: IDFV
注:status=2,4时必填非空值
city string 订单所在城市
注:status=1,2,4时必填非空值
可通过https://lbs.qq.com/service/webService/webServiceGuide/webServiceDistrict 获取行政区划编码,6位,例如北京100000
type int 订单类型,可选值:
2:顺风车订单–司机
3:顺风车订单—乘客
cartype int 订单车辆类型,可选值:
0:所有分类
1:出租车
2:新能源
3:舒适型
4:豪华型
5:商务型
getin_cate int 上车点类型:
1:推荐上车点-交通枢纽
2:推荐上车点-通用
3:POI SUG
4:逆地址解析
5:戳点的经纬度
getin_poiid string 上车点id
如果getin_cate为1或2时,填入推荐上车点ID
如果getin_cate为3或4时,填入上车点的POIID
如果getin_cate为5时,不传递此参数
getin_lnglat string 上车点位置经纬度,经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
getin_poiname string 上车点poi名称
注:没有poi名称时,填默认值”我的位置”
getoff_lnglat string 目的地位置经纬度,经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
getoff_poiname string 目的地poi名称
注:status=1,2,4时必填非空值
getoff_poiid string 目的地poiid,使用地图检索服务时,需要返回对应的poiid
departure_time string 出发时间,对于司机端,传递具体出发时间,对于乘客端,传递出发时间区间,英文逗号分隔, unix时间戳,单位:s  
例如:
乘客端:1583121357,1583121557   出发时间必须大于当前时间
司机端: 1583121357
number_of_passenger int 乘车人数,乘客订单确认,取值范围[1,4]
capacity int 载客量,司机订单确认,取值范围[1,4]
estimate_price_for_carpool string 订单拼成预估价,乘客下单前,计算出的本单拼成的预估费用,分为单位
estimate_price int 乘客下单前,计算出的本单预估费用,单位:分
estimate_distance int 乘客下单前,计算出的本单预估里程,单位:米
estimate_time int 乘客下单前,计算出的本单预估时间,单位:秒
user_lnglat string 乘客下单时的位置经纬度,经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
driver_lnglat string 司机发布行程时的位置经纬度,经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
driver_arrive_lnglat string 司机到达上车点的位置经纬度,经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
real_getin_lnglat string 司机点击开始计费的位置(实际上车点位置经纬度),经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
real_getin_time int 司机点击开始计费的时间戳,单位:秒
real_getoff_lnglat string 司机点击结束行程时的位置(实际上车点位置经纬度),经度在前,纬度在后,经度和纬度用英文半角逗号","分隔,小数点后不得超过6位,单次只可以传入一组经纬度坐标对。
例如:116.307495,39.984102
real_getoff_time int 司机点击结束行程时的时间戳,单位:秒

响应结果

名称 类型 必须 说明
status int 状态码,0正常返回,表示接受到正常信息
message string 错误信息
data object 接口返回信息
status int 状态码,0正常返回,表示接受到正常信息
message stirng 错误信息

示例

Methond:POST
Content-Type: application/json
URL:https://apis.map.qq.com/ws/tls/v1/order/sync

乘客发布行程,创建订单之后,需要调用如下接口先创建订单

// 请求body
   {
   "city""110000",
   "getin_lnglat""116.30647,39.98494",      //用户上车点经纬度
   "getin_poiname""中国技术交易大厦-北门西北侧",   
   "getoff_lnglat""116.32098,39.89355",     //目的地经纬度
   "getoff_poiid""15830929333498782236"//目的地poiid   选填
   "business_type": 1,                     //业务类型   必填
   "getoff_poiname""北京西站南1出站口",
   "cartype"3,                          //车辆类型   选填
   "key""<key>",
   "passenger_orderid""330718659248078852",        //乘客订单ID
   "getin_cate":   1,                        //上车点类型   选填
   "getin_poiid":   "3412412421523412423452", //上车点id     选填
   "estimate_price_for_carpool": 69,                  //拼成预估价   选填
   "estimate_price":   112,                  //未拼成预估价    选填
   "estimate_distance":   1234,              //预估距离        选填
   "estimate_time":   1234,                 //预估时间        选填
   "type"3,                 
   "departure_time""1583121357,1583121557",
   "number_of_passenger"1,
   "reqid""f7ae6682-46ec-11e9-83d1-000000000000",
   "reqtime"1552631919,
   "status"0,   //乘客订单状态为等待邀请
   "uptime"1552631919,
   "user_lnglat""116.307147,39.984403",    //乘客下单时的位置经纬度
   "userdev""355637052277589",          //乘客设备ID
   "userid""314439427527204864"         //乘客ID
   }

   //响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

司机发布行程,创建订单之后,需要调用如下接口先创建订单

// 请求body体
  {
   "city""110000",
   "driver_lnglat""116.307175,39.984401",   //司机发布行程时的位置经纬度
   "driverdev""863504035357778",         //司机的设备ID
   "driverid""314435261423140864",        //司机ID
   "getin_lnglat""116.30647,39.98494",      //司机上车点经纬度
   "getin_poiname""中国技术交易大厦-北门西北侧",   
   "getoff_lnglat""116.32098,39.89355",     //司机目的地经纬度
   "getoff_poiid""15830929333498782236"//目的地poiid
   "getoff_poiname""北京西站南1出站口",
   "business_type": 1,                     //业务类型   必填
   "key""<key>",
   "driver_orderid""330718659248078852"//司机行程订单ID
   "type"2,                 
   "departure_time""1583121357 ",        //司机出发时间
   "capacity"3,
   "reqid""f7ae6682-46ec-11e9-83d1-000000000000",
   "reqtime"1552631920,
   "status"0,                          //司机订单状态为未邀请乘客
   "uptime"1552631921,
   }

   //响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

司机邀请乘客,调用此接口建立司机行程和乘客行程联系

// 请求body体
   {
       "driver_orderid""863504035357778",             //司机行程订单id
   "passenger_orderid""863504035357778",         //乘客订单id
   "key""<key>",
   "reqid""f7ae6682-46ec-11e9-83d1-000000000000",
   "reqtime"1552631920,
   "status"1,                                  //乘客订单状态变为已派单  司机状态变为已邀请乘客
   "uptime"1552631921,
   "type"2,         
   }

乘客确认司机邀请并支付之后,调用此接口建立司机行程和乘客行程联系

// 请求body体
   {
       "driver_orderid""863504035357778",             //司机行程订单id
   "passenger_orderid""863504035357778",         //乘客订单id
   "key""<key>",
   "reqid""f7ae6682-46ec-11e9-83d1-000000000000",
   "reqtime"1552631920,
   "status"1,                                  //乘客订单状态变为已派单  司机状态变为已邀请乘客
   "uptime"1552631921,
   "type"3,         
   }

   //响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

司机准备出发,后续不在接单,需要调用如下接口

// 请求body体
{
   "driver_orderid""863504035357778",   //司机行程订单id
   "key""<key>",
   "reqid""f7ae6682-46ec-11e9-83d1-000000000000",
   "reqtime"1552631920,
   "status"2,                        //司机状态为准备出发
   "uptime"1552631921,
   "type"2,         
   }

司机出发,需要调用如下接口

// 请求body体
  {
   "driver_orderid""863504035357778",         //司机行程订单id
   "key""<key>",
   "reqid""f7ae6682-46ec-11e9-83d1-000000000000",
   "reqtime"1552631920,
   "status"3,                               //司机状态为行程中
   "uptime"1552631921,
   "type"2, 
   "real_getin_lnglat""116.307555,39.984127"//司机点击出发的位置
   "real_getin_time"1552632029,             //司机点击出发的时间   
   }

司机滑动乘客已上车,需要调用如下接口

// 请求body体
 {
       "driver_orderid""863504035357778",        //司机行程订单id
   "passenger_orderid""863504035357778",    //乘客订单id
   "key""<key>",
   "real_getin_lnglat""116.307555,39.984127"//司机点击乘客已上车的位置(乘客实际上车点位置经纬度)
   "real_getin_time"1552632029,             //司机点击乘客已上车的时间
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"301,                           //司机同步某乘客已上车
   "type"2, 
   "uptime"1552632029,
   }

   // 响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

司机滑动乘客已下车,需要调用如下接口

// 请求body体
   {
       "driver_orderid""863504035357778",      //司机行程订单id
   "passenger_orderid""863504035357778",    //乘客订单id
   "key""<key>",
       "real_getoff_lnglat": "116.32098,39.89355",   //此乘客下车的位置
   "real_getoff_time":   1552632131,         //此乘客下车的时间
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"601,                        //司机同步某乘客已下车
   "type"2, 
   "uptime"1552632029,
   }

乘客滑动我已上车,需要调用如下接口

// 请求body体
   {
   "passenger_orderid""863504035357778",     //乘客订单id
   "key""<key>",
    "real_getin_lnglat""116.307555,39.984127"//乘客点击我已上车的位置
   "real_getin_time"1552632029,             //乘客点击我已上车的时间
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"3,                             //乘客状态为开始送驾
   "type"3, 
   "uptime"1552632029,
   }

// 响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

乘客滑动我已下车,需要调用如下接口

// 请求body体
 {
   "passenger_orderid""863504035357778",         //乘客订单id
   "key""<key>",
    "real_getoff_lnglat""116.307555,39.984127",       //乘客点击我已下车的位置
   "real_getoff_time"1552632029,                //乘客点击我已下车的时间
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"6,                                 //乘客状态为行程结束
   "type"3, 
   "uptime"1552632029,
   }

// 响应结果
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

司机滑动行程结束,需要调用如下接口

// 请求 body 体
 {
       "driver_orderid""863504035357778",      //司机行程订单id
   "key""<key>",
   "real_getoff_lnglat":   "116.32098,39.89355", //司机点击结束行程时的位置
   "real_getoff_time":   1552632131,         //司机点击结束行程时的时间
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"6,                           //司机结束行程
   "type"2, 
   "uptime"1552632029,
   }

// 响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

乘客取消订单,需要调用如下接口

// 请求body 体
 {
   "passenger_orderid""863504035357778",         //乘客订单id
   "key""<key>",
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"4,                                  //乘客状态为行程已取消
   "type"3, 
   "uptime"1552632029,
   }

// 响应示例
   {
       "status": 0,
       "message": "query   ok",
       "data": {
           "status": 0,
           "message": "ok"
       }
   }

司机取消订单,需要调用如下接口

  {
   "driver_orderid   ""863504035357778",         //司机行程订单id
   "key""<key>",
   "reqid""396f9584-46ed-11e9-83d2-000000000000",
   "reqtime"1552632029,
   "status"4,                               //乘客状态为行程已取消
   "type"2, 
   "uptime"1552632029,
   }

附录

如需查询返回值中的status和message的具体对应关系,请查看文档《开放平台错误对照表》。

本页内容