身份验证-通过免登码获取用户信息.md 5.5 KB

通过免登码获取用户信息旧版SDK

AI 智能摘要

更新于 2026-07-02在第三方企业应用免登和企业内部应用免登场景中,开发者需要使用本接口通过access_token和免登接口中获取的code来获取用户userid。

请求

基本信息 基本信息
HTTP URL https://oapi.dingtalk.com/topapi/v2/user/getuserinfo
HTTP Method POST
支持的应用类型 企业内部应用第三方企业应用
权限要求 调用企业API时需要具备的基本权限

查询参数

名称 类型 是否必填 示例值 描述
access_token String 6ed1bxxx 调用该API的应用凭证。
  • 企业内部应用,通过获取企业内部应用的access_token接口获取。

  • 第三方企业应用,通过获取第三方企业的access_token接口获取。 |

请求体

名称 类型 是否必填 示例值 描述
code String bab02f63c1e030fbbxxxx 免登授权码,获取方式请参考:
  • 小程序:getAuthCode

  • 微应用:requestAuthCode

说明

此授权码五分钟内有效,且只能使用一次。 |

请求示例

curl

1

2

3

4

curl -X POST "https://oapi.dingtalk.com/topapi/v2/user/getuserinfo" \

-H 'Content-Type:application/x-www-form-urlencoded;charset=utf-8' \

-d 'access_token=417124xxxx2a3c270d5' \

-d 'code=123456'

Enter to Rename, ⇧Enter to Preview

Java

1

DingTalkClient client \= new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/v2/user/getuserinfo");

Enter to Rename, ⇧Enter to Preview

Python

1

# -*- coding: utf-8 -*-

Enter to Rename, ⇧Enter to Preview

PHP

1

include "TopSdk.php";

Enter to Rename, ⇧Enter to Preview

Node.js

1

let { Config, OapiV2UserGetuserinfoParams, OapiV2UserGetuserinfoRequest } = require('./client.js');

Enter to Rename, ⇧Enter to Preview

C#

1

IDingTalkClient client \= new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/v2/user/getuserinfo");

Enter to Rename, ⇧Enter to Preview

响应

响应体

名称 类型 示例值 描述
request_id String e8krly4vyiln 请求ID。
errcode Number 0 返回码
errmsg String ok 对返回码的文本描述内容。
result UserGetByCodeResponse 返回结果。
userid String user456 用户的userId。
device_id String 12drtfxxxxx 设备ID。
sys Boolean true 是否是管理员。
  • true:是

  • false:不是 | | sys_level | Number | 1 | 级别。

  • 1:主管理员

  • 2:子管理员

  • 100:老板

  • 0:其他(如普通员工) | | associated_unionid | String | N2o5U3axxxx | 用户关联的unionId。 | | unionid | String | gliiW002zUxxxx | 用户unionId。 | | name | String | 张xx | 用户名字。 |

响应体示例

1

2

3

4

5

6

7

8

9

10

11

12

13

{

  "errcode": 0, 

  "result": {

    "associated_unionid": "N2o5U3axxxx", 

    "unionid": "gliiW0piiii02zBUjUxxxx", 

    "device_id": "12drtfxxxxx", 

    "sys_level": 1, 

    "name": "张xx", 

    "sys": true, 

    "userid": "userid123"

  }, 

  "errmsg": "ok"

}

Enter to Rename, ⇧Enter to Preview

错误码

若调用该接口报错,可根据错误信息在全局错误码文档中查找解决方案。