Примеры запросов: сервер и браузер
В карточке каждого метода есть готовые примеры для curl, Node.js, Python, PHP и Go. Замените адрес сервиса, идентификаторы и значения полей своими. Примеры ответа сокращены: реальный ответ может содержать дополнительные поля.
Подготовка
В серверном окружении задайте BASE (адрес API без завершающего /api/v1) и API_KEY. Названия переменных в конкретном примере показаны рядом с кодом. Ключ создаётся в разделе «Токены», на вкладке «API-ключи». Для чтения достаточно ключа без разрешения на запись.
Храните ключ в переменных окружения или хранилище секретов вашего сервера. Не добавляйте его в репозиторий, URL, сообщения об ошибках и журналы запросов.
Node.js: сервер
Блоки «Node.js» предназначены для серверного процесса. Сохраните пример в файл .mjs и запустите node example.mjs. Используется встроенный fetch; подойдёт Node.js 22 или новее. process.env читает окружение сервера.
JavaScript: браузер
Node.js и JavaScript в браузере выполняются в разных средах. Постоянный API-ключ нельзя помещать в браузерный код, в том числе в переменные сборки Vite: посетитель сможет его прочитать.
Браузер обращается к вашему серверу, а ваш сервер проверяет вход пользователя, его права и выполняет запрос к API с ключом. Например, интерфейс вашего приложения может читать список сайтов так:
const response = await fetch('/integration/sites', {
credentials: 'same-origin',
headers: { Accept: 'application/json' },
});
if (!response.ok) throw new Error(`Ошибка ${response.status}`);
const sites = await response.json();
/integration/sites здесь является маршрутом вашего приложения. Его нужно реализовать за существующей авторизацией. В обработчике используйте серверный пример GET /api/v1/sites. Разрешайте только необходимые операции и проверяйте права пользователя; не делайте универсальную переадресацию произвольных адресов с вашим ключом.
curl
Запускается в терминале. Переменные BASE и API_KEY в примерах задаются перед запросом. Для JSON используется Content-Type: application/json, для загрузки файлов ответ сохраняется в файл. Не передавайте действующий ключ через публично доступные команды и логи.
Python
Сохраните код в .py и запустите Python 3. Используется стандартная библиотека urllib.request, дополнительные пакеты не нужны. При неуспешном HTTP-ответе библиотека выдаёт HTTPError; его тело содержит описание ошибки API.
PHP
Примеры PHP запускаются на вашем сервере с расширением cURL. Это код интеграции с API, а не код алгоритма сбора внутри системы. В алгоритмах используются методы $ctx, описанные в отдельном разделе SDK.
Go
Сохраните пример в main.go и запустите go run main.go. Используется стандартная библиотека Go. Перед обработкой ответа проверяйте HTTP-статус; в примерах тело ответа выводится, чтобы было видно описание ошибки.
Повторы и ошибки
При 429 учитывайте заголовок Retry-After. После сетевого обрыва при создании сущности сначала проверьте, была ли она создана: слепой повтор POST может создать дубликат. Ответы 401, 403, 404, 422 требуют проверки ключа, прав, идентификатора или параметров, а не бесконечных повторов.