登录与授权
通过登录与授权API获取调用其他API的凭证
获取或刷新token
POST /m-api/oauth2/token2 HTTP/1.1
Host: yk3.gokuai.com
请求参数
以下是公共参数:
| 参数 | 必需 | 说明 |
|---|---|---|
| client_id | 是 | 分配的client_id |
| grant_type | 是 | password 表示帐号密码登录;refresh_token 表示使用 refresh_token 刷新 access_token ;exchange_token 表示使用第三方授权code或token换取够快access_token;gkkey 表示使用gkkey方式认证 |
| dateline | 是 | 当前unix时间戳, 单位秒 |
| sign | 是 | 签名 |
当grant_type=password时必须附带以下参数:
| 参数 | 必需 | 说明 |
|---|---|---|
| username | 是 | 用户登录帐号 |
| password | 是 | 用户密码,对原始密码进行MD5, 内容为32字节小写字母 |
当grant_type=refresh_token时, 必须附带以下参数:
| 参数 | 必需 | 说明 |
|---|---|---|
| refresh_token | 是 | 上一次授权的refresh_token |
当grant_type=exchange_token时, 必须附带以下参数:
| 参数 | 必需 | 说明 |
|---|---|---|
| exchange_token | 是 | 第三方授权code或token |
| domain | 是 | 预先分配的值 |
| auth | 否 | 预先分配的值 |
当grant_type=gkkey时, 必须附带以下参数:
| 参数 | 必需 | 说明 |
|---|---|---|
| gkkey | 是 | 需要验证的gkkey |
返回格式
JSON
返回结果
HTTP 200
{
"access_token": "26SczD3Poj1obd0o7jzZotH1meg",
"expires_in": 21600,
"refresh_token": "TJ8gTQtz2riUfl1wwfVuu3ARr5o"
}
| 字段 | 类型 | 说明 |
|---|---|---|
| access_token | string | 调用其他API接口的token |
| expires_in | number | access_token的过期时间,单位秒 |
| refresh_token | string | 用于刷新access_token 的 refresh_token,有效期7天 |
错误
HTTP STATUS >= 400
{
"error": "错误代码",
"error_description": "错误描述"
}
| error | 说明 |
|---|---|
| invalid_request | 请求参数无效 |
| unsupported_grant_type | grant_type无效 |
| invalid_client | client_id无效 |
| unauthorized_client | client_id无对应grant_type请求权限 |
| deprecated_client | client_id过期被禁用 |
| invalid_token | refresh_token 或 gkkey 无效 |
| invalid_grant | 认证失败 |
| access_denied | 请求者IP禁止访问 |
| second_verify | 需要进行双因子验证 |