本章节包含了关于now.gg用户账户服务(User Account Service)的API参考资料。
此文档主要关注验证令牌API的详细信息及其运用。
https://now.gg
此API可用于验证所生成的令牌(token)。
POST
/accounts/oauth2/v1/verify-token
Content-Type: application/json
下列参数应被用在验证API(Verify API)的请求主体之中:
{
     token_type: <token_type>,
     token: <token>,
     client_id: <client_id>,
     client_secret: <client_secret>
 }
| 参数 | 类型 | 是否必需 | 允许的值 | 描述 | 
|---|---|---|---|---|
| token_type | string | 是 | id_token, token | 被请求令牌的类型 | 
| token | string | 是 | id_token, token | 通过now.gg所生成的有效 id_token 或 token(更多信息) | 
| client_id | string | 是 | Oauth client_id | 通过now.gg账户管理生成的唯一的client_id | 
| client_secret | string | 是,如果令牌类型是token 否,如果令牌类型是id_token  | 
Oauth client_secret | 通过now.gg账户管理生成的唯一的 client_secret | 
{ 
     "success": true, 
     "code": "VERIFICATION_SUCCESS", 
     "decodedData": {}, 
     "msg": "Token Verification success" 
 }
{ 
     "success": false, 
     "code": "EXPIRED_TOKEN", 
     "msg": "Token Expired!" 
 }
{
    "success": false,
    "code": "INVALID_TOKEN",
    "msg": "Token Invalid for given ClientId/ClientSecret"
 }
| 参数 | 类型 | 可能的取值 | 描述 | 
|---|---|---|---|
| success | boolean | True, False | 返回结果为True或False | 
| code | string | VERIFICATION_SUCCESS INVALID_TOKEN EXPIRED_TOKEN  | 
VERIFICATION_SUCCESS:对于client_id/client_secret的令牌验证成功 INVALID_TOKEN:令牌格式错误,或是‘aud’与您的client_id不匹配 EXPIRED_TOKEN:令牌过期  | 
| msg | string | Token Verification Success Token Expired Token Invalid for given ClientId/ClientSecret  | 
与返回码相关联,描述成功/失败的易于理解的消息 | 
| decodedData | dict/obj | 成功之后返回的解码数据 | 
{ 
      "iss": 'https://now.gg', // id_token的发行者,   
      "sub": <>, <sub>, 
      "aud": client_id,// 所生成令牌的唯一client_id 
      "exp": <>,// 令牌过期的时间
      "iat": <>, // 令牌发行的纪元时间戳 
      "auth_time": <>, // 认证完成的时间 
      "email": <>, // 用户的email id 
      "mobile": <> // 带有国家代码前缀的用户手机号 
      "userId": <> // 唯一的用户标识符 
      "name": <>, // 用户全名 
      "picture": <>, // 个人资料图片url
      "countryCode":<>, // 用户的国家代码
 }
{ 
       "iss": "https://now.gg", // token的发行者
       "tokenId": "token_id", // token_id 
       "aud": "client_id", // client_id 
       "sessionId": "sessionId", // 会话id 
       "userId": "userId" , // 用户Id
       "scope": "email", // 授权范围,包括:email/profile/authorization 
       "iat": 1636779002, 
       "exp": 1636782602 
 }
| 参数 | 类型 | 可用于 | 描述 | 
|---|---|---|---|
| Iss | string | id_token, token | 令牌(Token)发行者 | 
| sub | string | id_token | 反映uuid/ulid的随机唯一字符串 | 
| aud | string | id_token, token | 所生成令牌的唯一client_id | 
| picture | string | id_token | 用户个人资料图片url | 
| exp | int | id_token, token | 请求有效期 – 令牌过期时间 | 
| iat | int | id_token, token | 令牌发行的纪元时间戳 | 
| auth_time | int | id_token | 认证完成的时间 | 
| string | id_token | 用户关联的账户的电子邮箱地址 | |
| mobile | string | id_token | 带有国家名称(country name)前缀的用户手机号 | 
| userId | string | id_token, token | 用户的唯一标识符 | 
| name | string | id_token | 用户全名 | 
| countryCode | string | id_token | 用户的国家代码 | 
| tokenId | string | token | 返回令牌的tokenId | 
| sessionId | string | token | 授权的会话ID | 
| scope | string | token | 授权范围,包括:email/profile/authorization | 
本文档主要关注令牌生成API(Generate Tokens API)的详细信息及其运用。
https://now.gg
此API被用于使用授权码来生成 token 和 refresh_token。
POST
/accounts/oauth2/v1/token
Content-Type: application/json
下列请求主体应用于使用令牌生成API来生成 token 和 refresh_token。
注意:如果您要使用refresh_token来生成令牌,那么请 参阅此章节。
{
  client_secret: '<your_oauth_client_secret>',
  client_id: '<your_oauth_client_id>',
  grant_type: 'code',
  code:  '<通过账户管理收到的authorization_code>',
  token_type: '<refresh_token token>',
}
| 参数 | 类型 | 是否必需 | 允许的值 | 描述 | 
|---|---|---|---|---|
| token_type | string | 是 | refresh_token, token | 被请求令牌的类型。 | 
| grant_type | string | 是 | code | 授权(码)的类型。 | 
| code | string | 是 | Auth Code | 通过账户管理接收到的authorization_code。 | 
| client_id | string | 是 | OAuth client_id | 唯一的OAuth client_id。 | 
| client_secret | string | 是 | OAuth client_secret | 唯一的OAuth client_secret。 | 
注意:OAuth证书(client_id and client_secret)可通过 此章节申请。
{
 "success": true,
 "code": "REFRESH_TOKEN TOKEN",
 "token": "<token>", // 用于授权头的令牌。
 "refresh_token": "<refresh_token>", // 当令牌过期时,用于生成新的令牌。
 "token_expiry": "<token_expiry_time>", // 令牌过期时间
 "refresh_token_expiry": "<refresh_token_expiry>" // refresh_token过期时间
 }
| 参数 | 类型 | 描述 | 
|---|---|---|
| success | boolean | True – 操作成功。 False – 操作失败。  | 
| code | string | REFRESH_TOKEN TOKEN. | 
| token | string | 用于授权头(Authorization header)的令牌。 | 
| refresh_token | string | 当令牌过期时,用于生成新的令牌。 | 
| token_expiry | string | 返回令牌的过期时间。 | 
| refresh_token_expiry | string | 返回refresh_token的过期时间。 | 
如果您的 token 已经过期,那么使用 refresh_token 来生成令牌。
{
  client_secret: '<your_oauth_client_secret>',
  client_id: '<your_oauth_client_id>',
  grant_type: 'refresh_token',
  refresh_token:  '<refresh_token>',
  token_type: '<token>',
}
| 参数 | 类型 | 是否必需 | 允许的值 | 描述 | 
|---|---|---|---|---|
| token_type | string | 是 | token | 被请求的令牌类型。 | 
| grant_type | string | 是 | refresh_token | 授权(refresh_token)的类型。 | 
| refresh_token | string | 是 | refresh_token | 您之前生成的refresh_token。 | 
| client_id | string | 是 | OAuth client_id | 唯一的OAuth client_id。 | 
| client_secret | string | 是 | OAuth client_secret | 唯一的OAuth client_secret。 | 
{
 "success": true,
 "code": "<REFRESH_TOKEN TOKEN>",
 "token": "<token>", // 用于授权头(Authorization Header)的令牌。
 "token_expiry": "<token_expiry>", // 令牌过期时间。
 }
| 参数 | 类型 | 描述 | 
|---|---|---|
| success | boolean | True – 操作成功。 False – 操作失败。  | 
| code | string | REFRESH_TOKEN TOKEN. | 
| token | string | 用于授权头的令牌。 | 
| token_expiry | string | 返回令牌的过期时间。 | 
此文档主要关注用户信息API(User Info API)的详细信息及其运用。
https://now.gg
此API可用于获取与用户相关的用户信息。
GET
/accounts/users/v1/userinfo
您需要在请求头字段中加入Bearer Token来进行授权。
{ Authorization: 'Bearer Token'}
当使用用户信息API来获取用户数据时,下列是预期的响应。
{
  success: true,
  code: 'USERDATA',
  userData: {
      email: '', // 用户的电子邮箱地址
      mobile: '', // 用户的手机号码
      userId: '', // 用户的userld
      profilePicture: '', // 个人信息图片URL
      name: '', // 用户的名字
      countryCode: 'IN', // 用户的国家代码
      country: '', // 用户的国家
      countryRegionCode: '', // 用户的国家区域代码
      countryRegion: '', // 用户的国家区域
      city: '', // 用户的城市名称
      postalCode: '', // 用户的邮政编码
  },
}
| 参数 | 类型 | 描述 | 
|---|---|---|
| success | boolean | True – 操作成功。 False – 操作失败。  | 
| string | 用户的电子邮箱地址。 | |
| mobile | string | 带有国家代码作为前缀的用户手机号码。 | 
| userId | string | 用户账户的唯一标识符。 | 
| profilePicture | string | 用户个人信息图片的URL。 | 
| name | string | 用户的全名。 | 
| countryCode | string | 用户的国家代码。 | 
| country | string | 用户的国家。 | 
| countryRegionCode | string | 用户的国家区域(州)代码。 | 
| countryRegion | string | 用户的国家区域(州)。 | 
| city | string | 用户的城市。 | 
| postalCode | string | 用户的邮政编码。 | 
| code | string | USERDATA – 用户信息。 | 
此文档主要关注会话信息API(Session Info API)的详细信息及其运用。
https://now.gg
此API用于获取用户的会话信息。
GET
/accounts/users/v1/sessioninfo
您需要在请求头中加入Bearer Token来进行授权。
{ Authorization: 'Bearer Token'}
当使用会话信息API(Session Info API)来获取会话数据时,下列是预期的响应。
{
   success: true,
   code: 'USERDATA',
   sessionData: {
       userAgent: '', // user agent信息
       ip: '', // 用户的IP地址
       locale: 'en-GB', // 用户地区
       deviceData: {
           os: {
               version: '', // OS版本
               name: '',   // OS名称
               platform: '', // OS平台
          },
           device: {
               brand: '', // 设备品牌信息
               model: '', // 设备机型信息
               type: 'desktop', // 设备类型
          },
           client: {
               version: '', // 客户端版本
               engine: '', // 客户端引擎
               name: '', // 客户端名称
               type: '', // 客户端类型
               engineVersion: '', // 客户端引擎版本
          },
      },
       geoData: {
           countryCode: '', // 用户的国家代码
           country: '', // 用户的国家
           countryRegionCode: '', // 用户的国家区域代码
           countryRegion: '', // 用户的国家区域
           city: '', // 用户的城市
           postalCode: '', // 用户的邮政编码
      },
       lastSessionTimestamp: '', // 会话时间戳
       packageName: '', // 包名
  },
}
| 参数 | 类型 | 描述 | 
|---|---|---|
| success | boolean | True – 操作成功。 False – 操作失败。  | 
| code | string | USERDATA – 会话信息。 | 
| lastSessionTimestamp | string | 上次会话的时间戳。 | 
| packageName | string | 包名。 | 
| 参数 | 类型 | 描述 | 
|---|---|---|
| userAgent | string | User-Agent信息。 | 
| ip | string | 用户的IP地址。 | 
| locale | string | 用户地区。 | 
| 参数 | 类型 | 描述 | 
|---|---|---|
| OS | ||
| version | string | 用户操作系统的版本。 | 
| name | string | 用户操作系统的名称。 | 
| platform | string | 用户操作系统的平台。 | 
| Device | ||
| brand | int | 用户设备的品牌。 | 
| model | int | 用户设备的机型。 | 
| type | string | 设备类型。 | 
| Client | ||
| version | string | 客户端版本。 | 
| engine | string | 客户端引擎。 | 
| name | string | 客户端名称。 | 
| type | string | 客户端类型。 | 
| engineVersion | string | 客户端引擎版本。 | 
| 参数 | 类型 | 描述 | 
|---|---|---|
| countryCode | string | 用户的国家代码。 | 
| country | string | 用户的国家。 | 
| countryRegionCode | string | 用户的国家地区(州)代码。 | 
| countryRegion | string | 用户的国家地区(州)。 | 
| city | string | 用户的城市。 | 
| postalCode | string | 用户的邮政编码。 | 
用户帐户服务
用户帐户服务
文档版本 1.0