Для AI-агентов: markdown этой страницы — /docs-content/entities/calendar-resources/list.md индекс документации — /llms.txt

Список ресурсов календаря

GET /v1/calendar-resources

Возвращает ресурсы календаря портала — по ним находят ID ресурса для бронирований, переименования и удаления.

Параметры

Параметр Тип По умолч. Описание
limit (query) number 50 Количество записей, до 5000
offset (query) number 0 Сколько записей пропустить от начала списка
select (query) string — Поля в ответе через запятую: ?select=id,name. Список полей — GET /v1/calendar-resources/fields
withTotal (query) boolean — Запрос общего количества. Не действует: meta.total возвращается всегда, в том числе при false

Пагинация. Вайбкод получает список ресурсов целиком и возвращает окно [offset, offset + limit). Максимум — 5000 записей за вызов. meta.total — число всех ресурсов, meta.hasMore — есть ли ресурсы за пределами окна.

Примеры

curl — личный ключ

Terminal
curl "https://vibecode.bitrix24.tech/v1/calendar-resources?limit=3" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth-приложение

Terminal
curl "https://vibecode.bitrix24.tech/v1/calendar-resources?limit=3" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/calendar-resources?limit=3', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data, meta } = await res.json()
console.log(`Ресурсов на портале: ${meta.total}`)

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/calendar-resources?limit=3', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { success, data, meta } = await res.json()

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data array Массив ресурсов
data[].id number ID ресурса
data[].name string Название ресурса
data[].createdBy number ID сотрудника, создавшего ресурс. Список: GET /v1/users
meta.total number Число всех ресурсов портала
meta.hasMore boolean Есть ли ресурсы за пределами окна limit и offset
meta.warnings array Предупреждения о параметрах запроса — объекты { code, message, field }. Приходит, например, при limit=0 с кодом LIMIT_ZERO_IGNORED и при неизвестном поле в select с кодом UNKNOWN_SELECT_FIELD

Пример ответа

JSON
{
  "success": true,
  "data": [
    {
      "id": 7,
      "name": "Зал музея",
      "createdBy": 1
    },
    {
      "id": 49,
      "name": "ресурс 1",
      "createdBy": 835
    },
    {
      "id": 51,
      "name": "ресурс 2",
      "createdBy": 835
    }
  ],
  "meta": {
    "total": 9,
    "hasMore": true
  }
}

Пример ответа при ошибке

400 — передан фильтр:

JSON
{
  "success": false,
  "error": {
    "code": "UNSUPPORTED_FILTER",
    "message": "calendar-resources list does not support filter[]; B24 method \"calendar.resource.list\" takes no list parameters at all. Filter keys received: name. Filter it on your side."
  }
}

Ошибки

HTTP Код Описание
400 UNSUPPORTED_FILTER Передан filter. Список не фильтруется — отберите ресурсы на своей стороне
400 INVALID_SORT_FIELD Передан order или sort. Список не сортируется
403 SCOPE_DENIED API-ключ не имеет скоупа calendar
403 BITRIX_ACCESS_DENIED Битрикс24 отказал владельцу ключа в доступе к ресурсам календаря
401 TOKEN_MISSING API-ключ не имеет настроенных токенов
401 MISSING_API_KEY Не передан заголовок X-Api-Key
429 RATE_LIMITED Превышен лимит запросов
502 BITRIX_UNAVAILABLE Битрикс24 недоступен или вернул ответ неверной формы
503 BITRIX_TIMEOUT Битрикс24 не ответил вовремя

Полный список общих ошибок API — Ошибки.

Известные особенности

Ресурс по ID — только из списка. Отдельного чтения одного ресурса нет: GET /v1/calendar-resources/:id отвечает 404 ROUTE_NOT_FOUND. Нужный ресурс берите из этого списка по id или name.

id приходит при любом select. Неизвестное имя в select не отклоняет запрос — в ответе остаётся id каждого ресурса.

Смотрите также