Примеры

Рецепты, сочетающие SDK с реалистичными сценариями — аналитика CRM, массовые рассылки, AI-ассистенты, установка по OAuth и не только. Каждый рецепт — отдельный файл, удобный для копирования.

В этом разделе собраны примеры использования @bitrix24/b24jssdk в форме задач. Большинство — это запускаемые TypeScript-файлы, которые одновременно служат скилами для агентов: тот же исходник лежит в skills/b24jssdk-recipes/examples/ и загружается AI-инструментами (Claude Code, Cursor, Copilot) как авторитетный контекст по SDK. Каждый рецепт проходит type-check в CI через pnpm run skills:typecheck.

Сборник рецептов

Отобранные точки входа — каждый рецепт содержит переменные окружения, набросок ожидаемого вывода и блок Ограничения.

Smoke-тест вебхука в CLI

Проверьте только что созданный входящий вебхук за 30 строк. Всегда начинайте отсюда.

Экспорт сделок в CSV

Стримит все сделки за период в CSV через actions.v2.fetchList.make. Память не растёт независимо от размера результата.

Массовое обновление сделок

Переносит тысячи сделок на новую стадию через BatchByChunkV2.make() с обработкой частичных ошибок.

Скелет frame-приложения

Минимально жизнеспособное Vue 3 iframe-приложение: рукопожатие, заголовок родителя, сохраняемые опции, открытие/закрытие слайдера.

Подписка на события Pull

События в реальном времени во frame-приложении через useB24Helper и Pull-клиент (WebSocket + long-polling).

Расширенный каталог

Сквозные TypeScript-скрипты — запускайте через tsx, предварительно задав B24_HOOK равным URL вашего входящего вебхука.

Аналитика CRM — воронка продаж

Стримит все сделки через actions.v2.fetchList.make, группирует по стадиям, печатает отчёт по воронке.

Массовые рассылки

Фильтрует контакты, персонализирует шаблон, отправляет IM-уведомления ответственным менеджерам.

Автоматизация задач при смене стадий

Опрашивает стадии сделок каждые 60 с. При отслеживаемом переходе создаёт задачу с дедлайном и приоритетом.

Синхронизация контактов с ERP / 1С

Двусторонняя синхронизация контактов между Bitrix24 и внешней ERP. Сопоставление по ИНН (основное) или email (запасное).

Диск — хранилища, папки, файлы

Список хранилищ и содержимого папок, создание подпапок, просмотр файлов.

Telegram-бот для новых сделок

Опрашивает новые сделки CRM каждые две минуты; уведомляет Telegram-чат HTML-карточкой.

Обработчик исходящих вебхуков

Express-сервер, который принимает исходящие события Bitrix24, подгружает детали через REST, маршрутизирует по имени события.

AI-ассистент — анализ сделки, создание задачи

Загружает сделку и её дела, спрашивает у GPT-4o лучшее следующее действие, создаёт задачу, привязанную к сделке.

Веб-поиск + LLM с записью в таймлайн

Двухшаговый RAG: запрос к любому провайдеру веб-поиска, прогон результата через ваш LLM, публикация ответа комментарием в таймлайн CRM.

Сборник рецептов по обработке ошибок

Четыре слоя ошибок (SdkError / AjaxError / сетевые / soft) и настройки hardErrorCodes / softErrorCodes / retryOnNetworkError.

Регистрация исходящих событий

CLI-инструмент — список, привязка и отвязка исходящих событий вебхуков Bitrix24 через event.get / event.bind / event.unbind.

Рукопожатие установки OAuth

Express-сервер, который обрабатывает ONAPPINSTALL / ONAPPUPDATE / ONAPPUNINSTALL, сохраняет токены по порталам, создаёт B24OAuth по требованию.

UI-витрины

UI-компоненты Bitrix24 в связке с SDK — эти примеры живут в репозитории b24sdk-examples.

Список сущностей с пагинацией

Рендерит постраничный список сущностей Bitrix24 через B24Card, B24Table, B24Pagination и действие callList.

Мастер установки приложения

Строит многошаговый экран установки, выполняющий REST-вызовы по scope и завершающийся анимацией конфетти.

Экспорт компаний на Node + Hook

Серверный скрипт, экспортирующий компании в CSV-файл через B24Hook, LoggerFactory и Text.toDateTime.

Репозиторий

Все запускаемые примеры лежат в двух местах:

  • skills/b24jssdk-recipes/examples/ — 12 рецептов расширенного каталога в виде TypeScript-скриптов, проходящих type-check в CI.
  • bitrix24/b24sdk-examples — парные UI-витрины (Nuxt, React) и исходные стартовые скрипты Node/Hook. Заметные папки:
    • js/02-nuxt-hook — быстрый старт Nuxt + B24Hook
    • js/03-nuxt-frame — Nuxt + B24Frame (хелпер, Pull-клиент, диалоги)
    • js/05-node-hook — чистый Node.js + скрипт B24Hook
    • js/04-react-frame — React + B24Frame

Как внести вклад

Не хватает рецепта? Откройте issue в bitrix24/b24jssdk. Pull request'ы по SDK-нативным рецептам идут в этот репозиторий (в skills/b24jssdk-recipes/examples/); pull request'ы по UI-витринам — в bitrix24/b24sdk-examples.