# Схемы и работа с конструктором

#### 1. Схемы: основа вашей логики

Схемы - это сердце вашего проекта в nana800. Они представляют собой визуальные цепочки блоков, которые определяют логику вашего бекенда. Каждый блок выполняет определенное действие, а порядок блоков в цепочке определяет порядок выполнения.

**1.1 Создание схемы**

1. Перейдите в ваш проект: Нажмите на название своего проекта в главном меню.
2. Создайте новую схему: Нажмите кнопку "Создать схему" в панели инструментов.
3. В настройках внутри схемы вы можете сменить название и описание.&#x20;

**1.2 Работа со схемами**

* Переключение между схемами: Выберите нужную схему из списка схем вашего проекта.
* Редактирование схемы: Нажмите на название схемы внутри нужного проекта, чтобы открыть ее для редактирования.
* Удаление схемы: Нажмите на кнопку "Удалить" в настройках внутри схемы, чтобы удалить ее из проекта.

{% hint style="info" %}
Удаление схемы приведет к безвозвратной потере данных всех созданных цепочек блоков. Другие члены команды также потеряют данные схемы. Если требуется отключить схему от тарификации - рекомендуется просто деактивировать ее в настройках внутри схемы. Для этого используйте переключатель "active".
{% endhint %}

#### 2. Блоки: строительные кирпичики вашей схемы

Блоки - это отдельные элементы вашей схемы, которые выполняют конкретные действия. Они бывают двух типов:

**2.1 Триггеры**

Триггеры запускают цепочку блоков. Они реагируют на различные события, такие как:

* Webhook: Запускается при получении запроса от внешнего API.
* Button: Запускается вручную при нажатии кнопки.
* Timer: Запускается в определенное время.
* Interval: Запускается регулярно с заданным интервалом.

**2.2 Действия**

Действия выполняют различные задачи, такие как:

* Отправка письма на почту: Отправляет письмо по заданным параметрам.
* Отправка SMS: Отправляет SMS-сообщение.
* Запись и чтение данных в БД: Взаимодействует с базой данных.
* Ответ на Webhook: Отправляет ответ на полученный Webhook.
* Кастомный скрипт: Выполняет JavaScript код.
* Кастомный запрос: Отправляет HTTP-запрос.
* И многое другое...

<figure><img src="https://2365701060-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5j27dVA9H781kr1KsrbT%2Fuploads%2FJA1MtuwfBFAmnu0MD1VB%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202024-09-13%20%D0%B2%2007.53.51.png?alt=media&#x26;token=3a1ef572-f193-4cec-9d36-41072a003bff" alt=""><figcaption><p>Создание блока</p></figcaption></figure>

**2.3 Добавление блоков**

1. Перейдите в режим редактирования схемы: Достаточно просто открыть ее чтобы начать редактировать.&#x20;
2. Нажмите "+" в правой верхней части экрана. Выберите тип блока: В панели инструментов выберите тип блока, который вы хотите добавить: "Триггер" или "Действие".
3. Выберите конкретный блок: В появившемся списке блоков выберите нужный тип блока.
4. Настройте блок: В настройках блока выберите необходимые параметры для его работы. Для удобства можете просто два раза кликнуть на блок, чтобы начать редактировать.
5. Соедините блоки: Перетащите соединительную линию из выхода одного блока на вход следующего. Готово, схема работает.
6. При использовании вебхуков - можно создать OpenAPI документацию запросов. Для этого нажмите кнопку "API" слева сверху.&#x20;

<figure><img src="https://2365701060-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5j27dVA9H781kr1KsrbT%2Fuploads%2F8bXRyN8iLmrI3MevyCz5%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202024-09-13%20%D0%B2%2007.53.37.png?alt=media&#x26;token=410b2111-0324-453c-81fc-71225b34980b" alt=""><figcaption></figcaption></figure>

**2.4 Настройка блоков**

В каждом блоке вы можете указать следующие параметры:

* Имя: Название блока для удобства идентификации.
* Описание: Краткое описание блока.
* Параметры: Конкретные настройки для работы блока.

**2.5 Динамические переменные**

Вы можете использовать динамические переменные (выражения) в параметрах блоков. Эти переменные получают значения из предыдущих блоков в цепочке.

Пример: Вы можете выполнить запрос к API, сохранить полученные данные в переменную и использовать эту переменную для отправки письма с полученной информацией.

#### 3. Логи и история выполнения

* Просмотр логов: В панели "Логи" отображаются записи о выполнении всех блоков в схеме. В логах вы можете найти информацию о статусе выполнения, ошибках, полученных данных и других полезных сведениях.
* Просмотр истории выполнения: В панели "История" отображаются записи о каждом запуске схемы. Вы можете просмотреть историю выполнения конкретного блока или всей схемы.

#### 4. Удаление схемы

1. Перейдите настройки схемы (кнопка шестеренки внутри схемы).
2. Нажмите на кнопку "Удалить": Подтвердите удаление схемы.

#### 5. Дополнительные возможности

* Генерация Open API документации: Создайте документацию со списком API-точек для вашей схемы.
* Шаблоны: Используйте готовые шаблоны для быстрого создания схем с типовой логикой (авторизация, оповещения о погоде, обработка данных через нейросеть и т.д.).

<figure><img src="https://2365701060-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F5j27dVA9H781kr1KsrbT%2Fuploads%2F1nRIWTpc3BCgWg7NKRat%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202024-09-13%20%D0%B2%2007.58.07.png?alt=media&#x26;token=8da672c8-9bb4-4f6b-bac0-2a00f6dc6589" alt=""><figcaption><p>Генерация Open API документации</p></figcaption></figure>

{% hint style="info" %}
nana800 **- ваш простой и эффективный инструмент для создания бизнес логики!**
{% endhint %}
