Перейти к содержимому
Главная

n8n

n8n может напрямую вызывать OdiRouter через узел HTTP Request. Этот способ работает даже если встроенный OpenAI-узел в вашей версии n8n не предоставляет собственный Base URL.

ТребованиеЗначение
n8nОблачный или self-hosted workflow
УзелHTTP Request
МетодPOST
URLhttps://www.odirouter.ai/v1/chat/completions
API KeyAPI key OdiRouter
  1. Откройте учетные данные n8n.
  2. Создайте учетные данные на основе заголовков, если версия поддерживает переиспользуемые headers.
  3. Добавьте заголовок:
Authorization: Bearer YOUR_API_KEY

Если учетные данные не используются, добавьте заголовок прямо в узел HTTP Request.

ПолеЗначение
МетодPOST
URLhttps://www.odirouter.ai/v1/chat/completions
Send HeadersEnabled
Header AuthorizationBearer YOUR_API_KEY
Header Content-Typeapplication/json
Send BodyJSON
{
"model": "gpt-5.5",
"messages": [
{
"role": "user",
"content": "Summarize the previous workflow item in one sentence."
}
]
}

Узел HTTP Request возвращает полный JSON. Текст ассистента находится по пути:

choices[0].message.content

В следующих узлах n8n используйте выражение:

{{$json["choices"][0]["message"]["content"]}}

Если следующим узлам нужен только текст, добавьте после HTTP Request узел Set/Edit Fields и создайте поле:

ПолеЗначение
model_output{{$json["choices"][0]["message"]["content"]}}

После этого Email, Slack, Webhook Response, база данных или IF-узлы могут читать model_output напрямую.

  1. Вызовите POST https://www.odirouter.ai/model/v1/queue/{endpoint}.
  2. Сохраните status_url и response_url.
  3. Опросите status_url, пока status не станет COMPLETED.
  4. Получите response_url.

Рекомендуемая схема узлов:

ШагУзел n8nКлючевые поля
Создать задачуHTTP Requestrequest_id, status_url, response_url
Сохранить URLSet/Edit Fieldsstatus_url, response_url
ПодождатьWaitИнтервал выбирается по времени работы модели
Проверить статусHTTP RequestURL: {{$json["status_url"]}}
ВетвлениеIFПроверить, что status равен COMPLETED
Получить результатHTTP RequestURL: {{$json["response_url"]}}

Если статус не COMPLETED, верните ветку IF к Wait и продолжайте опрос. Финальный результат обычно содержит URL файлов или текстовые поля; через Set/Edit Fields приведите нужные поля к именам вроде result_url, result_text или бизнес-специфичному названию.

СимптомИсправление
Ответ 401Проверьте заголовок Authorization
400 JSON errorУбедитесь, что узел HTTP Request отправляет JSON, а не form data
Model not foundИспользуйте модель из GET https://www.odirouter.ai/v1/models
Workflow завершается по timeoutДля долгих задач image, video, audio или 3D используйте паттерн multimodal queue