HTTP Request в n8n: как подключить любой сервис по API, даже если для него нет готового узла
· 3 мин чтения · Редакция Skill Unit
В n8n есть сотни готовых узлов для популярных сервисов. Но рано или поздно понадобится подключить что-то, для чего готового узла нет: российскую CRM, сервис рассылок, внутреннюю систему компании. Для этого есть универсальный узел HTTP Request — он умеет отправлять запросы к любому API.
Что нужно знать об API перед началом
API — это способ, которым программы обмениваются данными. У каждого сервиса есть документация API, где указано:
- адрес (URL), на который отправляется запрос;
- метод: чаще всего GET (получить данные) или POST (отправить данные);
- как авторизоваться: ключ, токен или логин;
- что передать в запросе и что вернётся в ответе.
Найдите в документации нужное действие, например «создать контакт», — там будут все эти данные.
Шаг 1. Метод и адрес
Добавьте узел HTTP Request и выберите метод. Чтобы получить список данных — GET, чтобы создать запись — POST. В поле URL вставьте адрес из документации, например https://api.example.ru/v1/contacts.
Шаг 2. Авторизация через credentials
Никогда не вставляйте ключ API прямо в URL или текст узла. В n8n для этого есть credentials — защищённое хранилище учётных данных. Выберите тип авторизации, который требует сервис (например, заголовок с токеном — Header Auth или Bearer Token), и сохраните ключ туда. Так ключ не попадёт в экспорт workflow и не окажется на скриншоте.
Шаг 3. Тело запроса
Для POST-запроса включите отправку тела (Send Body) и выберите формат JSON. Поля можно заполнять данными из предыдущих узлов с помощью выражений. Например, имя и телефон из заявки, пришедшей через webhook.
{
"name": "{{ $json.name }}",
"phone": "{{ $json.phone }}",
"source": "сайт"
}Шаг 4. Проверка ответа
Запустите узел вручную на тестовых данных. В ответе вы увидите, что вернул сервис: созданную запись, её идентификатор или текст ошибки. Ответ можно использовать в следующих узлах — например, сохранить идентификатор контакта в таблицу.
Частые ошибки и что они значат
- 401 или 403 — проблема с авторизацией: неверный ключ, не тот тип авторизации или нет прав.
- 404 — неверный адрес: опечатка в URL или устаревшая версия API.
- 400 или 422 — сервис не принял данные: не хватает обязательного поля или неверный формат.
- 429 — слишком много запросов: нужно делать паузы между ними.
- 500 и выше — ошибка на стороне сервиса: повторите позже.
Как сделать надёжно
- Включите повтор при ошибке (Retry On Fail) для временных сбоев.
- Настройте отдельную ветку или Error Workflow, который уведомит вас, если запрос не прошёл.
- При обработке большого числа записей добавляйте паузу, чтобы не упереться в лимиты API.
- Проверяйте обязательные поля до отправки, чтобы не получать ошибки 400.
Подробнее о надёжности и обработке ошибок — в статье о том, как сделать workflow устойчивым к сбоям.
Импорт запроса из cURL
Во многих документациях примеры даны в виде команды cURL. В узле HTTP Request есть импорт cURL: вставьте пример из документации, и n8n сам заполнит метод, адрес, заголовки и тело. Не забудьте затем перенести ключ в credentials.
Коротко о главном
- HTTP Request подключает любой сервис с API, даже без готового узла.
- Метод, адрес и формат данных берутся из документации API.
- Ключи храните только в credentials, не в тексте узла.
- Код ошибки в ответе подсказывает, что исправить.
- Повторы и уведомления об ошибках делают интеграцию надёжной.
В курсе «Автоматизация без кода на n8n» вы собираете рабочий конвейер заявок, в том числе с запросами к внешним сервисам, и учитесь защищать его от сбоев.
Хотите пройти путь на практике?
Курс «Автоматизация без кода на n8n»: короткие уроки, практические задания и проверка ответов. Первый урок бесплатно.
Смотреть курс