Первый запрос
Создайте рабочее пространство, отправьте запрос демо-API и прочитайте ответ — за несколько минут.
Эта страница проведёт вас от пустого Echolot до отправленного запроса и прочитанного ответа. Она использует
демо-API по адресу https://demo.echolot.dev — ненастоящий магазин outdoor-снаряжения,
который отвечает без какой-либо настройки.
1. Создайте рабочее пространство
Рабочее пространство — это папка, в которой лежат ваши запросы, по одному файлу на запрос. Сначала создайте его.
В окне приветствия выберите Новое рабочее пространство… (или Файл › Новое рабочее пространство…, ⌥⌘N).
Назовите его, например Alpenglow.echolot, выберите, где его хранить, и нажмите Создать.
Рабочее пространство откроется в собственном окне. Оно пусто, поэтому на странице написано Рабочее пространство пусто.
2. Создайте запрос
Выберите Новый запрос на странице или нажмите ⌘N. В боковой панели появится запрос
Новый запрос с выделенным именем. Введите List products и нажмите Return.
Щёлкните адресное поле вверху страницы (в нём написано Введите URL, можно {{variables}}) и введите:
https://demo.echolot.dev/v1/products?category=tents&per_page=5Метод — GET, он вам и нужен. На вкладке Параметры теперь перечислены category и per_page; их можно
изменить там или в адресе.
Сохранять не нужно. Echolot записывает запрос в файл .req.toml в папке рабочего пространства через мгновение после
того, как вы перестали печатать, а имя рабочего пространства внизу боковой панели сообщает Всё сохранено.
Уже есть команда cURL?
Вставьте её в адресное поле. Echolot заполнит по ней метод, адрес, заголовки, тело и авторизацию, а всё, что не удалось использовать, перечислит под адресной строкой.
3. Отправьте его
Нажмите ⌘R или выберите Отправить. Отправляет и ⌘↩. Пока запрос выполняется, Отправить превращается в Отменить (⌘.).

4. Прочитайте ответ
Область ответа находится рядом с запросом (или под ним, если вы выбрали расположение «друг под другом»).
- Строка над ответом показывает статус (
200 OK), время и размер. Наведите на неё указатель, чтобы увидеть подробности: размеры, сколько длилась каждая фаза (DNS, Соединение, TLS, Ожидание, Получение), TLS-соединение и перенаправления. - Тело показывает тело ответа. Варианты в Вид над ним переключают способ чтения: Текст, JSON (с форматированием), JSON-дерево, а для другого содержимого — XML, Форма, MessagePack или Просмотр. Первый из них Echolot выбирает по типу содержимого. ⌘F ищет текст в теле.
- Заголовки перечисляют заголовки ответа. Демо-API передаёт общее число в
X-Total-Count, а следующие страницы — вLink. - Cookie перечисляет cookie, которые установил ответ.
- Исходный и Hex показывают байты в том виде, в каком они получены. Передача показывает весь обмен так, как он прошёл по сети: отправленное и полученное.
- Тесты показывают результаты проверок запроса, когда они появятся.
Каждый ответ также сохраняется в истории запроса (⌘Y), так что к нему можно вернуться и сравнить со следующим.
5. Добавьте проверку
Проверки выполняются после каждой отправки и сообщают, когда API перестаёт отвечать так, как должен.
- Откройте вкладку Тесты запроса.
- Выберите Создать из ответа…. Echolot предложит проверки по только что полученному ответу: статус, тип содержимого, значения в JSON.
- Отметьте нужные и нажмите Добавить N тестов (в кнопке указано число отмеченных проверок).
- Отправьте запрос ещё раз. На вкладке Тесты ответа каждая проверка отмечена как пройденная или непройденная.
Скрипты и тесты описывают все виды проверок.
Дальше
- Отправьте тело: создайте ещё один запрос, задайте метод POST, адрес
https://demo.echolot.dev/echo/anythingи введите какой-нибудь JSON на вкладке Тело. Демо вернёт то, что получило. - Скопируйте запрос как команду cURL через Запрос › Скопировать как cURL (⌥⌘C) или сгенерируйте для него код через Запрос › Сгенерировать код… (⌥⌘G).
- Вынесите адрес сервера в переменную и добавьте окружения: Окружения.
- Освойтесь в интерфейсе: Окно.
- Пройдите более подробное руководство: Ваше первое рабочее пространство.
Демо-API — общий
Он принимает 120 запросов в минуту с каждого адреса (10 в минуту для больших, медленных и потоковых эндпоинтов). При
превышении лимита он отвечает 429 Too Many Requests с заголовком Retry-After; подождите столько секунд и
отправьте запрос снова.
