Departments and Teams: Overview of Methods

If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the MCP server so that the assistant can utilize the official REST documentation.

Departments and teams in Bitrix24 form the structure of the company. The methods humanresources.node.* help retrieve data about a department or team, find the required department or team, build a hierarchy, create a new department or team, and change their position in the tree.

Quick navigation: all methods

User documentation: Company structure: New interface and features

Differences Between Departments and Teams

Departments. Use departments when you need to describe a permanent structure of the company: areas of work, subordination, and staff composition. When creating a department, you can specify the parent department, name, description, managers, deputies, and subordinates.

Teams. Use teams when you need to gather employees from different departments for a common task or project. A team also has a leader and a deputy. You can set a description, color, and parent department or team for the team.

Working with Departments and Teams

  1. Retrieve field descriptions using the methods humanresources.node.field.list and humanresources.node.field.get if you need to understand in advance what values can be passed for a department or team.
  2. Get a list of departments or teams through humanresources.node.list. In the request, specify type: DEPARTMENT for departments or TEAM for teams.
  3. Select the required id and request details through humanresources.node.get. If you need to find a department or team by part of the name, use humanresources.node.search.
  4. If working with a hierarchy, obtain the parentId of the parent department or team through humanresources.node.list or humanresources.node.get, and then request child departments and teams through humanresources.node.children.
  5. Create a new department or team using the method humanresources.node.add. When creating, you can immediately pass a list of future participants, as well as create or link chats, channels, and collabs.
  6. Modify the properties of a department or team using the method humanresources.node.edit or move them to a new parent using the method humanresources.node.move.
  7. Use humanresources.node.count when you need to quickly find out the number of departments and teams without loading the full list.

Section Limitations

  • Access to view and modify departments and teams depends on the permissions of the current user.
  • Chats, channels, and collabs can only be created or linked during the creation of a department or team.

Connection with Other Objects

Users. When creating a department or team, the method humanresources.node.add accepts userIds with the identifiers of managers, deputies, and employees. User identifiers can be obtained using the method user.get. For departments, the parameter moveUsersToNode determines whether employees will be transferred to the new department or added as participants.

Chats and Channels. When creating a department or team, you can immediately create a separate chat or channel through createChat and createChannel, or link existing chats and channels through bindingChatIds and bindingChannelIds. Identifiers of existing chats and channels can be obtained using the method im.recent.list.

Collabs. When creating a department or team, you can create a new collab through createCollab or link existing collabs through bindingCollabIds, if collabs are available in the plan. Identifiers of collabs can be obtained using the method socialnetwork.api.workgroup.list.

Overview of Methods

Scope: humanresources

Who can perform the method: depends on the method

Method

Description

humanresources.node.add

Creates a department or team

humanresources.node.edit

Updates fields of a department or team

humanresources.node.get

Returns a department or team by identifier

humanresources.node.list

Returns a list of departments and teams

humanresources.node.search

Searches for departments and teams by name

humanresources.node.children

Returns child departments and teams

humanresources.node.count

Returns the number of departments and teams

humanresources.node.move

Moves a department or team to a new parent

humanresources.node.field.list

Returns a list of fields for a department or team

humanresources.node.field.get

Returns the description of a field for a department or team

Continue Learning