第三方账号登录教育号接口

使用场景: 第三方平台登录教育号的应用。

请求方式: GET(HTTPS

请求地址: https://sso.qq.com/pass/third_account_login

请求方法: [ GET ]

请求参数:

参数 必须 说明
code 第三方平台OAuth登录的Code
appid 第三方为教育号分配的应用id
account_source 第三方账号源,由教育号提供

请求示例 https://sso.qq.com/pass/third_account_login?account_source=2c69c7aa42f001&appid=10000&code=xxxxxx

code换取access_token

接口说明:此接口返回的 access_token 用于完成登录态下发,查询用户信息,与 suite_access_token 和 corp_access_token 不同

请求地址: https://sso.qq.com/open/access_token

请求方法: [ GET, POST ]

请求参数:

参数 必须 说明
appid 填教育号平台 SuiteId
secret 填教育号平台 SuiteKey
code 填应用跳转地址中获取的 code
grant_type 填 "authorization_code" 字符串

请求示例:

https://sso.qq.com/open/access_token?appid=xxxx&secret=265b2b7&code=581879d8ac77948&redirect_uri=https://xxx.html&grant_type=authorization_code

返回结果:

{
  "code": 0,
  "msg": "请求成功",
  "requestid": "463b215ea1d466a8",
  "data": {
    "access_token": "a51kiS9ooVgQRfhVqLCrmTsj5kFGu1JZnKwyctgbQB.QxUJnHSmGLclVKyhgijlhXfXfdjELsfZ",
    "expires_in": 7200,
    "refresh_token": "38NpHr4Ax51wUedoST3HWKMb5BJp88pomd7Wz2p772P2SWJvD1geWKxjzC1dF816rsyBXgeJVG8Hnb6oaAK3yYTTDuLiztSwcf9vUUh.SmqTWjhtrOftpmLfNaKNsEjvFnvIvwMcliiYlBAdEEFEOpssxGrmzJRlqhPSVMBc"
  }
}

参数说明:

参数 必须 说明
code 返回码
msg 返回码的文本描述内容
requestid 请求 id
data
access_token access_token
expires_in 过期时间, 默认 7200秒
refresh_token refresh_token,用于更新 access_token,过期时间 30 天

更新access_token

请求地址: https://sso.qq.com/open/refresh_token

请求方法: [ GET, POST ]

请求参数:

参数 必须 说明
appid 填教育号平台应用id
refresh_token 填上一步获取到的refresh_token参数
grant_type 填 "refresh_token" 字符串

请求示例:

https://sso.qq.com/open/refresh_token?appid=xxxx&refresh_token=581879d8ac77948&grant_type=refresh_token

返回结果:

{
  "code": 0,
  "msg": "请求成功",
  "requestid": "102d02d392911261",
  "data": {
    "access_token": "G3eBvGPjgqJPf2hvszeyYgxUbVhVZh4E79.rujydCcdhtTZpKnkyrOTfrlNBhfJMElE",
    "expires_in": 7200,
    "refresh_token": "37QZ1UiTUsaxP7u6pq41CfcQRDg8gqcmexSyvo243HMjwCejASNZjqV8gfTMgkqpkRtXfhaMqfouUXnvD4EWtMW3noAp.kyshHAmwrjIrcDMjcuiLhLiSWdbksFxKuwPPAmbCxkIKGziQvmIXhPIUAHwJHMHf"
  }
}

参数说明:

参数 必须 说明
code 返回码
msg 返回码的文本描述内容
requestid 请求 id
data
access_token access_token
expires_in 过期时间, 默认7200秒
refresh_token refresh_token,用于更新 access_token,过期时间 30 天

查询用户信息

使用场景: 用户登录后,使用此接口可以查询到用户的信息,用于角色判定、资料展示。

是否需额外授权: 否

请求方式: [GET, POST](HTTPS

请求地址: https://oapi.epaas.qq.com/account/userinfo?access_token=ACCESS_TOKEN

参数说明:

参数 必须 说明
access_token 调用接口凭证,使用用户态access_token,由/open/access_token

返回结果:

{
  "errcode": 0,
  "errmsg": "ok",
  "user_name": "用户1",
  "appid": "10000",
  "role_id": 12,
  "sub_role_id": 1,
  "userid": "30000000",
  "corpid": 80000,
  "avatar": "https://smart20-1253364609.cos.ap-beijing.myqcloud.com/2021/202106/20210616/EWaAeXFz46b_yY7QwG.png",
  "corp_type": 4,
  "corp_name": "测试学校",
  "child_id": "20000000"
}

参数说明:

参数 说明
errcode 返回码
errmsg 对返回码的文本描述内容
user_name 用户姓名昵称
appid 教育号平台应用id
role_id 角色id, 参考角色类型
sub_role_id 登录账号的子角色ID:120001-学校管理员,20001-行政单位管理员,0-其他
userid 用户id,在机构内唯一
corpid 教育号平台 CorpId
avatar 用户头像链接
corp_type 当前机构类型, 0:DEFAULT; 1:代理商; 2:上级单位; 4:学校; 5:超管;
corp_name 机构名称
child_id 孩子的用户id(家长身份登录时返回)

第三方平台需要实现的接口

获取access_token

使用场景: 由教育号调用

请求地址: https://{第三方后台接口域名}/access_token

请求方法: [ POST ]

请求参数:

{
  "appid": "20000",
  "secret": "xxxx",
  "code": "xxxx",
  "grant_type": "authorization_code"
}
参数 必须 说明
appid 平台为应用分配的应用id
secret 平台为应用分配的秘钥
code 应用跳转地址中获取的 code
grant_type 填 "authorization_code" 字符串

返回结果:

{
  "code": 0,
  "msg": "请求成功",
  "data": {
    "access_token": "a51kiS9ooVgQRfhVqLCrmTsj5kFGu1JZnKwyctgbQB.QxUJnHSmGLclVKyhgijlhXfXfdjELsfZ",
    "expires_in": 7200,
    "refresh_token": "38NpHr4Ax51wUedoST3HWKMb5BJp88pomd7Wz2p772P2SWJvD1geWKxjzC1dF816rsyBXgeJVG8Hnb6oaAK3yYTTDuLiztSwcf9vUUh.SmqTWjhtrOftpmLfNaKNsEjvFnvIvwMcliiYlBAdEEFEOpssxGrmzJRlqhPSVMBc"
  }
}

参数说明

参数 必须 说明
msg 返回码的文本描述内容
data.access_token access_token
data.expires_in 过期时间
data.refresh_token refresh_token,用于更新 access_token

获取用户信息

请求地址: https://{第三方后台接口域名}/userinfo?access_token={access_token}

请求方法: [ GET ]

请求参数:

参数 必须 说明
access_token 接口调用凭证

返回结果:

{
  "code": 0,
  "msg": "请求成功",
  "data": {
    "openid": "ed12312",
    "org_code": "123456",
    "org_name": "测试学校",
    "role_id": 12,
    "sub_role_id": 1,
    "name": "叶小宏",
    "user_number": "2009060406",
    "gender": "1",
    "mobile": "15900110011",
    "student_info": {
      "class_path": "/2021级/一班",
      "class_code": "/12434/2343"
    }
  }
}
参数 必须 说明
code 返回码。0为成功,非0则为失败
msg 返回码的文本描述内容
data.openid 第三方帐号唯一id
data.org_code 学校编码
data.org_name 学校名称
data.role_id 登录账号的角色id, 参考角色类型
data.sub_role_id 登录账号的子角色ID:120001-学校管理员,20001-行政单位管理员,0-其他
data.name 用户的真实姓名
data.user_number 教工号或者学号
data.gender 性别。用户性别,1-男,2-女
data.mobile 手机号码。教师以及高校学生必返
data.student_info.class_path 学生年级、班级,当登录身份为学生身份时必返。注意年级要带上年份,否则只能当自定义年级
data.student_info.class_code 学生年级、班级code,当登录身份为学生身份时必返
© 1998 - 2021 Tencent Inc. All Rights Reserved all right reserved,powered by ePaaS.更新时间: 2024-03-04 10:24:47

results matching ""

    No results matching ""

    results matching ""

      No results matching ""