Как отправлять запросы

Разбор запроса по частям на примерах.

Обзор интерфейса

Все примеры показаны с авторизованным Swagger

В Swagger основной функциональной единицей является HTTP-запрос, который также называют конечной точкой, ручкой, маршрутом.

В NocoDB запросы группируются по таблицам.

HTTP-запрос

Чтобы поработать с запросом, нужно его развернуть. Для этого достаточно нажать на него:

Описание запроса

Каждый запрос имеет описание того, какой функционал он предоставляет.

Оно находится в самом начале:

Try it out

Чтобы начать тестировать запрос, нужно нажать кнопку “Try it out”.

Убедитесь, что “замок закрыт”, - это значит, что вы авторизованы. В противном случае, вам следует авторизоваться в Swagger.

После нажатия на “Try it out”:

  • станут доступными поля ввода параметров и/или тела запроса.

  • появится кнопка “Execute”, нажатие которой означает выполнение запроса с введенными параметрами.

Параметры запроса

Параметры запроса всегда передаются в URL в самом конце после “?” и разделяются “&”, например:

...tables/m6uv6qopcq4layy/records**?limit=25&shuffle=0&offset=0**

Каждый отдельный параметр имеет название:

И описание:

Параметры всегда являются строкой, которую вы можете указать при тестировании в соответствующее поле:

Иногда параметр может быть выбран из ограниченного списка вариантов в Swagger (но в запросе параметр указывается так же, как и другие):

Шаблон запроса Curl

Можно увидеть только после нажатия “Execute”

Этот шаблон удобно копировать, чтобы использовать в других инструментах разработчиков и тестировщиков ( Curl, Postman ), но для связки с своём инструменте и NocoDB он не обязателен.

При этом его удобно использовать в связке с n8n (<и сюда надо ссылку на доку n8n про импорт Curl>)

Шаблон URL запроса

Можно увидеть только после нажатия “Execute”

Удобное поле, которое позволяет копировать сформированный при тестировании запрос.

Лайфхак с urlencoded

Обратите внимание, что при запросе в примере передается параметр:

where=%D0%BB%D1%8F%D0%BB%D1%8F%D0%BB%D1%8F

Эти непонятные символы не что иное, как “ляляля”.

На самом деле, не обязательно отправлять запрос в таком формате в блоке “Отправить HTTP-запрос”.

Некоторые инструменты преобразуют URL в urlencoded-формат сами — проверьте это в своём.

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

Server response

Можно увидеть только после нажатия “Execute”

Показывает всю информацию, полученную из ответа от сервера (API).

Code - код статуса ответа от сервера.

Response body - тело ответа.

В NocoDB API при любых типах запросов возвращает JSON.

Responses

В этом разделе изображаются примеры ответов от сервера с различными статусами.

Стоит отметить, что количество примеров не исчерпывающее, обычно ограничивающееся 200 и 400, но эти примеры все равно могут пригодиться для:

  • решения сбоев и проблем
  • понимания, какой будет ожидаемый ответ от сервера, перед тем, как начать его тестировать.

Схемы данных

В самом низу Swagger есть раздел Schemas. Он может быть полезен для понимания, какие поля таблицы (столбцы) какого типа данных.

Для примера, поле Id, обязательное при запросах PATCH, PUT, DELETE, а также GET-запросе конкретной строки из таблицы, имеет тип “integer”, что значит, что это именно целое число, а не строка, дробное число или другой тип.