Skip to content

🧩OAuth API 参考文档

1. 获取授权页面

接口说明:

Web 应用程序可调用此 API 获取 OAuth 授权页面 URL 地址。

请求方式GET
请求地址授权场景:https://saas.api.yoo-ai.com/oauth/authorize

请求参数

Query

参数名类型必填说明
app_idStringY应用ID 创建应用获取的应用ID
response_typeStringY固定为 code。
stateStringY通常情况下,state 是一串随机字符串或哈希值。客户端在发起授权请求时将其附加到请求 URL 中,终端用户完成授权时,客户端会验证返回的 state 值是否与原始值匹配。如果不匹配或 state 参数丢失,客户端应拒绝这次授权请求。
code_challengeStringYPKCE 协议的临时密钥。应用程序的服务端将一个随机数根据 code_challenge_method 指定的算法进行计算和转换,生成 code_challenge。 仅 PKCE 授权场景下使用,且该场景下此参数为必选。
redirect_uriStringY重定向 URL。创建 OAuth 应用时指定的重定向 URL。

请求示例

shell
curl --location --request GET 'https://saas.api.yoo-ai.com/oauth/authorize?response_type=code&app_id=8173420653665306615182245269&redirect_uri=https://www.yoo-ai.com/oauth/apps&state=1294848&code_challenge=*****&scope=SCOPE'

响应

  • 返回结果的 Http code 为 302,跳转至用户设定授权页地址

2.获取 Access Token

接口说明

通过授权码(code)获取 Access Token。

请求方式POST
请求地址授权场景:https://saas.api.yoo-ai.com/oauth/token

请求参数

Header

参数名取值说明
Content-Typeapplication/json请求正文的方式。

Body

参数名类型必填说明
codeStringY授权码,即终端用户授权后,页面重定向的 URL 中 code 参数的值。
app_idStringY创建应用时获取的app_id。
code_verifierStringYPKCE 协议授权流程中,应用程序的服务端生成的原始随机数。
expire_dateIntN令牌过期时间,默认为 1 天。

响应结果

响应结果为 JSON 格式,包含以下字段:

字段类型说明
access_tokenString访问令牌。
expire_dateString访问令牌过期时间,格式为 Unix time 时间戳,精度为秒。
refresh_tokenString刷新令牌,用于重新获取访问令牌。refresh_token 有效期为 30 天。有效期内可以凭 refresh_token 调用API 刷新 OAuth Access Token 获取新的 OAuth Access Token。

3.获取SaaS-URl地址

接口说明

通过授权码(code)获取 Access Token。

请求方式POST
请求地址授权场景:https://saas.api.yoo-ai.com/oauth/saas-url

请求参数

Header

参数取值说明
Content-Typeapplication/json请求正文的方式
AuthorizationBearer + access_token

响应结果

响应结果为 JSON 格式,包含以下字段:

字段类型说明
saas_pptStringSaaS访问url地址。(单次使用生效,重新使用需再次请求)
json
{
    "code": 200,
    "msg": "success",
    "data": {
        "saas_ppt": "https://ppt.yoo-ai.com?code=Qv2CY6s3Tm"
    },
    "request_id": ""
}