
Автоматизации в Пачке с помощью n8n
Что такое n8n
n8n — это платформа для автоматизации рабочих процессов с открытым исходным кодом. Ее можно либо разместить на собственном сервере, либо использовать веб-версию. Платформа позволяет создавать различные интеграции с сервисами без знаний программирования и написания кода, используя вместо этого визуальный редактор с узлами (nodes).

В настоящее время в n8n встроено более 400 готовых узлов для популярных зарубежных и российских сервисов. Существуют узлы двух типов:
- Узел триггера — это то, что запускает ваш рабочий процесс. То есть некое событие, например, сообщение от бота, нажатие кнопки, обновление статуса проекта и др.
- Узел действия — это то, что будет происходит после триггера. То есть сама логика вашего рабочего процесса, например, отправка сообщения в чат, создание задачи в другом приложении, добавление записи в БД и так далее.
n8n автоматически запускает каждое действие по триггеру, соблюдая указанный вами порядок.
Шаг 1. Установка n8n
Расширение Пачки доступно пока только в Beta. Это значит, что его нет в веб-версии n8n и для пользования нужно предварительно развернуть на собственном сервере коробочную версию n8n. Это можно сделать двумя способами:
- С помощью команды (требуется Node.js):
npx n8n
- С помощью Docker
docker volume create n8n_data
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-e GENERIC_TIMEZONE="<YOUR_TIMEZONE>" \
-e TZ="<YOUR_TIMEZONE>" \
-e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true \
-e N8N_RUNNERS_ENABLED=true \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n
Подробные инструкции есть в официальной документации n8n и на GitHub. Для корректной работы и безопасной передачи данных советуем проконсультироваться с вашими IT-специалистами.
Далее нужно настроить аккаунт владельца (Owner Account), указав почту, имя и пароль. Готово!

Шаг 2. Настройка расширения Пачки для n8n
Следующий шаг — установка расширения Пачки. Оно есть как на GitHub, так и на npmjs, поэтому вы сами можете легко ознакомиться с исходным кодом.
Есть 3 способа установки:
Первый: Зайти в Settings → Community nodes и нативно добавить n8n-nodes-pachca (рекомендуем)

Второй: Использовать команду npm i n8n-nodes-pachca в нужной директории
Третий: Идти по README-инструкции, которая доступна на GitHub
Шаг 3. Cоздание Credentials
Credentials — это данные для авторизации.
Нажмите Add Credential, найдите Pachca API в списке и заполните поля:
- Base URL:
https://api.pachca.com/api/shared/v1 - Access Token: Ваш токен доступа к API Pachca. Токен должен иметь необходимые права доступа для операций, которые вы планируете выполнять. В пачке есть три вида токенов:
- токен Владельца / Администратора → доступен в разделе «Автоматизации»
- токен Бота → доступен в настройках бота

Для удобства можно переименовать созданный Credential. Таких Credentials вы можете сделать неограниченное количество для совершения разных операций.
Шаг 4. Создание Workflow
Workflow — это ваш рабочий стол, тот самый визуальный редактор с узлами (nodes). Тут вы выстраиваете цепочки триггеров и действий для различных сценариев.

В библиотеке Pachca (Beta) находятся все наши методы API. Разберем принципы работы n8n на примере сообщения от лица бота. Триггер — нажатие кнопки Execute Workflow (но может быть и любое другое событие, например, получение вебхука), а действие — Send a message в Пачке, где следующие параметры:
- Credential = то, от чье-го лица будет отправлено сообщение (создали ранее)
- Entity ID = это ID чата
- Content = содержание сообщения
Главное, не забудьте добавить бота в чат Пачки :)

С помощью n8n можно реализовать в Пачке те же самые автоматизации, но в гораздо более лёгкой форме — достаточно заполнить значениями уже готовые блоки и выстроить нужную логику. Визуальный интерфейс позволяет видеть весь процесс целиком и мгновенно тестировать изменения. В платформу встроено более 400 готовых узлов для популярных сервисов, а дополнительные Community nodes можно установить прямо из интерфейса (если они опубликованы на npmjs.com, как Битрикс24). При необходимости можно отправлять HTTP request, например, для работы с любым открытым API, задавать условия if, добавлять кастомный JavaScript или Python код и многое другое.
Методы API в nodes Pachca (Beta)
Раздел с нашей API документацией: https://crm.pachca.com/dev/getting-started/overview/
nodes (узлы) в расширении Пачки для n8n совпадают с методами из документации и названы в соответствии с ними. Вот список доступных:
Действия с сообщениями
- Send a message — отправка сообщения в беседу или канал, личного сообщения пользователю или комментария в тред
- Get a message — получение информации о сообщении
- Get messages from the chat — получение списка сообщений бесед, каналов, тредов и личных сообщений
- Update a message — редактирование сообщения или комментария
- Delete a message — удаление сообщения
- Pin a message — закрепление сообщения в чате
- Unpin a message — открепление сообщения из чата
- Get message readers — получение актуального списка пользователей, прочитавших сообщение
- Unfurl message links — создание предпросмотров ссылок в сообщениях
Действия с тредами
- Create a thread — создание нового треда к сообщению
- Get a thread — получение информации о треде
Действия с реакциями
- Add a reaction — добавление реакции на сообщение
- Remove a reaction — удаление реакции на сообщение
- Get message reactions — получение актуального списка реакций на сообщение
Действия с чатом
- Get all chats — получение списка чатов по заданным параметрам
- Get a chat — получение информации о чате
- Create a chat — создание нового чата
- Update a chat — обновление чата
- Archive a chat — архивация чата
- Unarchive a chat — разархивация чата
- Get chat members — получение списка участников чата
- Add users to chat — добавление пользователей в состав участников беседы или канала
- Remove user from chat — исключение пользователя из состава участников беседы или канала
- Update user role in chat — редактирование роли пользователя или бота в беседе или канале
- Leave a chat — самостоятельный выход из беседы или канала
Действия с пользователями
- Get all users — получение списка сотрудников вашей компании
- Get a user — получение информации о сотруднике
- Create a user — создание нового сотрудника в вашей компании
- Update a user — редактирование сотрудника
- Delete a user — удаление сотрудника
Действиями с тегами пользователей
- Get all group tags — получение списка тегов сотрудников
- Get a group tag —получение информации о теге
- Create a group tag — создание нового тега
- Update a group tag — редактирование тега
- Delete a group tag — удаление тега
- Get users in group tag — получение списка сотрудников тега
- Add tags to chat — добавление тегов в состав участников беседы или канала
- Remove tag from chat — исключение тега из состава участников беседы или канала
Действия со статусом и профилем
- Get my profile — получение информации о своем профиле
- Get my status — получение информации о своем статусе
- Set my status — установка себе нового статуса
- Clear my status — удаление своего статуса
Действия с формами
- Create a form — открытие представления (формы)
- Process form submission — закрытие и отображение ошибок
- Get form templates
Другие действия
- Get custom properties — получение списка дополнительных полей участников и напоминаний в вашей компании
- Create a task — создание нового напоминания
- Update a bot — редактирование бота
- Upload a file — загрузка файлов
Обратите внимание, что некоторые действия возможны только с токеном Владельца/Администратора.