Перейти к содержимому

REST API приложения и документация API

КраткоНа вкладке «Админ» раздел «API» превращает таблицы приложения в конечные точки REST, к которым могут обращаться другие программы: получать список записей или одну запись, создавать, обновлять и удалять записи. Вы выбираете таблицу, поля и кто может обращаться (кто угодно — для чтения или только с ключом API проекта), а затем включаете точку галочкой «Опубликовать конечную точку». Когда захотите поделиться, нажмите «Опубликовать документацию» — появится страница справочника API и файл OpenAPI для разработчиков.

Иногда данные приложения нужны другим программам: сайту партнёра, который показывает ваши товары, таблице, которая подтягивает новые заказы, мобильному приложению, сервису автоматизации вроде Zapier или n8n. Они общаются с приложением через API — набор веб-адресов (конечных точек), которые отвечают данными, а не страницами. REST API — самый распространённый вид API.

MonstarX создаёт его без кода. Вы выбираете, чем поделиться, — и через несколько секунд API уже работает, а у разработчиков есть страница справочника.

Откройте проект, нажмите Админ на верхней панели, а затем API на боковой панели раздела «Админ». Откроется страница API проекта: вверху — панель Справочник API, через которую публикуется документация; слева — ваши конечные точки с пометкой Работает или Черновик; под ними — Ключи API.

  1. В разделе АдминAPI нажмите Новая конечная точка (или + рядом с Конечные точки).

  2. В поле Коллекция выберите таблицу, с которой работает конечная точка, например Рецепты.

  3. В поле Операция выберите действие:

    ОперацияМетод и адресЧто делает
    СписокGET /recipesВозвращает записи постранично.
    ПолучитьGET /recipes/{id}Возвращает одну запись по её id.
    СоздатьPOST /recipesДобавляет запись.
    ОбновитьPATCH /recipes/{id}Меняет некоторые поля записи.
    УдалитьDELETE /recipes/{id}Удаляет запись.
  4. Заполните Название, Путь URL и, если хотите, Описание. Они появятся в документации API.

  5. В блоке Открытые поля отметьте ровно те поля, которые можно видеть или отправлять. Всё неотмеченное остаётся закрытым. Поля, похожие на конфиденциальные, — например, пароли и токены — исключаются всегда.

  6. В блоке Доступ выберите, кто может обращаться к точке (см. ниже).

  7. Отметьте Опубликовать конечную точку и нажмите Сохранить и опубликовать конечную точку. Опубликованная точка получает пометку Работает: она сразу отвечает на запросы. Если оставить галочку пустой, кнопка Сохранить конечную точку сохранит её с пометкой Черновик.

В списке у каждой конечной точки написано Работает или Черновик. Та же пометка видна под заголовком Изменить конечную точку, а пока вы не сохраните изменения, рядом будет Несохранённые изменения. Чтобы отключить точку, не удаляя её, снимите галочку Опубликовать конечную точку и сохраните; кнопка Удалить удаляет точку.

ДоступКто может обращатьсяДля каких операций
Публичное чтениеЛюбой, у кого есть адрес.Только Список и Получить
Ключ API проектаТолько те, кто передаёт один из ключей API вашего проекта.Для всех операций

Конечным точкам, которые меняют данные, ключ нужен всегда.

  1. В разделе АдминAPI нажмите Ключи API.

  2. Введите название, по которому будет понятно, где используется ключ, например «Сервер виджета рецептов», и нажмите Создать ключ.

  3. Сразу скопируйте ключ — он начинается с mxapi_, и показать его ещё раз нельзя. Сохраните его в надёжном месте, например в менеджере паролей или в секретах другого сервиса.

Один ключ открывает все защищённые ключом конечные точки проекта, поэтому выдавайте каждому сервису свой ключ. Чтобы отключить ключ, нажмите Отозвать — всё, что им пользовалось, сразу перестанет работать.

Ключ передаётся в заголовке Authorization: Authorization: Bearer mxapi_….

Откройте конечную точку и нажмите Тест. Заполните ID записи, Bearer-токен или Тело запроса JSON, если они нужны этой точке, и нажмите Отправить запрос. Вы увидите статус (200 означает, что всё сработало), время ответа и сам ответ. Для точки, которой нужен ключ, вставьте в поле Bearer-токен один из ключей из раздела Ключи API.

Тесты уходят на настоящую работающую конечную точку, поэтому:

  • Черновик пока нельзя проверить. На вкладке Тест будет написано Эта конечная точка — черновик; нажмите там Сохранить и опубликовать конечную точку, чтобы опубликовать и проверить её.
  • Сначала сохраните изменения. Если есть несохранённые изменения, вкладка Тест попросит сохранить их перед проверкой и покажет кнопку Сохранить конечную точку.

Тест операций Создать, Обновить или Удалить меняет ваши настоящие данные.

На вкладке Код есть готовая команда cURL для копирования и файл OpenAPI JSON, который можно импортировать в инструменты для API вроде Postman и Insomnia.

Как опубликовать документацию API и поделиться ею?

Заголовок раздела «Как опубликовать документацию API и поделиться ею?»

Документация API — это страница Справочник API для разработчиков: все работающие конечные точки, их поля, нужен ли ключ, поле Проверить и пример cURL. Публикация конечной точки не публикует документацию — когда ею делиться, решаете вы.

  1. Опубликуйте хотя бы одну конечную точку и сохраните все изменения. До этого панель Справочник API вверху раздела АдминAPI показывает Не опубликовано и подсказывает, чего не хватает.

  2. Нажмите Опубликовать документацию.

  3. Теперь на панели написано Опубликовано. Нажмите Копировать ссылку на документацию, чтобы поделиться адресом, или Открыть документацию API под блоком Ключи API, чтобы посмотреть страницу. Адрес выглядит так: https://monstarx.com/api-docs/<id вашего проекта>.

Страница начинается с названия и описания проекта, числа конечных точек, ID проекта и базового адреса. Прочитать её может любой, у кого есть ссылка, а поисковым системам рекомендовано её не индексировать. На ней показываются только работающие конечные точки и никогда — ключи. Ссылка OpenAPI JSON вверху ведёт к тому же описанию в виде файла.

Чтобы убрать документацию, нажмите Снять документацию с публикации: страница и файл OpenAPI перестанут открываться, а конечные точки продолжат отвечать. Если вы отключите все конечные точки, документация тоже будет снята с публикации, и вы опубликуете её снова, когда будете готовы.

Каждая конечная точка находится по адресу https://monstarx.com/api/rest/<id вашего проекта>, за которым следует её путь.

Окно терминала
curl 'https://monstarx.com/api/rest/<project id>/recipes?page=1&limit=25'
{
"data": [
{ "id": "41a6…", "title": "Street tacos al pastor", "country_code": "MX" }
],
"page": 1,
"limit": 25,
"hasMore": false
}

limit — от 1 до 100 записей на странице (25, если не указывать), а page — от 1 до 100. hasMore показывает, есть ли следующая страница.

Правила для того, что вы отправляете:

  • объект JSON с заголовком Content-Type: application/json, до 64 КБ;
  • только открытые поля, каждое — простое значение: текст (до 20 000 символов), число, true/false или null;
  • id нельзя задать или изменить, как и поля, которые в разделе «Админ» доступны только для чтения.

Если что-то не так, в ответе будет сообщение error и статус: 400 (запрос составлен неправильно), 401 (нужен действительный ключ API проекта), 403 (эта таблица или действие не разрешены в разделе «Админ»), 404 (нет такой конечной точки или записи), 409 (конфликт, например дубликат), 413 (ответ превысил бы 1 МБ — откройте меньше полей или уменьшите страницу).

Почему не нажимается «Опубликовать документацию»?

Для документации нужна хотя бы одна работающая конечная точка и отсутствие несохранённых изменений. Отметьте Опубликовать конечную точку у точки, нажмите Сохранить и опубликовать конечную точку, а затем Опубликовать документацию.

Нужно ли публиковать приложение, чтобы API заработал?

Нет. API читает и записывает базу данных проекта напрямую, поэтому работает сразу после публикации конечной точки. Он пользуется теми же данными, что предпросмотр и рабочее приложение, и не требует ни сборки, ни ИИ, ни кредитов.

Может ли сайт обращаться к моему API из браузера?

Да, к вашим конечным точкам может обращаться любой сайт. С веб-страниц вызывайте точки с доступом Публичное чтение, а запросы с ключом держите на сервере, чтобы ключ оставался секретным.

Я потерял ключ API. Можно увидеть его снова?

Нет, ключ показывается только один раз. Создайте новый ключ, переключите на него сервис, а затем отзовите старый кнопкой Отозвать.

Почему я не могу опубликовать конечную точку?

Для операций Создать, Обновить или Удалить сначала включите это действие для таблицы в разделе «Админ». Приложение, рабочая база которого находится в вашем собственном аккаунте Cloudflare, не может публиковать конечные точки из MonstarX, потому что здесь хранятся тренировочные данные предпросмотра.

Можно ли получать вебхуки при изменении данных?

Не через «Админ → API» — этот раздел только отвечает на запросы. Попросите MonstarX добавить вебхук в приложение, например: «когда оформляется заказ, отправляй его POST-запросом на этот адрес».