API данных: ваш сервер читает и правит таблицы
Ключ, с которым сервер, n8n или Make находит строки, дописывает их и удаляет. Личные строки остаются личными.

Где: Вкладка «Данные» → «Связать с другими сервисами» → вкладка API. Приложение должно быть опубликовано.
Вебхук сообщает вашему сервису, что в приложении что-то случилось. API отвечает на обратный вопрос: как сервису что-то поменять в приложении. Например, заказ оформлен, сервер сгенерировал по нему сказку и должен вписать её в тот же заказ: текст, ссылку на файл и статус «Готово». Заказ при этом остаётся виден только тому, кто его оформил.
- Откройте вкладку API, назовите ключ (для чего он: «генератор сказок», «n8n») и выберите доступ. Сервису, который правит заказы, нужно «Чтение и запись»; выгрузке в отчёт хватит «Только чтение».
- Нажмите «Создать ключ» и сразу скопируйте его. Ключ показывается один раз: мы храним только его отпечаток. Потеряли — отзовите и заведите новый.
- Проверьте связь первым запросом — он вернёт таблицы приложения с ключами столбцов. Ключи столбцов нужны во всех остальных запросах.
curl https://apps.build-mini.app/api/v1/tables \
-H "Authorization: Bearer bma_…"| Запрос | Что делает |
|---|---|
GET /tables | Таблицы приложения, их столбцы и режим записи. |
GET /tables/{таблица}/rows | Строки таблицы, старые первыми. Отбор where[столбец]=значение, страницы limit и cursor, свежие updatedSince. |
GET /tables/{таблица}/rows/{id} | Одна строка. |
POST /tables/{таблица}/rows | Добавить строку. В личную таблицу — с указанием, чья она. |
PATCH /tables/{таблица}/rows/{id} | Дописать строку: присланные столбцы меняются, остальные остаются. null очищает столбец. |
DELETE /tables/{таблица}/rows/{id} | Удалить строку. |
Все адреса начинаются с https://apps.build-mini.app/api/v1, ключ передаётся заголовком Authorization: Bearer <ключ> (или X-API-Key: <ключ>, если ваш сервис умеет только так). Тело запроса — JSON, значения столбцов лежат в data.
Пример: заказ сказки. Посетитель оформил заказ, строка легла в личную таблицу requests. Сервер узнаёт о ней одним из двух способов: вебхуком «Добавлена строка» (в нём data.id — id строки и data.visitor — кто заказал) или запросом новых заказов по расписанию.
curl "https://apps.build-mini.app/api/v1/tables/requests/rows?where[status]=Новый" \
-H "Authorization: Bearer bma_…"Сказка готова — сервер дописывает тот же заказ. Присылать все столбцы не нужно, только те, что меняются:
curl -X PATCH https://apps.build-mini.app/api/v1/tables/requests/rows/<id> \
-H "Authorization: Bearer bma_…" \
-H "Content-Type: application/json" \
-d '{"data": {"generated_story": "Жил-был…", "result_url": "https://…", "status": "Готово"}}'В ответ приходит строка целиком: id, table, data, visitor (чья строка; у содержимого приложения — null), createdAt и updatedAt. У покупателя с открытым экраном заказ обновится сам, без перезагрузки.
n8n и Make. Узел HTTP Request: метод и адрес из таблицы выше, авторизация Header Auth с именем Authorization и значением Bearer bma_…, тело — JSON. Описание API для импорта лежит по адресу https://apps.build-mini.app/api/v1/openapi.json, его же понимают Postman и Insomnia.
| Код отказа | Что значит |
|---|---|
invalid_key | Ключа нет, он отозван или заголовок написан не так. |
read_only_key | Ключ только для чтения, а запрос пишет. |
unknown_columns | У таблицы нет таких столбцов — их список в поле columns. Обычно это опечатка в ключе столбца или столбец, который ещё не опубликован. |
visitor_required | Таблица личная, а не сказано, чья строка. |
table_not_found, row_not_found | Нет такой таблицы в опубликованном приложении или такой строки в этой таблице. |
too_many_requests | Больше 300 запросов в минуту одним ключом. Подождите столько секунд, сколько сказано в заголовке Retry-After. |
Рядом с каждым ключом во вкладке видно, когда им пользовались, сколько было запросов и чем кончился последний отказ. Это первое место, куда смотреть, если сценарий «ничего не делает».