Агенты и автоматизацияИнструкция
Подключить n8n к CheapTokens: учётные данные OpenAI
Укажите адрес CheapTokens в учётных данных OpenAI в n8n, пройдите проверку соединения и запустите LLM-цепочку на DeepSeek-V4-Flash.

Содержание
В n8n создайте учётные данные OpenAI, впишите в Base URL адрес https:/, в API Key — ключ CheapTokens, а в узле OpenAI Chat Model выберите id модели. Это вся замена: ни своего узла, ни сторонних пакетов. Готовые workflow остаются как есть — им просто назначают новые учётные данные.
Работает это потому, что API CheapTokens понимает формат OpenAI Chat Completions (и Anthropic Messages тоже), а узел OpenAI в n8n разницы не замечает. Если «базовый адрес» для вас новое слово, короткий разбор объяснит его за пару минут.
Что есть в учётных данных n8n#
В учётных данных OpenAI четыре вещи. По исходному коду credential в репозитории n8n (ветка master, проверено 1 ноября 2026) это API Key (обязателен, маскируется), Organization ID (необязательно), Base URL (по умолчанию https:/, поле переопределяет базовый адрес API) и переключатель Add Custom Header с именем и значением заголовка.
Есть нюанс: на странице документации n8n про эти учётные данные описаны только ключ и Organization ID. Поле Base URL видно в исходном коде, на него и опирается эта инструкция.
При сохранении n8n проверяет учётные данные запросом на {Base URL}/ с заголовком Authorization: Bearer <API Key>. Так что неверный адрес или ключ выясняется сразу, ещё до сборки workflow.

Настройка в четыре шага#
Шаг за шагом
Подключаем n8n к CheapTokens
Создайте учётные данные
В n8n откройте Credentials, создайте новые и выберите OpenAI. Ключ CheapTokens держите в менеджере паролей или переменной окружения, пока не вставите, и никогда не пишите его в текстовое поле workflow.
Заполните два поля
API Key: ваш ключ CheapTokens. Base URL: https:/. Organization ID оставьте пустым. Сохраните и дождитесь проверки соединения: она обращается к /models по этому адресу.
Добавьте узел модели
В workflow добавьте Basic LLM Chain и подключите к нему OpenAI Chat Model как модель. Выберите новые учётные данные. В качестве модели возьмите id из документации CheapTokens: deepseek-. Если в выпадающем списке его нет, переключите поле на ввод id вручную (по ID или выражением).
Оставьте Chat Completions
По умолчанию узел использует Chat Completions API. Переключатель Use Responses API держите выключенным. В параметрах узла задайте Maximum Number of Tokens, чтобы разросшийся ответ не съел бюджет.
Не знаете, какой id писать? Спросите у самого API: статья «List models with GET /v1/models» показывает точные строки. У разных сервисов одна и та же модель называется по-разному, поэтому берите id из CheapTokens, а не из чужой документации.
Сначала проверьте ключ вне n8n#
Если проверка учётных данных не прошла, надо понять: виноват n8n или ключ. Короткая проверка в терминале даёт ответ. Ключ лежит в переменной окружения, так что секрет не попадёт в историю команд.
Одна проверка в curl и в Python
curl
export CHEAPTOKENS_API_KEY="your-key-here"
curl https://api.cheaptokens.dev/v1/models \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY"Это тот же запрос, который n8n шлёт при проверке учётных данных. Если пришёл JSON со списком моделей, ключ и адрес верны.
Python
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"],
)
r = client.chat.completions.create(
model="deepseek-ai/DeepSeek-V4-Flash-0731",
messages=[{"role": "user", "content": "Reply with one word: ready"}],
max_tokens=20,
)
print(r.choices[0].message.content, r.usage)Это полноценный запрос к чату. r.usage показывает токены на входе и выходе для этого крошечного запроса; чтобы прикинуть размер workflow, подставьте в промпт типичное письмо и прочитайте usage ещё раз.
Первый workflow: сортируем входящие письма#
Допустим, в общий ящик приходит около тысячи писем в день. Каждое нужно пометить как billing, bug или other и добавить одну строку-резюме для того, кто возьмёт письмо в работу.
Собирается так: Gmail Trigger (или узел Webhook) передаёт письмо в Basic LLM Chain. Промпт в цепочке примерно такой: «Отнеси письмо к billing, bug или other и перескажи его одним предложением», а текст письма подставляется из предыдущего узла. Думает за цепочку узел OpenAI Chat Model с вашими учётными данными CheapTokens.

Задача короткая и однотипная: маленький вход, маленький ответ, тысячи одинаковых запусков. Именно здесь дешёвая модель со стабильной ценой окупается сильнее всего. Для такой работы в CheapTokens подойдёт DeepSeek-V4-Flash: одна цена в любое время суток, контекст 380K и до 32 768 токенов в ответе.
Сколько стоит запуск#
Допустим, на каждое письмо уходит промпт около 1 500 токенов (инструкция плюс письмо), а модель пишет в ответ около 300 токенов. Один запуск на DeepSeek-V4-Flash стоит $0.000053. А вот 1 000 писем в день по всем моделям рядом с OpenRouter, вход и выход вместе:
| Модель | Вход $/1M | Выход $/1M | За запрос | 1 000 запросов | OpenRouter, 1 000 запросов |
|---|---|---|---|---|---|
| GLM-5.3-Flash | $0.02 | $0.04 | $0.000042 | $0.042 | $0.0752 |
| DeepSeek-V4-Flash | $0.015 | $0.10 | $0.000053 | $0.0525 | $0.147 |
| MiniMax-M2.7 | $0.05 | $0.15 | $0.00012 | $0.12 | $1.44 |
1 500 входных и 300 выходных токенов на запрос. Цены за 1M токенов актуальны и меняются вместе с нашими тарифами; столбец OpenRouter показывает справочные цены для той же нагрузки.
Числа токенов здесь — допущение для примера. Замерьте свои: отправьте типичное письмо через проверку в Python, прочитайте usage и подставьте числа. Актуальные цены — на странице тарифов.
Чат-сценарий устроен иначе. С узлом памяти вся история уходит при каждом вызове, и вход растёт с каждым сообщением. Как быстро это набегает, показывает статья «Why a long AI chat costs more».
Если не работает#
Чаще всего виноват ключ, адрес или id модели. Статья «API 401 or 404: wrong key, base URL or model id» разбирает тексты каждой ошибки. А перед ней пройдитесь по списку:
Чек-лист
Прежде чем копать глубже
Хотите увидеть остальные настройки? В документации CheapTokens есть полный справочник API. Тот же приём работает и в других инструментах: Open WebUI и LangChain подключаются так же — один адрес, один ключ, один id модели.



