What is DingTalk Contacts
DingTalk Contacts is the core infrastructure for unified management of internal organizational information. It digitally represents the Organization Structure and User information of an Organization, providing users with the basic capability to quickly locate people and collaborate efficiently. For more feature details, see DingTalk User Guide - Organization Contacts.| Dimension | Description |
|---|---|
| Essence | A digital representation carrier of the Organization Structure |
| Form | Tree-structured Department hierarchy + User information database |
| Function | The hub that connects people, matters, and resources within an Organization, supporting scenarios such as Approval flows, message routing, and Permissions control |
How to view Contacts
Organization Admin perspective
Organization Admins can manage and view Contacts in the following ways:- DingTalk Admin Console: Sign in to the DingTalk Admin Console, and go to the Internal Contacts module to perform full management and configuration of Contacts.
- Contacts Settings: Configure advanced features such as Contacts visibility rules, Custom fields, and Executive mode.
Regular users
Regular Organization Users can view Contacts through the following endpoints:- DingTalk for PC: In the DingTalk PC client, click the Contacts tab to view the Organization Structure and contact details.
- DingTalk Mobile: In the DingTalk mobile App, go to the Contacts page to browse by Department or search by keyword.
- DingTalk for Web: Access Contacts features through the DingTalk web version.
Open capabilities overview
Open API list
Contacts provides extensive Open API capabilities. Developers can use the APIs to integrate Contacts with their business systems.User contacts
| API | Description | API version |
|---|---|---|
| Get the user’s contact profile | Get the Profile of an Organization User in Contacts. | New |
Contacts permissions
| API | Description | API version |
|---|---|---|
| Get the Contacts permission scope | Get the Contacts permission scope. | Legacy |
User management
| API | Description | API version |
|---|---|---|
| Create a user | Create a new user. | Legacy |
| Update user information | Update the specified user information. | Legacy |
| Delete a user | Delete a specified user by user ID. | Legacy |
| Query user details | Get the details of a specified user. | Legacy |
| Get basic information of department users | Get basic information of users in a specified Department. | Legacy |
| Get the user ID list of a department | Get the user ID list of a specified Department. | Legacy |
| Get details of department users | Get the details of users in a specified Department. | Legacy |
| Get the number of employees | Get the number of Employees. | Legacy |
| Get the list of employees who have not signed in to DingTalk | Query the list of Employees in the Organization who have not signed in to DingTalk within a specified period. | Legacy |
| Query users by phone number | Get the user ID by phone number. | Legacy |
| Get the user ID by unionId | Get the user ID by unionId. | Legacy |
| Get the Admin list | Query the Admin list. | Legacy |
| Get the Contacts permission scope of an Admin | Get the Contacts permission scope of an Admin. | Legacy |
| Get the App Management permissions of an Admin | Get the App Management permissions of an Admin. | Legacy |
| Query the resignation record list | Query the list of resignation records in the Organization. | New |
| Set Executive mode | Set the Executive mode for an Employee. | New |
| Get user Executive mode settings | Get the details of a user’s Executive mode settings. | New |
| Delete user attribute visibility settings | Delete attribute Field visibility settings of an Organization Employee. | New |
| Get user attribute visibility settings | Get attribute Field hiding settings of an Organization Employee. | New |
| Set user attribute visibility | Add or update attribute Field hiding settings of an Organization Employee. | New |
| Search for user IDs | Search for user IDs by user Name. | New |
| Sort Contacts user IDs | Sort user IDs by the pinyin of user Names. | New |
Department management
| API | Description | API version |
|---|---|---|
| Create a department | Create a new Department. | Legacy |
| Update a department | Update Department information. | Legacy |
| Delete a department | Delete a specified Department by Department ID. | Legacy |
| Search for a department ID | Search for a Department ID. | New |
| Get department details | Get the details of a specified Department by Department ID. | Legacy |
| Get the department list | Get basic information about the next-level Departments. | Legacy |
| Get the sub-department ID list | Get the list of all direct sub-departments under an Organization Department. | Legacy |
| Get all parent departments of a specified department | Get the list of all parent department IDs of a specified Department. | Legacy |
| Get all parent departments of a specified user | Query all parent Departments to which a specified user belongs. | Legacy |
Role management
| API | Description | API version |
|---|---|---|
| Create a role | Create a new Role. | Legacy |
| Create a role group | Create a role group. | Legacy |
| Update the role name | Update the Role Name. | Legacy |
| Bulk add employee roles | Bulk add Roles for Employees. | Legacy |
| Delete a role | Delete a specified Role by Role ID. | Legacy |
| Bulk delete employee roles | Bulk delete Roles for Employees. | Legacy |
| Set the management scope of role members | Set the management scope of Role users. | Legacy |
| Get the role group list | Get role group information. | Legacy |
| Get the role list | Get the Role list. | Legacy |
| Get role details | Get the details of a specified Role by Role ID. | Legacy |
| Get the employee list of a specified role | Get the list of Employees assigned to a specified Role. | Legacy |
External contacts
| API | Description | API version |
|---|---|---|
| Add an external contact | Add an External contact to the Organization. | Legacy |
| Delete an external contact | Delete an External contact from the Organization. | Legacy |
| Update an external contact | Update an External contact of the Organization. | Legacy |
| Get the external contact list | Get the list of External contacts of the Organization. | Legacy |
| Get the external contact tag list | Get the Tags of External contacts of the Organization. | Legacy |
| Get external contact details | Get the details of an External contact of the Organization. | Legacy |
Enterprise Account
| API | Description | API version |
|---|---|---|
| Create an SSO Enterprise Account | Create a new user with a single sign-on Enterprise Account. | Legacy |
| Change the DingTalk ID of an Enterprise Account | Change the DingTalk ID of an Enterprise Account. | New |
| Create a DingTalk-built Enterprise Account | Create a new user with a DingTalk-built Enterprise Account. | Legacy |
| Update Enterprise Account user information | Update the specified Enterprise Account user information. | Legacy |
| Query Enterprise Account user details | Get the details of a specified Enterprise Account user. | Legacy |
| Enable an Enterprise Account | Enable a specified Enterprise Account. | New |
| Disable an Enterprise Account | Disable a specified Enterprise Account. | New |
| Force sign-out of an Enterprise Account | Force sign-out of a specified Enterprise Account. | New |
| Query the status of an Enterprise Account | Query the enabled status of an Enterprise Account. | New |
| Query the organizations an Enterprise Account owns | Query the Organizations in which the Enterprise Account holds the creator role, and get information about those Organizations. | New |
| Authorize an Enterprise Account to join multiple organizations | Authorize an Enterprise Account to join multiple Organizations. | New |
| Invite Enterprise Accounts from other organizations to join | Add Enterprise Accounts from other Organizations to this Organization. | Legacy |
| Get details of department Enterprise Account users | Get the details of users in a specified Department. | Legacy |
| Query Enterprise Account users by phone number | Get the user ID of an Enterprise Account user by phone number. | Legacy |
| Transfer an Enterprise Account to the Super Admin (creator) | Transfer the ownership of an Organization owned by an Enterprise Account in this Organization to another Enterprise Account. | New |
| Query the original dingId by migrated dingId | Query the original dingId by the migrated dingId. | New |
| Query the original unionId by migrated unionId | Query the original unionId by the migrated unionId. | New |
| Query the migrated dingId by original dingId | Query the migrated dingId by the original dingId. | New |
| Query the migrated unionId by original unionId | Query the migrated unionId by the original unionId. | New |
| Authorize other organizations to view Enterprise Account information of this organization | Specify the Fields of Enterprise Account information of this Organization that other Organizations can view. | New |
Organization management
| API | Description | API version |
|---|---|---|
| Get Organization Authentication information | Get Organization Authentication information. | New |
| Get Organization invitation information | Get the invitation information of the Organization. | New |
| Get the latest DingTalk Index of the Organization | Get the latest DingTalk Index of the Organization. | New |
| Check whether an Admin has App Management permissions | Check whether an Organization Admin has App Management permissions. | New |
| API | Description | API version |
|---|---|---|
| Get department details | Get Department details by Department ID. | Legacy |
| Get the user list of a department | Get the user list of a Department. | Legacy |
| Get the department list | Get the industry Contacts Department List by Department ID. | Legacy |
| Get department user details | Get details of Department users. | Legacy |
| Get Organization information | Get Organization information of industry Contacts. | Legacy |
Contacts ID translation
| API | Description | API version |
|---|---|---|
| Asynchronously translate Contacts IDs | Start an asynchronous translation of Contacts ID content, replacing user IDs and Department IDs within the Contacts permission scope of the product solution provider. | New |
| Get the result of an asynchronous translation task | Get the result of a submitted translation task. | New |
Contacts visibility management
| API | Description | API version |
|---|---|---|
| Get Contacts hiding settings | Bulk get the list of Contacts hiding settings. | New |
| Delete Contacts hiding settings | Delete Contacts hiding settings. | New |
| Add or update Contacts hiding settings | Add or update Contacts hiding settings. | New |
| Set Department visibility priority | Set the visibility priority of a Contacts Department. | New |
| Add or modify Contacts viewing restriction settings | Add or modify Contacts viewing restriction settings. | New |
| Get the list of Contacts viewing restriction settings | Get the list of Contacts viewing restriction settings. | New |
| Delete Contacts viewing restriction settings | Delete Contacts viewing restriction settings. | New |
| API | Description | API version |
|---|---|---|
| Create an upstream-downstream organization | Create an upstream-downstream Organization. | New |
| Remove the Association with an organization | Remove the Association relationship with an Organization. | New |
| Get the invitation information of upstream-downstream organizations | Get the invitation Link of upstream-downstream Organizations. | New |
| Bulk approve partner organizations’ applications to join | Bulk approve partner Organizations’ applications to join the upstream-downstream Organization. | New |
| Update the attribute information of a partner organization within the upstream-downstream organization | Update the Attribute information of a partner Organization within the upstream-downstream Organization. | New |
| Set the visibility scope of a partner organization within the upstream-downstream organization | Set the visibility scope of a partner Organization within the upstream-downstream Organization. | New |
| Get information about upstream-downstream organizations the Organization has joined or applied to join | Get information about upstream-downstream Organizations the Organization has joined, or get information about upstream-downstream Organizations the Organization has applied to join. | New |
| Get the organization and user information that has joined or is applying to join the upstream-downstream organization | Get the Organization and user information that has joined or is applying to join the upstream-downstream Organization by the upstream-downstream Organization ID. | New |
| API | Description | API version |
|---|---|---|
| Remove the Association with an organization | Remove the Association relationship with an Organization. | New |
| Get the trunk organization list | Get the trunk Organization list. | New |
| Get the branch organization list | Get the branch Organization list. | New |
| Bulk approve partner organizations’ applications to join | Bulk approve branch Organizations’ applications to join the trunk Organization. | New |
| Get authorization data for upstream-downstream organization branches | Get authorization data for upstream-downstream Organization branches. | New |
| Set the visibility scope of a branch organization within the trunk organization | Set the visibility scope of a branch Organization within the trunk Organization. | New |
| Update the attribute information of a branch organization within the trunk organization | Update the Attribute information of a branch Organization within the trunk Organization. | New |
Callback event list
Contacts supports callback events such as user changes, Department changes, Role changes, and Organization information changes. For more events, see the event subscription overview.Tutorials
DingTalk provides sample integration flows for Contacts APIs.- Create, get, update, and delete organization employees
- Create, get, update, and delete organization departments
- Synchronize the enterprise OA system with DingTalk Contacts
- Get the signed-in user information from a third-party personal Mini program
Glossary
Employee ID
The Field code corresponding to Employee ID isjob_number. The Employee ID of an Employee within an Organization does not have to be unique, so it cannot be used as a unique identifier for the Employee within the Organization.
The Organization Admin signs in to the DingTalk Admin Console, and on the Contacts page, clicks the Employee Name to view the Employee ID. The Employee ID Field is Optional.