## ⚙️ n8n — ноукод для продвинутых
Следующий инструмент, с которым я работаю — это **[n8n](https://n8n.io/)**.
Если Make.com — это ноукод для большинства, то n8n — это уже **инструмент для тех, кто хочет больше контроля, гибкости и бесконечности в возможностях.**
---
### 🧠 Чем отличается от Make?
- n8n можно **поставить на свой сервер** и делать всё бесплатно.
- Поддерживает **1000+ интеграций**, в том числе нестандартные и кастомные API.
- Позволяет использовать **JavaScript, JSONata, Webhooks, Git, Docker и многое другое**.
---
### 💰 Платно или бесплатно?
| Вариант | Цена | Что нужно знать |
| -------------------------- | ------- | ------------------------------------------------------------------------------------------------------ |
| 🧠 Самостоятельный хостинг | $0 | Нужны знания: где взять сервер (есть **платно** и бесплатно), как установить n8n, как его обслуживать. |
| ☁️ Облачная версия от n8n | $24/мес | Просто зарегистрируйся и начинай. Есть пробный период — 14 дней |
---
## 🤖 Кейс: Почта + GPT + Telegram = умный автоответчик
>[!quote] Мы создадим **бота-ассистента**, который:
![[main.00_07_51_12.Still015.jpg]]
1. Получает письмо на Gmail
2. Генерирует ответ с помощью GPT
3. Присылает его тебе в Telegram
4. Ты подтверждаешь — и письмо уходит адресанту
---
### 🛠 Шаг 1: создаём workflow
1. Нажми **Create Workflow**
2. Первый модуль — **Gmail → On Message Received**
3. Авторизуй доступ к своему Google-аккаунту
>[!quote] Как это выглядит?
>![[main.00_08_02_00.Still016.jpg]]
---
### 🧠 Шаг 2: подключаем GPT
1. Добавляем модуль **OpenAI**
2. На аккаунте OpenAI должно быть минимум $1 (лучше $5)
3. Перейди в [https://platform.openai.com/account/api-keys](https://platform.openai.com/account/api-keys)
4. Нажми **Create new secret key**, введи название и скопируй ключ
5. Вставь его в n8n при подключении OpenAI
>[!quote] API-ключ:
>![[main.00_08_41_19.Still017.jpg]]
>![[main.00_08_45_16.Still018.jpg]]
---
#### Ассистент GPT
1. Не закрывая вкладку с API, переходим в Dashboard
2. Слева выбираем Assistants
3. Создаем нового ассистента
4. Даем ему название
5. И с помощью автозаполнения промпта пишем, что он будет делать
>[!example] Как это выглядит у меня:
>![[main.00_09_03_10.Still019.jpg]]
---
### 💬 Шаг 3: Telegram-бот для подтверждения
1. Создай бота через **@BotFather** → `/newbot`
2. Получи API-ключ
3. Добавь в n8n модуль: **Telegram → Send Message & Wait for Response**
4. Вставь токен
>[!example] Осталось найти ChatID
![[main.00_10_21_15.Still020.jpg]]
#### Где взять Chat ID?
1. Напиши любое сообщение своему боту
2. В браузере открой ссылку:
```
https://api.telegram.org/bot<TOKEN_ID>/getUpdates
```
- Удалить <Token_ID> — напиши API-ключ токена здесь.
3. В ответе найди `chat: { id: ... }` — вот это и есть Chat ID
>[!example] Где ChatID?
>![[main.00_10_39_07.Still021.jpg]]
---
### ✅ Сообщение для подтверждения
- Вставь в сообщение:
```
📩 Вот входящее письмо:
{{ $json["snippet"] }}
🤖 GPT сгенерировал такой ответ:
{{ $json["gpt_output"] }}
Отправить?`
```
- В настройках:
- Response Type → **Approve only**
- Кнопка → “Отправить”
>[!EXAMPLE] Как это выглядит?
>![[main.00_11_07_28.Still022.jpg]]
>![[цуцу.jpg]]
---
### 📤 Шаг 4: условие + отправка
1. Добавь модуль **IF**
2. Условие: если пользователь нажал "Отправить"
>[!quote] Что писать в модуль IF:
>![[main.00_11_22_00.Still024.jpg]]
Вставляем этот код в Conditions и включаем режим "Expression"
```
{{$json["data"]["approved"]}}
```
- Выбираем условие "Is true"
3. В ветке `true` добавь модуль: **Gmail → Reply to Email**
>[!example] От ветки "True" добавляем модуль Gmail:
>![[main.00_11_31_02.Still025.jpg]]
4. Используй `Message ID` из первого модуля, и текст из GPT
![[main.00_11_36_08.Still028.jpg]]
Готово. Вы создали своего почтового ассистента
----
> [!abstract] Идем дальше?
> - 🧠 [[nocode-replace-coding|Почему no-code никогда не заменит программистов?]]
> - [[Главная страница|⬅️ Назад на главную]]