Настройка синхронизации статусов из 1С (Schedule Status Adapter)
UnSpot Schedule Status Adapter — внешняя обработка 1С, которая ежедневно переносит рабочие статусы сотрудников из 1С:ЗУП в расписание UnSpot. В статье — что подготовить до подключения, где взять адрес и токен, как установить обработку в 1С, что означает каждое поле формы настроек, как включить регулярный запуск и что делать при ошибках. Как устроен обмен, что именно уходит в UnSpot, где хранятся токен и кэш — в статье Синхронизация статусов сотрудников из 1С: как устроен обмен.
Требования
- 1С 8.3 (работа проверена на версии 8.3.27.1688) с Библиотекой стандартных подсистем (БСП, проверено на 3.1.9.89).
- Конфигурация «Зарплата и управление персоналом» 3.1 ПРОФ или КОРП (проверено на 3.1.27.51 ПРОФ и 3.1.28.84 КОРП) — для неё выбор данных встроен. Другие конфигурации подключаются в режиме «Нестандартная конфигурация» с собственным кодом выбора данных.
- Файл внешней обработки 1s-schedule-status-adapter.epf — предоставляет команда UnSpot.
- У сотрудников в 1С заполнены email, и пользователи с теми же email существуют в UnSpot. Если пользователей ещё нет, сначала настройте синхронизацию пользователей из 1С или другой способ синхронизации.
- Исходящий доступ с сервера 1С к домену вашего рабочего пространства UnSpot по TCP/443. Входящие правила не нужны — обработка только отправляет запросы.
Шаг 1. Подключение в UnSpot
Обработке нужны адрес API и токен доступа. Их выдаёт карточка «Импорт расписания сотрудника»:
- В UnSpot откройте Администрирование → Интеграции → Настройки API.
- В блоке «Предоставление информации» найдите карточку «Импорт расписания сотрудника» и нажмите «Подключить». При подключении можно задать срок действия токена: без ограничения или от 1 до 24 месяцев.
- Скопируйте URL и токен — они понадобятся в настройках обработки. Токен показывается при подключении: сохраните его в надёжном месте.

Подключать карточку может Владелец или Администратор интеграций. Обратите внимание: это отдельный токен External API — токен SCIM 2.0 от синхронизации пользователей здесь не подойдёт.
Шаг 2. Установка обработки в 1С
- Запустите 1С:Предприятие (не Конфигуратор).
- Откройте Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки. Если ссылки нет, включите флажок «Дополнительные отчеты и обработки» на той же странице.
- Нажмите «Добавить из файла…» и выберите 1s-schedule-status-adapter.epf.
- В списке появится обработка UnSpot Schedule Status Adapter с двумя командами: Settings (форма настроек) и Sync (запуск синхронизации).
Обработка регистрируется с отключённым безопасным режимом — для установки и запуска нужны соответствующие права в 1С (полные права или права на дополнительные обработки). Полный перечень прав, которые нужны обработке в информационной базе, — в разделе «Требования к сети и правам в 1С» статьи Синхронизация статусов сотрудников из 1С: как устроен обмен.
Шаг 3. Настройки обработки
Откройте команду UnSpot Schedule Status Adapter Settings — появится форма «Настройки синхронизации статусов сотрудников в UnSpot». Настройки сохраняются внутри информационной базы, поэтому вводятся один раз.
UnSpot API URL
Полный адрес эндпоинта из карточки «Импорт расписания сотрудника» — вида https://<домен>/api/external/v1/user-schedule. Обработка отправляет запросы ровно по этому адресу: ничего дописывать или сокращать не нужно. Схему https менять нельзя — именно она включает защищённое соединение; номер порта в адресе не указывается.
Токен доступа
Токен из той же карточки. Передаётся в каждом запросе в заголовке Authorization (Bearer). Поле обычное текстовое, значение видно на экране — вводите его так, чтобы монитор не просматривался со стороны. Если при подключении карточки задан срок действия, по его истечении запросы начнут отклоняться с ошибкой 401 «API token has expired» — переподключите карточку и обновите токен в настройках обработки.
Конфигурация 1С
Определяет, каким кодом обработка выбирает данные из информационной базы. Два значения:
- ЗУП 3.1 (ПРОФ/КОРП) — используется встроенный код выбора данных. Поле «Код выбора данных» показывает его в режиме «только просмотр»; при обновлении обработки встроенный код обновляется вместе с ней.
- Нестандартная конфигурация — поле «Код выбора данных» становится редактируемым: адаптируйте встроенный скрипт под вашу конфигурацию. Код сохраняется в настройках и выполняется вместо встроенного.
Код выбора данных для синхронизации
Скрипт на встроенном языке 1С. Его контракт: заполнить переменную СотрудникиДляUnSpot (соответствие «идентификатор физлица → структура с полями email и name») и переменную СтатусыСостоянийДляUnSpot (соответствие «дата → идентификатор физлица → код статуса»). Коды статусов возвращает функция обработки ПолучитьСоответствиеСтатусовUnSpot: РабочееВремя, Больничный, Отпуск, Командировка, Отсутствие, УдаленнаяРабота. Схематичный пример структуры данных:
// СтатусыСостоянийДляUnSpot:
// 2026-07-21 // дата
// b0d4ce5d-2757-4699-948c-cfa72ba94f86 // идентификатор физлица
// 1 // РабочееВремя
// 550e8400-e29b-41d4-a716-446655440000
// 3 // Отпуск
// 2026-07-22
// b0d4ce5d-2757-4699-948c-cfa72ba94f86
// 4 // Командировка1СВстроенный ЗУП-скрипт работает так: получает действующих сотрудников через стандартный метод КадровыйУчет.СотрудникиОрганизации с отбором по заполненному email (сотрудники без email не синхронизируются; совместители сводятся к одному месту работы — приоритет у основного, затем большая ставка, затем более поздняя дата приёма); статусы по датам строит через подсистему учёта рабочего времени ЗУП (УчетРабочегоВремениРасширенный) с учётом плановых графиков и документов отклонений; дополнительно учитывает регистр «Дистанционная работа сотрудников» — если день рабочий, но действует период дистанционной работы по договору, статус станет «Удалённая работа».
Собственный код выполняется в информационной базе без безопасного режима и с правами пользователя, под которым идёт синхронизация: относитесь к правке этого поля как к правке кода конфигурации.
Кнопки формы
- Сохранить — сохраняет настройки. Любое сохранение сбрасывает кэш отправленных статусов: следующий запуск пройдёт полностью. Что именно лежит в кэше, описано в разделе «Что кэшируется и где» статьи о том, как устроен обмен.
- Сохранить и проверить — сохраняет настройки и выполняет пробный прогон за текущий день: показывает, сколько выбрано сотрудников с email и статусов на сегодня, отправляет один статус в UnSpot и выводит ответ сервера. Кэш при проверке не используется.
- Сохранить и запустить — сохраняет настройки и запускает полную синхронизацию фоновым заданием. Ход выполнения пишется в Журнал регистрации.
Шаг 4. Проверка и регулярный запуск
Заполните настройки и нажмите «Сохранить и проверить». Успешная проверка выглядит так: «Настройки сохранены» → «Проверка синхронизации..» → «Выбрано сотрудников с email: N» → «Выбрано статусов сотрудников на текущую дату: N» → «Синхронизация статуса сотрудника … на дату …: …» → «OK» → «Синхронизация статуса успешна, проверка завершается» → «Проверка завершена».
Для регулярной синхронизации настройте регламентное задание: на странице обработки в строке фонового задания UnSpot Schedule Status Adapter Sync включите расписание (флажок в колонке с часами) либо запускайте задание вручную кнопкой «Выполнить». Достаточно одного запуска в сутки — например, ночью. Повторный запуск при уже идущей синхронизации не стартует: обработка сообщит «Синхронизация уже выполняется, подождите завершения».
Первый полный прогон может занять заметное время: отправляется по одному статусу в секунду за период ±45 дней по каждому сотруднику. Последующие запуски быстрые — уходит только то, что изменилось.
Возможные ошибки
| Сообщение | Причина | Что делать |
|---|---|---|
| 401 Invalid API token | Токен не подходит: опечатка или использован токен другой карточки (например, SCIM 2.0) | Скопируйте токен из карточки «Импорт расписания сотрудника» заново |
| 401 API token has expired | Истёк срок действия токена | Переподключите карточку и обновите токен в настройках обработки |
| 400 User not found | В UnSpot нет активного пользователя с таким email | Проверьте email сотрудника в 1С и наличие пользователя в UnSpot; настройте синхронизацию пользователей |
| 429 Too Many Requests | Превышен лимит 1 запрос/сек — например, запросы к API идут параллельно из другой системы с тем же токеном | Не используйте один токен в нескольких интеграциях одновременно |
| «Синхронизация уже выполняется» | Предыдущее фоновое задание ещё не завершилось | Дождитесь завершения — ход виден в Журнале регистрации |
| «Не найдено сотрудников с заполненным email» | У сотрудников в 1С не заполнены email | Заполните email в карточках сотрудников (Главное → Сотрудники → Личные данные) |
Подробный журнал каждого запуска — в 1С: Администрирование → Обслуживание → Журнал регистрации, источник вида UnSpotScheduleStatus#дата: там видны выборка, каждая отправка с ответом сервера, пропуски и итог. Полный состав записей журнала перечислен в разделе «Что пишется в журнал регистрации» статьи Синхронизация статусов сотрудников из 1С: как устроен обмен.