
## Node communication tools

`GET /v1/humanresources/nodes/:id/communications`

Returns the communication tools linked to an organizational structure node: chats, channels, and collabs.

## Parameters

| Parameter | Type | Required | Description |
|----------|-----|:-----:|----------|
| `id` (path) | number | yes | Node identifier. List: `GET /v1/humanresources/nodes?type=DEPARTMENT` |

## Examples

### curl — personal key

```bash
curl -H "X-Api-Key: YOUR_API_KEY" \
  https://vibecode.bitrix24.com/v1/humanresources/nodes/23/communications
```

### curl — OAuth application

```bash
curl -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  https://vibecode.bitrix24.com/v1/humanresources/nodes/23/communications
```

### JavaScript — personal key

```javascript
const res = await fetch(
  'https://vibecode.bitrix24.com/v1/humanresources/nodes/23/communications',
  { headers: { 'X-Api-Key': 'YOUR_API_KEY' } }
)
const body = await res.json()
console.log(body.data.chats)
```

### JavaScript — OAuth application

```javascript
const res = await fetch(
  'https://vibecode.bitrix24.com/v1/humanresources/nodes/23/communications',
  {
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
    },
  }
)
const body = await res.json()
```

## Response fields

| Field | Type | Description |
|------|-----|----------|
| `success` | boolean | Always `true` on success |
| `data.chats` | array | Chats linked to the node |
| `data.channels` | array | Channels linked to the node (element structure matches `chats`) |
| `data.collabs` | array | Collabs linked to the node (element structure matches `chats`) |
| `data.chats[].id` | number | Communication tool identifier |
| `data.chats[].dialogId` | string | Dialog identifier of the tool |
| `data.chats[].title` | string | Title |
| `data.chats[].subtitle` | string | Subtitle |
| `data.chats[].avatar` | string | Image URL. Empty string if no image is set |
| `data.chats[].color` | string | Color in HEX format |
| `data.chats[].type` | string | Tool type: `CHAT`, `CHANNEL`, or `COLLAB` |
| `data.chats[].isExtranet` | boolean | Flag for a tool from the extranet |
| `data.chats[].originalNodeId` | number \| null | Node the link is inherited from. `null` if the link is set directly |
| `data.chats[].hasAccess` | boolean | Whether the current user has access to the tool |
| `data.chatsNoAccess` | number | Number of linked chats the current user has no access to |
| `data.channelsNoAccess` | number | Number of linked channels the current user has no access to |
| `data.collabsNoAccess` | number | Number of linked collabs the current user has no access to |

## Response example

```json
{
  "success": true,
  "data": {
    "chats": [
      {
        "id": 3645,
        "dialogId": "chat3645",
        "title": "Sales department",
        "subtitle": "Private chat",
        "avatar": "",
        "color": "#f76187",
        "type": "CHAT",
        "isExtranet": false,
        "originalNodeId": null,
        "hasAccess": true
      }
    ],
    "channels": [],
    "collabs": [],
    "chatsNoAccess": 0,
    "channelsNoAccess": 0,
    "collabsNoAccess": 0
  }
}
```

## Error response example

400 — invalid node identifier in the path:

```json
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "id must be a positive integer"
  }
}
```

## Errors

| HTTP | Code | Description |
|------|-----|----------|
| 400 | `INVALID_PARAMS` | The node identifier in the path is not a positive integer |
| 403 | `SCOPE_DENIED` | The key is missing the `humanresources` scope |
| 401 | `TOKEN_MISSING` | The API key has no Bitrix24 tokens configured |

Full list of common API errors — [Errors](/docs/errors).

## See also

- [Configure communication channels](/docs/humanresources/node-operations/communications-set)
- [Child nodes](/docs/humanresources/node-operations/children)
- [Node operations](/docs/humanresources/node-operations)
