HTTP 401
Ключ отсутствует, отозван или передан без префикса Bearer.
Первый запрос к API Токенмоста: пополнение, API-ключ, выбор модели, cURL и проверка списания без лишних настроек.
Базовый адрес — https://tokenmost.ru/v1. Создайте ключ в личном кабинете, выберите модель в каталоге и отправьте первый запрос. Методы, которые ещё не доступны, отмечены отдельно.
Для первого ответа нужны положительный баланс, отдельный API-ключ и точный ID модели. Базовый адрес API — https://tokenmost.ru/v1. Начните с короткого непотокового запроса, проверьте результат и расход, а затем подключайте SDK, streaming и инструменты.
export TOKENMOST_API_KEY="sk-tm-..."
export TOKENMOST_MODEL="полный-id-из-каталога"curl "https://tokenmost.ru/v1/chat/completions" \
-H "Authorization: Bearer $TOKENMOST_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: first-request-0001" \
-d '{
"model": "'"$TOKENMOST_MODEL"'",
"messages": [{"role": "user", "content": "Ответь одним словом: работает"}],
"max_tokens": 16
}'Укажите TOKENMOST_BASE_URL=https://tokenmost.ru/v1, ключ проекта и точный ID модели из каталога. Пример отправляет запрос в публичный API и может списать средства с баланса по тарифу модели.
curl "$TOKENMOST_BASE_URL/chat/completions" \
-H "Authorization: Bearer $TOKENMOST_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: example-request-0001" \
-d '{
"model": "MODEL_ID_FROM_CATALOG",
"messages": [{"role": "user", "content": "Объясни API в двух предложениях."}],
"max_tokens": 128
}'Первый запрос является обычным тарифицируемым API-запросом. Ограничьте max_tokens и бюджет ключа до начала проверки.
Успешный ответ имеет HTTP 200 и содержит choices[0].message.content. Запрос и итоговое списание должны появиться в истории. HTTP 200 без ожидаемого поля ответа означает, что клиент разбирает не тот контракт.
Базовый адрес равен https://tokenmost.ru/v1. Ключ храните только на сервере. Для каждого логического POST создавайте новый Idempotency-Key, а сетевой повтор выполняйте с тем же ключом и неизменным телом.
Ключ отсутствует, отозван или передан без префикса Bearer.
Недостаточно доступного баланса или бюджета ключа. Пополните счёт либо измените лимит ключа.
Проверьте путь /v1/chat/completions и полный ID модели из каталога.
Idempotency-Key уже использован с другим телом. Для новой операции создайте новый ключ.
Превышен RPM ключа. Дождитесь следующего окна или измените лимит осознанно.