火车票登录及操作乘车人标准接入接口文档
总体说明
接口采用http协议,utf-8编码
header添加参数(回调时需传回):
- swimlane="泳道信息xxx",举例:swimlane=selftest-250709-110905-832
- INF-CELL="灰度信息xxx",举例:INF-CELL=gray-release-tmc-testing
http接口返回通用参数
| success值 | code值 | msg值 |
| true | 0 | 处理或操作成功 |
| false | 非0 | 失败信息 |
加解密处理:
所有请求体:
| 名称 | 类型 | 是否必填 | 示例 | 说明 |
| partnerAccessKey | String | 是 | ETHRME7LOXDT-TK | 美团企业版分配给供应商的接入密钥 |
| content | String | 是 | UgxoCGPQIzoP | 请求体内容,将请求参数JSON序列化后进行加密的结果值 |
文档参考:待定
密钥信息:
1. 账号密码登录
1.1 接口说明
| url | method | 参数类型 | 说明 |
| http://xxxxxx.com/RestfulService/passengerLogin | POST | json | http://xxxxxx.com为合作商可访问域名 |
1.2 业务输入参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| userName | 是 | String | 用户名 |
| pwd | 是 | String | 密码 |
| idLastFourNo | 否 | String | 身份证后四位 |
| ts | 是 | Long | 13位时间戳。若请求发起时间与平台接受请求时间相差大于10分钟,平台将直接拒绝本次请求 示例:1617085650321 |
1.3 业务输出参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| status | 是 | Integer | 处理结果status |
| message | 是 | String | 处理结果message |
| data | 否 | Data | 接口返回实际数据 |
Data参数说明:
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| userName | 是 | String | 用户名 |
| accountName | 是 | String | 12306账号名 |
| mobileIn12306 | 否 | String | 12306 注册手机号 |
2. 人脸登录
2.1 接口说明
| url | method | 参数类型 | 说明 |
| http://xxxxxx.com/RestfulService/faceLogin | POST | json | http://xxxxxx.com为合作商可访问域名 |
2.2 业务输入参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| userName | 是 | String | 用户名 |
| userPwd | 是 | String | 密码 |
| faceImgDtos | 是 | List<FaceImgDto> | 刷脸数据,默认需要1张图片数据 |
| ts | 是 | Long | 13位时间戳。若请求发起时间与平台接受请求时间相差大于10分钟,平台将直接拒绝本次请求 示例:1617085650321 |
FaceImgDto参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| faceImg | 是 | String | 图片格式 iv:encryptData,iv:base64编码过的12位byte,encryptData: 先将图片使用AES GCM 256 加密,再通过base64编码,解密代码见附录 |
| facePosition | 否 | String | 人脸区域坐标,格式为左,右,上,下 106,287,256,436 |
2.3 业务输出参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| status | 是 | Integer | 处理结果status |
| message | 是 | String | 处理结果message |
| data | 否 | Data | 接口返回实际数据 |
Data参数说明:
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| userName | 是 | String | 用户名 |
| accountName | 是 | String | 12306账号名 |
| mobileIn12306 | 否 | String | 12306 注册手机号 |
3. 添加/修改/删除乘车人
3.1 接口说明
| url | method | 参数类型 | 说明 |
| http://xxxxxx.com/RestfulService/managePassenger | POST | json | http://xxxxxx.com为合作商可访问域名 |
3.2 业务输入参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| userName | 是 | String | 用户名 |
| operateType | 是 | Integer | 操作类型,1-添加,2-修改,3-删除 |
| pwd | 是 | String | 密码 |
| passengerDto | 是 | TrainPassenger12306Dto | 乘客信息 |
| ts | 是 | Long | 13位时间戳。若请求发起时间与平台接受请求时间相差大于10分钟,平台将直接拒绝本次请求 示例:1617085650321 |
TrainPassenger12306Dto参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| passengerIdType | 是 | String | 证件类型,详见附录【证件类型枚举】 |
| passengerName | 是 | String | 乘客姓名 |
| passengerNo | 是 | String | 证件号码 |
| oldPassengerName | 是 | String | 原乘客姓名,operateType=2时必填 |
| oldPassengerNo | 是 | String | 原证件号码,operateType=2时必填 |
| ticketType | 是 | String | 乘客类型,详见附录【票类型枚举】 |
| passengerPhoneStatus | 否 | Integer | 乘客是手机号核验状态 1 通过手机核验,0-未通过 |
| passengerCheckStatus | 否 | Integer | 乘客核验状态 1 核验通过,0-未通过 |
| passengerId | 否 | String | 乘客ID |
| mobile | 否 | String | 手机号(身份证必填) |
| email | 否 | String | 邮箱(添加乘客且非身份证且无手机号时必填) |
| country | 否 | String | 标准国籍二字码,(添加乘客且非身份证时必填) |
| bornDate | 否 | String | 出生日期,格式yyyyMMdd,(添加乘客且非身份证时必填) |
| expireDate | 否 | String | 证件过期日期,格式yyyyMMdd,(添加乘客且非身份证时必填) |
| sex | 否 | Integer | 1 -男,2-女 |
| isUserSelf | 否 | Integer | 1 表示乘客本人 |
3.3 业务输出参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| status | 是 | Integer | 处理结果status |
| message | 是 | String | 处理结果message |
| data | 否 | Data | 接口返回实际数据 |
Data参数说明:
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| passengerStatus | 否 | Integer | 乘客核验状态 |
| mobileStatus | 否 | Integer | 手机号核验状态 |
| accountName | 是 | String | 12306账号名 |
4. 获取乘车人列表
4.1 接口说明
| url | method | 参数类型 | 说明 |
| http://xxxxxx.com/RestfulService/getPassengerList | POST | json | http://xxxxxx.com为合作商可访问域名 |
4.2 业务输入参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| userName | 是 | String | 用户名 |
| pwd | 是 | String | 密码 |
| ts | 是 | Long | 13位时间戳。 示例:1617085650321 |
4.3 业务输出参数
(1)参数说明
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| status | 是 | Integer | 处理结果status |
| message | 是 | String | 处理结果message |
| data | 否 | Data | 接口返回实际数据 |
Data参数说明:
| 参数名 | 是否必传 | 参数类型 | 参数说明 |
| passengerDtoList | 否 | List<TrainPassenger12306Dto> | 乘客信息列表 |
附录
证件类型枚举
| 证件类型名称 | 证件类型编号 |
| 二代身份证(居民身份证) | 1 |
| 港澳通行证(港澳居民来往内地通行证) | C |
| 台湾通行证(台湾居民来往大陆通行证) | G |
| 护照(中国护照) | B |
| 外国护照 | A |
| 外国人永久居留身份证 | H |
| 港澳居民居住证 | K |
| 台湾居民居住证 | P |
票类型枚举
操作失败枚举
| 类型 | 错误原因 | code |
| 系统错误 | 系统繁忙,请稍后进行重试 | 40001 |
| 系统错误 | 12306系统维护,请稍后进行重试 | 40002 |
| 系统错误 | 操作失败,不可重试 | 40003 |
| 账号相关 | 账户用户名及密码错误 | 40101 |
| 账号相关 | 账户被锁定,请前往12306app解封 | 40102 |
| 账号相关 | 账号异常,请通过人脸照片进行核验 | 40103 |
| 账号相关 | 账号异常,请通过人脸视频进行核验 | 40104 |
| 账号相关 | 账号异常,请通过短信进行核验 | 40105 |
| 账号相关 | 账号异常,短信验证码核验失败,请重新回填 | 40106 |
| 账号相关 | 账号异常,人脸照片核验失败,请重新核验 | 40107 |
| 账号相关 | 账号异常,人脸视频核验失败,请重新核验 | 40108 |
| 账号相关 | 账号异常,当日已无法核验,请第二天重试 | 40109 |
| 乘车人相关 | 乘车人手机号核验未通过,请进行检查 | 40201 |
| 乘车人相关 | 乘车人身份信息未核验通过,请进行检测或联系12306咨询 | 40202 |
| 乘车人相关 | 添加修改失败,常用乘车人数量已超过上限,请删除乘客后重试 | 40203 |
| 乘车人相关 | 添加修改失败,常用乘车人存在重复,请重新检查 | 40204 |
| 乘车人相关 | 删除失败,主乘车人不能删除 | 40205 |
| 乘车人相关 | 删除失败,该乘客不允许删除 | 40206 |
| 乘车人相关 | 删除失败,该乘车人不存在 | 40207 |
| 乘车人相关 | 删除失败,由于添加时间限制,该乘客不允许删除 | 40208 |
| 乘车人相关 | 修改失败,主乘车人不能修改 | 40209 |
| 其他 | 其他原因 | 40301 |
人脸图片解密代码