文档管理中心
API参考钱包服务REST开发者调用接口卡券创建、查询、修改接口交通卡接口创建交通卡模板

创建交通卡模板

功能介绍

添加交通卡模板到钱包服务器。

场景描述

开发者可以调用该API,将某一种类的交通卡模板添加到钱包服务器。

使用约束

需在华为AGC网站上创建应用并申请卡券对应的服务。

接口原型

承载协议

HTTPS POST

接口方向

开发者服务器->华为钱包服务器

接口URL

{url}/hmspass/v1/transit/model

{url}变量需要开发者根据服务器所属区域自行选择,请参见钱包服务器地址

数据格式

请求消息:Content-Type: application/json

响应消息:Content-Type: application/json

请求参数

Request Header

展开

参数

是否必选

参数类型

描述

Authorization

String

鉴权码。获取方式详见基于OAuth 2.0开放鉴权,请使用“客户端模式”。“client_id”和“client_secret”即为开发者在华为AGC网站上创建应用后获取的“App ID”和“App key”。将获取到的“access_token”的值拼接在字符串“Bearer”之后,以空格符相隔,组成“Authorization”参数的值。

Content-Type

String

固定值:“application/json;charset=utf-8”。

Accept

String

固定值:“application/json;charset=utf-8”。

Request Body

展开

参数

是否必选

参数类型

描述

详见HwWalletObject参数描述

HwWalletObject

待添加的卡券模板

请求示例

收起
自动换行
深色代码主题
复制
  1. POST /hmspass/v1/transit/model HTTP/1.1
  2. Content-Type: application/json;charset=utf-8
  3. Authorization: Bearer ***
  4. Host: wallet-passentrust-drcn.cloud.huawei.com.cn
  5. Accept: application/json;charset=utf-8
  6. {
  7. "passVersion": "1.0",
  8. "passTypeIdentifier": "hwpass.com.huawei.wallet.transit.test",
  9. "passStyleIdentifier": "transitModelTest",
  10. "organizationName": "XXX Railway",
  11. "fields": {
  12. "countryCode": "CN",
  13. "locationList": [
  14. {
  15. "longitude": "114.0679603815",
  16. "latitude": "22.6592051284"
  17. }
  18. ],
  19. "commonFields": [
  20. {
  21. "key": "logo",
  22. "value": "https://www.huawei.com/XXX.png"
  23. },
  24. {
  25. "key": "merchantName",
  26. "value": "XXX Railway",
  27. "localizedValue": "merchantNameI18N"
  28. }
  29. ],
  30. "appendFields": [
  31. {
  32. "key": "backgroundColor",
  33. "value": "#FF37C09A"
  34. },
  35. {
  36. "key": "ticketFaceValue",
  37. "value": "$127"
  38. }
  39. ],
  40. "imageList": [
  41. {
  42. "key": "mainImage[0]",
  43. "value": "https://www.huawei.com/XXX0.png"
  44. },
  45. {
  46. "key": "mainImage[1]",
  47. "value": "https://www.huawei.com/XXX1.png"
  48. },
  49. {
  50. "key": "mainImage[2]",
  51. "value": "https://www.huawei.com/XXX2.png"
  52. }
  53. ],
  54. "messageList": [
  55. {
  56. "key": "message[0]",
  57. "value": "Have a nice trip!"
  58. }
  59. ],
  60. "ticketInfoList": [
  61. {
  62. "key": "departureStationName",
  63. "value": "Euston"
  64. },
  65. {
  66. "key": "arrivalStationName",
  67. "value": "Lime Street"
  68. },
  69. {
  70. "key": "departureCityName",
  71. "value": "London"
  72. },
  73. {
  74. "key": "arrivalCityName",
  75. "value": "Liverpool"
  76. },
  77. {
  78. "key": "departureTime",
  79. "value": "2019-12-09T10:49:00.010Z"
  80. },
  81. {
  82. "key": "arrivalTime",
  83. "value": "2019-12-09T13:55:00.010Z"
  84. },
  85. {
  86. "key": "platform",
  87. "value": "2"
  88. }
  89. ],
  90. "localized": [
  91. {
  92. "key": "merchantNameI18N",
  93. "language": "zh-cn",
  94. "value": "XXX铁路公司"
  95. },
  96. {
  97. "key": "merchantNameI18N",
  98. "language": "en",
  99. "value": "XXX Railway"
  100. }
  101. ]
  102. }
  103. }

响应参数

错误码为200时:

展开

参数

参数类型

描述

详见HwWalletObject参数描述

HwWalletObject

已添加的卡券模板

响应示例

收起
自动换行
深色代码主题
复制
  1. HTTP/1.1 200 OK
  2. Content-Type: application/json
  3. {
  4. "passVersion": "1.0",
  5. "passTypeIdentifier": "hwpass.com.huawei.wallet.transit.test",
  6. "passStyleIdentifier": "transitModelTest",
  7. "organizationName": "XXX Railway",
  8. "fields": {
  9. "countryCode": "CN",
  10. "locationList": [
  11. {
  12. "longitude": "114.0679603815",
  13. "latitude": "22.6592051284"
  14. }
  15. ],
  16. "commonFields": [
  17. {
  18. "key": "logo",
  19. "value": "https://www.huawei.com/XXX.png"
  20. },
  21. {
  22. "key": "merchantName",
  23. "value": "XXX Railway",
  24. "localizedValue": "merchantNameI18N"
  25. }
  26. ],
  27. "appendFields": [
  28. {
  29. "key": "backgroundColor",
  30. "value": "#FF37C09A"
  31. },
  32. {
  33. "key": "ticketFaceValue",
  34. "value": "$127"
  35. }
  36. ],
  37. "imageList": [
  38. {
  39. "key": "mainImage[0]",
  40. "value": "https://www.huawei.com/XXX0.png"
  41. },
  42. {
  43. "key": "mainImage[1]",
  44. "value": "https://www.huawei.com/XXX1.png"
  45. },
  46. {
  47. "key": "mainImage[2]",
  48. "value": "https://www.huawei.com/XXX2.png"
  49. }
  50. ],
  51. "messageList": [
  52. {
  53. "key": "message[0]",
  54. "value": "Have a nice trip!"
  55. }
  56. ],
  57. "ticketInfoList": [
  58. {
  59. "key": "departureStationName",
  60. "value": "Euston"
  61. },
  62. {
  63. "key": "arrivalStationName",
  64. "value": "Lime Street"
  65. },
  66. {
  67. "key": "departureCityName",
  68. "value": "London"
  69. },
  70. {
  71. "key": "arrivalCityName",
  72. "value": "Liverpool"
  73. },
  74. {
  75. "key": "departureTime",
  76. "value": "2019-12-09T10:49:00.010Z"
  77. },
  78. {
  79. "key": "arrivalTime",
  80. "value": "2019-12-09T13:55:00.010Z"
  81. },
  82. {
  83. "key": "platform",
  84. "value": "2"
  85. }
  86. ],
  87. "localized": [
  88. {
  89. "key": "merchantNameI18N",
  90. "language": "zh-cn",
  91. "value": "XXX铁路公司"
  92. },
  93. {
  94. "key": "merchantNameI18N",
  95. "language": "en",
  96. "value": "XXX Railway"
  97. }
  98. ]
  99. }
  100. }

错误码

详见错误码

调用示例

收起
自动换行
深色代码主题
复制
  1. public HwWalletObject postHwWalletObjectToWalletServer(String url, HwWalletObject hwWalletObject) {
  2. // Construct the http header.
  3. HttpHeaders header = constructHttpHeaders();
  4. // Construct the http body.
  5. String body = CommonUtil.toJson(hwWalletObject);
  6. JSONObject jsonObj = JSONObject.parseObject(body);
  7. System.out.println("Request JSON : " + jsonObj);
  8. // Construct the http URL.
  9. String baseUrl = ConfigHelper.instants().getValue("walletServerBaseUrl");
  10. String walletServerUrl = baseUrl + url;
  11. // Send the http request and get response.
  12. HttpEntity<JSONObject> entity = new HttpEntity<>(jsonObj, header);
  13. ResponseEntity<HwWalletObject> exchange =
  14. REST_TEMPLATE.exchange(walletServerUrl, HttpMethod.POST, entity, HwWalletObject.class);
  15. // Return the posted wallet model.
  16. return exchange.getBody();
  17. }
在 API参考 中进行搜索
请输入您想要搜索的关键词