Типы статусов

Возвращает типы статусов — справочник значений status_id из записей графика: рабочий день, отпуск, больничный и другие. В ответе — и системные статусы, и кастомные статусы вашей организации.

Скоуп

Скоуп не требуется — это справочник без секретов, доступный любому валидному ключу организации, независимо от набора скоупов (см. Скоупы и права → Справочники без скоупа). Справочник нужен, чтобы интерпретировать записи графика, поэтому открыт без дополнительных условий.

Query-параметры

Параметр Обязателен Описание
limit нет Целое 1..200, по умолчанию 100.
cursor нет Курсор meta.next_cursor предыдущего ответа — для следующей страницы.

from/to, department_id и employee_id на этом ресурсе не поддержаны: передача любого из них → 400 validation_error (параметр отклоняется явно, а не игнорируется молча — см. Конвенции → Фильтры). Это справочник без временно́го измерения и без привязки к отделам.

Запрос

curl -s https://smengo.com/api/v1/status-types \
  -H "Authorization: Bearer smg_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

С ограничением размера страницы:

curl -s "https://smengo.com/api/v1/status-types?limit=50" \
  -H "Authorization: Bearer smg_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

Ответ

{
  "data": [
    {
      "id": "c2e4a6b8-1d3f-4a5c-8e7b-9f0a1b2c3d4e",
      "code": "work",
      "label": { "ru": "Работает", "uk": "Працює", "en": "Working" },
      "color": "#22c55e",
      "counts_as_present": true,
      "is_system": true,
      "start_time": "09:00:00",
      "end_time": "18:00:00"
    },
    {
      "id": "d4f6a8c0-2e5b-4b7d-9a1c-6e8f0b2d4a86",
      "code": "training",
      "label": { "ru": "Обучение", "uk": "Навчання", "en": "Training" },
      "color": "#818cf8",
      "counts_as_present": false,
      "is_system": false,
      "start_time": null,
      "end_time": null
    }
  ],
  "meta": { "next_cursor": null }
}

Поля ответа

Поле Тип Описание
id string (uuid) Уникальный идентификатор типа статуса; на него ссылается status_id в Записях графика.
code string Машинный код статуса. Системные коды: work, vacation, sick, dayoff, late; кастомные статусы имеют собственные коды.
label object Мультиязычное название по локалям, как есть: { "ru": …, "uk": …, "en": … }. Единственное поле-объект во всём v1 — все остальные поля API скалярные.
color string Цвет статуса в hex (#22c55e); null не бывает.
counts_as_present boolean Учитывается ли статус как присутствие: день с таким статусом считается отработанным (например, рабочий день — да, отпуск — нет).
is_system boolean true — системный статус, общий для всех организаций; false — кастомный статус вашей организации.
start_time string (HH:MM:SS) | null Опциональное дефолтное окно смены для статуса — начало, в таймзоне организации.
end_time string (HH:MM:SS) | null Конец дефолтного окна; у статусов без времени оба поля null.

Ответ содержит и системные статусы, и кастомные статусы вашей организации. Системные (is_system: true) общие для всех организаций; кастомные — только ваши: чужие кастомные статусы в ответ не попадают никогда.

Пагинация

Список отсортирован по sort_order, id — при этом само поле sort_order в data[] не отдаётся: сортировка по нему есть, а поля в ответе нет (в отличие от пресетов смен). Если статусов больше, чем limit, meta.next_cursor содержит курсор для следующей страницы; передайте его в cursor следующего запроса как есть:

curl -s "https://smengo.com/api/v1/status-types?limit=1&cursor=eyJrIjoxLCJpZCI6ImMyZTRhNmI4LTFkM2YtNGE1Yy04ZTdiLTlmMGExYjJjM2Q0ZSJ9" \
  -H "Authorization: Bearer smg_live_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"

meta.next_cursor равен null, когда статусов больше нет. Общие правила пагинации — в Конвенциях → Пагинация.

Что дальше

Была ли статья полезна?