Отчасти, и этот нюанс важен. Каждое созданное приложение предоставляет полноценный REST API — по семейству маршрутов на каждый тип данных, — но он защищён сессионным cookie: ключа API, который позволил бы другой программе подключиться самостоятельно, пока нет. Зато без единой строки кода вам доступны экспорт каждого набора данных в JSON и CSV, импорт файлов для данных измерений и прямой доступ к базе, если вы размещаете приложение сами. А поскольку код принадлежит вам, добавление ключа API остаётся обычной работой.
Что приложение действительно предоставляет
Созданное приложение — не интерфейс поверх непрозрачной базы: оно построено как обычное веб-приложение, с REST API за своими экранами. Для каждого типа данных, описанного в вашем запросе, движок выпускает одно и то же семейство маршрутов: получить список и создать, затем прочитать, изменить и удалить конкретную запись. Кстати, удаление ничего не стирает окончательно — запись попадает в корзину, и существует маршрут восстановления, чтобы отменить действие.
Эти маршруты — не дополнительная опция: это ровно те, которыми пользуются сами экраны приложения. Значит, нет отдельно «настоящего» внутреннего API и отдельно урезанного публичного — он один и тот же, и он находится в коде, который вы забираете.
Ограничение, о котором стоит знать: сегодня нет ключа API
Как только приложение требует входа — а для управленческих данных это вариант по умолчанию, — его маршруты защищены: каждый вызов должен нести подписанный сессионный cookie, выданный при входе, а учётной записи «только чтение» сервер отказывает в любой записи, каким бы путём она ни шла.
У этой защиты есть прямое следствие, которое лучше знать заранее: сегодня не существует ни ключа API, ни токена, позволяющего другой программе аутентифицироваться самостоятельно, без браузера. Сторонний инструмент поэтому не может обращаться к приложению в режиме «машина — машина» как есть. Мы предпочитаем написать это прямо, а не позволять фразе «у приложения есть API» обещать больше, чем она значит.
Что работает без единой строки кода
Экран «Параметры» предлагает экспорт каждого набора данных в формате JSON или CSV. Это кратчайший путь к таблице, инструменту отчётности или бухгалтеру: данные выходят тогда, когда вы решите, в форматах, которые читают все.
В обратную сторону данные измерений — показания, треки, ряды, полученные с устройства, — получают маршрут и кнопку загрузки файла: CSV, а для треков GPX. Наконец, если вы размещаете приложение сами, его база PostgreSQL принадлежит вам: инструмент отчётности может читать её напрямую, минуя API.
Если вам нужна полноценная интеграция
Главное — ни одно из этих ограничений не является замком. Приложение представляет собой обычный проект на Next.js и Prisma, выгружаемый в ZIP или отправляемый в ваш репозиторий GitHub: добавить аутентификацию по ключу API к уже существующим маршрутам — хорошо размеченная работа для разработчика, на читаемом коде.
В этом и отличие от инструмента, интеграция которого зависит от коннектора, который поставщик предлагает или не предлагает. Здесь вопрос никогда не звучит «позволит ли платформа?», а лишь «кто это напишет?» — и в тот день, когда вы это сделаете, вам не нужно ни у кого спрашивать.