Настройка интеграции Битрикс24 с YouTrack
Разработка ведёт задачи в YouTrack, коммерческий отдел — в Битрикс24. Клиент присылает баг-репорт, менеджер создаёт задачу в Б24, потом идёт в YouTrack и создаёт дублирующий issue. Когда разработчик закрывает issue, менеджер об этом не знает — клиент получает ответ «ещё работаем» на уже исправленную проблему. Два трекера без связки — это двойная работа и постоянное отставание информации.
Архитектура синхронизации
Интеграция работает через YouTrack REST API и Б24 REST API. YouTrack предоставляет полноценный API для работы с issues, проектами, agile-досками и временными записями. Middleware обеспечивает двунаправленный обмен.
Б24 (событие задачи) → Webhook → Middleware → YouTrack REST API → Issue
YouTrack (workflow/webhook) → Middleware → Б24 REST API → Задача
YouTrack поддерживает два механизма уведомления внешних систем: Webhooks (Settings → Webhooks) и Workflows (серверные скрипты на JavaScript). Webhooks проще, но workflows дают больше контроля — можно фильтровать события по полям, проектам и типам issues.
Маппинг полей
| Поле Б24 (tasks.task) | Поле YouTrack (issue) | Примечание |
|---|---|---|
| TITLE | summary | Прямое соответствие |
| DESCRIPTION | description | Б24 HTML → YouTrack Markdown |
| RESPONSIBLE_ID | Assignee | Через таблицу маппинга пользователей |
| CREATED_BY | Reporter | Аналогично |
| DEADLINE | Due Date | ISO 8601 в обеих системах |
| PRIORITY | Priority | Маппинг значений (см. ниже) |
| STATUS | State | Отдельная конфигурация |
| GROUP_ID | Project (shortName) | Таблица соответствий |
| UF_* (кастомные) | Custom fields | Индивидуально |
Конвертация описания: Б24 хранит HTML, YouTrack использует Markdown (с расширениями). Middleware конвертирует через промежуточное AST-представление.
Маппинг статусов
YouTrack использует state machine — каждый проект имеет свой набор состояний. Middleware поддерживает конфигурируемый маппинг:
| Статус Б24 | State YouTrack | Направление |
|---|---|---|
| Новая (2) | Open | ↔ |
| Выполняется (3) | In Progress | ↔ |
| Ждёт контроля (4) | To Verify | ↔ |
| Завершена (5) | Fixed / Done | ↔ |
| На паузе (6) | Wait | ↔ |
| — | Duplicate | YT → Б24 (комментарий) |
| — | Won't Fix | YT → Б24 (закрытие + комментарий) |
Состояния, которых нет в Б24, обрабатываются особым образом: middleware добавляет комментарий с пояснением и закрывает или приостанавливает задачу.
Синхронизация учёта времени
YouTrack и Б24 оба ведут учёт затраченного времени. Middleware объединяет записи:
-
Из YouTrack в Б24: При добавлении work item в YouTrack (событие
issue.updated, полеworkItems) middleware создаёт запись о затраченном времени в задаче Б24 черезtask.elapseditem.add. Указывается длительность, дата и комментарий. -
Из Б24 в YouTrack: При добавлении записи о времени в Б24 (событие
ONTASKELAPSEDTIMEADD) middleware создаёт work item в YouTrack черезPOST /api/issues/{id}/timeTracking/workItems.
Важно: middleware ведёт таблицу маппинга записей времени, чтобы избежать дублирования при двусторонней синхронизации. Каждая запись получает уникальный sync_id.
Интеграция agile-досок
YouTrack Agile Board отображает issues на kanban/scrum-доске. Б24 имеет свой Канбан. Middleware не синхронизирует визуальное расположение, но обеспечивает:
- Перемещение issue на доске YouTrack (смена State) → обновление статуса задачи в Б24 Канбан.
- Смена стадии на Канбан-доске Б24 → обновление State issue в YouTrack.
- Спринты YouTrack → группы задач или теги в Б24 (через кастомное поле
UF_SPRINT).
Предотвращение петель
Тот же принцип, что в других интеграциях: middleware маркирует источник обновления в кастомном поле обеих систем. При получении webhook проверяется маркер — если обновление инициировано middleware, обработка пропускается.
Аутентификация
- YouTrack: Permanent Token (Profile → Authentication → New Token). Для Cloud и Server — одинаковый механизм. Scope задаётся через права пользователя, от имени которого выдан токен.
-
Б24: OAuth 2.0 с scope
task,user. - Данные проходят только через middleware — прямого доступа между системами нет.
Что внедряем
- Middleware для двунаправленной синхронизации задач Б24 и issues YouTrack
- Конфигурируемый маппинг полей, статусов и приоритетов
- Синхронизацию учёта рабочего времени между системами
- Интеграцию agile-досок YouTrack с Канбан Б24
- Защиту от петель обновления
- Маппинг пользователей и проектов между системами







