GenerateToken - 生成应用认证token

使用凭证信息,生成指定IDaaS EIAM实例下的某个应用的access token。

接口说明

目前支持的方式:授权码模式、设备流、刷新 token、客户端模式、账密模式。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

授权信息

当前API暂无授权信息透出。

请求语法

POST /v2/{instanceId}/{applicationId}/oauth2/token HTTP/1.1

请求参数

名称类型必填描述示例值
instanceIdstring

实例 ID。

idaas_ue2jvisn35ea5lmthk267xxxxx
applicationIdstring

应用 ID。

app_mkv7rgt4d7i4u7zqtzev2mxxxx
client_idstring

客户端 ID。

app_mkv7rgt4d7i4u7zqtzev2mxxxx
client_secretstring

客户端密钥,赋值场景: 当 grant_type 为 client_credentials",采用 client_secret_post 方式时,需填写此值。

CSEHDcHcrUKHw1CuxkJEHPveWRXBGqVqRsxxxx
grant_typestring

授权类型,目前支持的类型如下:

  • client_credentials 客户端模式,需要传入 client_id 和 client_secret
  • refresh_token 刷新令牌
  • authorization_code 授权码模式
  • urn:ietf:params:oauth:grant-type:device_code 设备流模式
  • password 帐密模式
枚举值:
  • authorization_code
  • urn:ietf:params:oauth:grant-type:device_code
  • refresh_token
  • client_credentials
  • password
client_credentials
codestring

授权 code 码,传入场景: grant_type=authorization_code 授权码模式时,必填参数。

xxxx
usernamestring

账户名,在帐密模式下,必填参数。

uesrname_001
passwordstring

账户名,在帐密模式下,必填参数。

xxxxxx
device_codestring

设备 code 码,传入场景: grant_type=urn:ietf:params:oauth:grant-type:device_code 即设备流模式时,必填参数。

xxxx
redirect_uristring

重定向 URI,传入场景: grant_type=authorization_code 授权码模式时,必须参数,与获取授权码请求中的重定向 URI 必须是一致的。

xxx
refresh_tokenstring

刷新 token,传入场景: grant_type=refresh_token 即刷新令牌模式时,必填参数。

ATxxx
code_verifierstring

授权码模式下,开启 PKCE 能力时,对应的验证 code。

xxx
exclusive_tagstring

排除的 tag。

ATxxx
scopestring

scope 范围,非必须,支持多选,多个取值以空格分隔。 可选取值:

  • openid
  • email
  • phone
  • profile
xxxx

返回参数

名称类型描述示例值
object

响应结果。

token_typestring

token 类型,取值可选范围: Basic - Basic 类型 Bearer - Bearer 类型

Bearer
access_tokenstring

access_token。

ATxxx
refresh_tokenstring

refresh_token。

RTxxx
expires_inlong

有效时长,单位秒。

1200
expires_atlong

失效时间,格式为 Unix 时间戳,单位为秒。

1653288641
id_tokenstring

id_token。

xxxxx

示例

正常返回示例

JSON格式

{
  "token_type": "Bearer",
  "access_token": "ATxxx",
  "refresh_token": "RTxxx",
  "expires_in": 1200,
  "expires_at": 1653288641,
  "id_token": "xxxxx"
}

错误码

访问错误中心查看更多错误码。

变更历史

变更时间变更内容概要操作
2023-10-24API 内部配置变更,不影响调用查看变更详情
2023-04-04API 内部配置变更,不影响调用查看变更详情

错误码

HttpCodeError Code错误信息说明
400invalid_grantInvalid or not supported grant_type: client_credentials应用 API 未开放
404application_not_foundApplication id not found: app_mkv7rgt4d7i4u7zqtzev2mxxxx应用不存在
500Internal Server ErrorInternal Server Error服务器内部错误