applyToken
POST
/amsin/api/v1/oauth/applyToken
集成商调用此接口申请访问令牌(access token),以代表用户进行接口调用。
前提条件:集成商通过WorldFirst万里汇页面完成授权。WorldFirst随后生成授权码(authCode)。使用此授权码(authCode)来调用 applyToken 接口。
接口结构
万里汇接口的报文结构包括:请求头、请求体、响应头和响应体。该章节主要介绍请求体和响应体的结构。关于请求头和响应头的更多信息,参见:
请求体参数
字段名 | 数据类型 | 是否必传 | 描述 |
authCode | 字符串 | 是 | 授权码。指用户通过万里汇页面完成授权后返回的码值。例如在以下返回的URL里, |
grantType | 字符串 | 是 | 授权模式。可取值:
|
响应体参数
字段名 | 数据类型 | 是否必传 | 描述 |
result | Result 对象 | 是 | API的调用结果。 |
说明:以下字段,只有当 result.resultStatus = | |||
accessToken | 字符串 | 是 | 访问令牌(access token) |
expireTime | DateTime 字符串 | 是 | 访问令牌(access token)的过期时间 更多信息:
|
refreshToken | 字符串 | 否 | 刷新令牌(refresh token) |
refreshTokenExpireTime | DateTime 字符串 | 否 | 刷新令牌(refresh token) 的过期时间 更多信息:
|
extendInfo | 字符串 | 否 | 拓展字段 |
结果码
result.resultCode
resultCode | resultStatus | resultMessage | resultMessage 中文含义 | 处理建议 |
SUCCESS | S | Success | 成功 | |
PROCESS_FAIL | F | A general business failure occurred. Do Not retry. | 请求处理失败,请勿重试 | 需要人工介入,联系万里汇技术支持以解决此问题 |
PARAM_ILLEGAL | F | Illegal parameters exist. For example, a non-numeric input, or an invalid date. | 参数异常 | 修改订单信息、更换requestId,发起重试 |
INVALID_API | F | The called API is invalid or not active. | 调用的接口已失效或停用 | 确认是否调用正确的API |
INVALID_CLIENT | F | The client is invalid. | 调用的用户无效 | Client ID不存在或无效 |
INVALID_SIGNATURE | F | The signature is invalid. | 签名校验失败 | 确认请求正确加签,更换requestId,发起重试 |
METHOD_NOT_SUPPORTED | F | The server does not implement the requested HTTP method. | HTTP请求方法不支持。 | 确认HTTP请求方法为 |
UNKNOWN_EXCEPTION | U | The API call is failed, which is caused by unknown reasons. | 未知错误 | 无需更换requestId,发起重试 |
UN_SUPPORT_BUSINESS | F | Unsupported business. | 包含无效参数 | 包含无效参数,使用正确参数重试 |
AUTH_CODE_EXPIRED | F | The authorization code (authCode) is expired. | 授权码(authCode)已过期。 | 确认所使用的授权码(authCode)是否正确。 |
AUTH_CODE_NOT_EXIST | F | The authorization code (authCode) does not exit. | 授权码(authCode)不存在 | 重新获取有效的授权码(authCode)。 |
代码示例
请求成功
请求体
{
"authCode": "282888130000470616850250350*****",
"grantType":"AUTHORIZATION_CODE"
}
响应体
{
"result": {
"resultStatus": "S",
"resultCode": "SUCCESS",
"resultMessage": "success"
},
"accessToken":"282888030000856***85343115000MUg***lrfM171000449",
"refreshToken":"28288***0000856***85343***000MUg***lrfM171000449",
"expireTime": "2023-05-29T06:27:25Z",
"refreshTokenExpireTime": "2122-05-29T06:27:25Z"
}
请求失败
请求体
{
"authCode": "282888130000470616850250350*****",
"grantType":"AUTHORIZATION_CODE"
}
响应体
{
"result": {
"resultCode": "AUTH_CODE_EXPIRED",
"resultMessage": "The auth code is EXPIRED",
"resultStatus": "F"
}
}