n8n
Что такое n8n
n8n — платформа для автоматизации рабочих процессов с открытым исходным кодом. Можно развернуть на собственном сервере или использовать веб-версию. Платформа позволяет создавать интеграции с сервисами без написания кода, используя визуальный редактор с узлами (nodes).
В n8n встроено более 400 готовых узлов для популярных сервисов. Узлы бывают двух типов:
- Узел триггера — событие, запускающее рабочий процесс: новое сообщение, нажатие кнопки, обновление статуса и др.
- Узел действия — логика после триггера: отправка сообщения в чат, создание задачи, добавление записи в БД и т.д.
n8n автоматически выполняет каждое действие по триггеру в указанном порядке.
Визуальный редактор n8n
Настройка
Установка n8n
Два способа установки:
С помощью команды (требуется Node.js):
С помощью Docker:
Подробные инструкции — в официальной документации n8n и на GitHub.
После запуска настройте аккаунт владельца (Owner Account), указав почту, имя и пароль.
Настройка Owner Account
Установка расширения Пачки
Создание Credentials
Credentials — данные для авторизации.
Нажмите «Add Credential», найдите Pachca API в списке и заполните поля:
- Base URL:
https://api.pachca.com/api/shared/v1 - Access Token: Токен доступа к API. В Пачке доступны два типа токенов:
- Персональный токен — доступен в разделе Автоматизации > Интеграции > API
- Токен бота — доступен в настройках бота на вкладке API
Подробнее о токенах — в разделе Авторизация. Credentials можно создать несколько — для разных операций и токенов.
Настройка Pachca API Credentials
Создание Workflow
Workflow — визуальный редактор, в котором выстраиваются цепочки триггеров и действий.
Редактор workflow
Пример: отправка сообщения от лица бота. Триггер — нажатие кнопки «Execute Workflow», действие — Send a message в Пачке:
- Credential — от чьего лица будет отправлено сообщение
- Entity ID — ID чата
- Content — содержание сообщения
Не забудьте добавить бота в чат.
Пример отправки сообщения
В платформу встроено более 400 узлов для популярных сервисов, а дополнительные Community nodes можно установить из интерфейса. При необходимости доступны HTTP-запросы к любому API, условия, кастомный JavaScript- или Python-код.
Методы API в nodes Pachca (Beta)
Nodes (узлы) в расширении Пачки для n8n совпадают с методами API. Вот список доступных:
Действия с сообщениями
- Send a message — POSTНовое сообщение
- Get a message — GETИнформация о сообщении
- Get messages from the chat — GETСписок сообщений чата
- Update a message — PUTРедактирование сообщения
- Delete a message — DELETEУдаление сообщения
- Pin a message — POSTЗакрепление сообщения
- Unpin a message — DELETEОткрепление сообщения
- Get message readers — GETСписок прочитавших сообщение
- Unfurl message links — POSTUnfurl (разворачивание ссылок)
Действия с тредами
- Create a thread — POSTНовый тред
- Get a thread — GETИнформация о треде
Действия с реакциями
- Add a reaction — POSTНовая реакция
- Remove a reaction — DELETEУдаление реакции
- Get message reactions — GETСписок реакций на сообщение
Действия с чатом
- Get all chats — GETСписок чатов
- Get a chat — GETИнформация о чате
- Create a chat — POSTНовый чат
- Update a chat — PUTОбновление чата
- Archive a chat — PUTАрхивация чата
- Unarchive a chat — PUTРазархивация чата
- Get chat members — GETСписок участников чата
- Add users to chat — POSTДобавление пользователей
- Remove user from chat — DELETEИсключение пользователя
- Update user role in chat — PUTРедактирование роли
- Leave a chat — DELETEВыход из чата
Действия с пользователями
- Get all users — GETСписок сотрудников
- Get a user — GETИнформация о сотруднике
- Create a user — POSTНовый сотрудник
- Update a user — PUTРедактирование сотрудника
- Delete a user — DELETEУдаление сотрудника
Действия с тегами пользователей
- Get all group tags — GETСписок тегов сотрудников
- Get a group tag — GETИнформация о теге
- Create a group tag — POSTНовый тег
- Update a group tag — PUTРедактирование тега
- Delete a group tag — DELETEУдаление тега
- Get users in group tag — GETСписок сотрудников тега
- Add tags to chat — POSTДобавление тегов
- Remove tag from chat — DELETEИсключение тега
Действия со статусом и профилем
- Get my profile — GETИнформация о профиле
- Get my status — GETТекущий статус
- Set my status — PUTНовый статус
- Clear my status — DELETEУдаление статуса
Действия с формами
- Create a form — POSTОткрытие представления
- Process form submission — закрытие и отображение ошибок
- Get form templates
Другие действия
- Get custom properties — GETСписок дополнительных полей
- Create a task — POSTНовое напоминание
- Update a bot — PUTРедактирование бота
- Upload a file — POSTЗагрузка файла