API ManyНовые модели: Qwen 3.8 Max, Claude Haiku 5.5, Claude Opus 5.5, Claude Sonnet 5.5

Документация API

API Many открывает все модели через один базовый URL и один ключ. Текстовые эндпоинты следуют форматам OpenAI и Anthropic, поэтому официальные SDK работают без изменений; изображения, видео и музыка выполняются как асинхронные задачи.

Базовый URL https://apimany.com/v1

Быстрый старт

  1. Войдите и создайте ключ в разделе API-ключи.
  2. Пополните баланс от $10 в разделе Баланс.
  3. Отправьте первый запрос:
curl https://apimany.com/v1/chat/completions \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "claude-sonnet-5-5", "messages": [{"role": "user", "content": "Hello"}]}'

Аутентификация

Передавайте ключ в заголовке Authorization как Bearer-токен. Ключи секретны: вызывайте API с сервера, а не из браузера или мобильного приложения.

Authorization: Bearer sk_apimany_xxxxxxxxxxxxxxxx

# Anthropic-style clients may send the key as:
x-api-key: sk_apimany_xxxxxxxxxxxxxxxx

SDK

Используйте официальный SDK OpenAI (Python, Node.js, Go, Java, .NET) с base_url https://apimany.com/v1 или официальный SDK Anthropic с base_url https://apimany.com. Для медиа подойдёт любой HTTP-клиент.

Оплата

Каждый запрос резервирует максимальную стоимость при старте и списывается по завершении:

  • Текст: оплачиваются входные, кэшированные и выходные токены, о которых сообщает модель, по ценам за миллион с её страницы.
  • Изображения: оплата за штуку по выбранному разрешению или качеству; модели с оплатой по токенам — по фактическому расходу.
  • Видео: оплата за секунду по выбранному разрешению (или за клип у моделей с фиксированной длиной).
  • Неудачные, отклонённые и просроченные запросы не оплачиваются — резерв возвращается полностью.

Передавайте заголовок Idempotency-Key (1–200 символов), чтобы безопасно повторять запросы: повторный ключ вернёт исходную запись вместо нового запуска.

Chat completions POST/v1/chat/completions

Чат в формате OpenAI для всех языковых моделей, включая Claude, Gemini, DeepSeek, Grok, Qwen и Kimi. Стриминг, инструменты, JSON-режим и изображения — как в OpenAI. В стриминге расход приходит в последнем фрагменте.

curl https://apimany.com/v1/chat/completions \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-v4.1-flash",
    "stream": true,
    "messages": [
      {"role": "system", "content": "You are concise."},
      {"role": "user", "content": "Summarize HTTP/3 in two sentences."}
    ]
  }'

Anthropic Messages POST/v1/messages

Модели Claude также принимают нативный Anthropic Messages API со стримингом, инструментами, расширенным мышлением и кэшированием промптов. Заголовки anthropic-version и anthropic-beta передаются.

import anthropic

client = anthropic.Anthropic(base_url="https://apimany.com", api_key="YOUR_API_KEY")
message = client.messages.create(
    model="claude-opus-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Write a haiku about APIs."}],
)
print(message.content[0].text)

Responses POST/v1/responses

OpenAI Responses API для поддерживающих её моделей.

curl https://apimany.com/v1/responses \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-6.1-sol", "input": "Explain recursion to a child."}'

Эмбеддинги POST/v1/embeddings

curl https://apimany.com/v1/embeddings \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "text-embedding-3-small", "input": ["first text", "second text"]}'

Изображения POST/v1/images/generations

Генерация и редактирование изображений. Поля каждой модели (размер, разрешение, качество, референсы) описаны на её странице — передавайте их как указано. Вызов сразу возвращает задачу:

curl https://apimany.com/v1/images/generations \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2",
    "prompt": "A watercolor fox in a snowy forest",
    "size": "16:9",
    "resolution": "2k",
    "image_urls": ["https://example.com/style-reference.png"]
  }'
{
  "id": "2c7f9a8e-0d1b-4b5e-9a5d-6f0c1e2d3a4b",
  "object": "generation.task",
  "model": "seedance-2.5",
  "status": "pending",
  "reserved_usd": 2.16,
  "task_id": "2c7f9a8e-0d1b-4b5e-9a5d-6f0c1e2d3a4b"
}

Видео POST/v1/videos/generations

Текст → видео, изображение → видео, референсы, монтаж и продление — в зависимости от модели. Посекундные модели резервируют запрошенную длительность и списывают по готовому клипу.

curl https://apimany.com/v1/videos/generations \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "Slow dolly-in on a neon alley after rain",
    "resolution": "720p",
    "duration": 8,
    "size": "16:9",
    "callback_url": "https://your-app.com/webhooks/apimany"
  }'

Музыка POST/v1/music/generations

curl https://apimany.com/v1/music/generations \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "suno", "custom": false, "version": "v6", "prompt": "Late-night lo-fi piano with soft rain"}'

Задачи и опрос GET/v1/tasks/{id}

Опрашивайте каждые 3–10 секунд, пока статус не станет completed или failed. Статусы: pending, processing, completed, failed. У готовых задач есть подписанные ссылки, действующие 30 дней, — скачайте нужное.

curl https://apimany.com/v1/tasks/TASK_ID -H "Authorization: Bearer $APIMANY_API_KEY"

Вебхуки

Добавьте callback_url (публичный HTTPS) к любому медиазапросу — мы отправим готовую задачу POST-запросом с повторами до шести раз. Проверяйте X-Apimany-Signature секретом вебхуков со страницы API-ключей.

import crypto from 'node:crypto'

// Express-style handler; keep the raw body for the signature check.
export function verify(rawBody, headers, secret) {
  const timestamp = headers['x-apimany-timestamp']
  const expected = crypto.createHmac('sha256', secret.replace(/^whsec_/, ''))
    .update(`${timestamp}.${rawBody}`).digest('hex')
  return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(headers['x-apimany-signature']))
}

// Payload: { "event": "task.completed" | "task.failed", "data": { ...task, "record": { ... } } }

Транскрипция POST/v1/audio/transcriptions

Распознавание речи в формате OpenAI с загрузкой multipart (до 25 МБ).

curl https://apimany.com/v1/audio/transcriptions \
  -H "Authorization: Bearer $APIMANY_API_KEY" \
  -F model=gpt-4o-transcribe \
  -F [email protected] \
  -F response_format=json

Модели GET/v1/models

Публичный список всех моделей с типом, эндпоинтом и ценами; фильтр ?kind=chat|image|video|audio|embedding.

# Every model with its pricing (no key needed)
curl https://apimany.com/v1/models

# Only video models
curl "https://apimany.com/v1/models?kind=video"

# One model with its parameters
curl https://apimany.com/v1/models/seedance-2.5

Записи GET/v1/records

У каждого вызова — текстового, медиа или аудио — есть запись со статусом, расходом, стоимостью и результатами. Фильтры: model, kind, status, api_key_id, since.

curl "https://apimany.com/v1/records?limit=20&kind=video&status=completed" \
  -H "Authorization: Bearer $APIMANY_API_KEY"

curl https://apimany.com/v1/records/RECORD_ID -H "Authorization: Bearer $APIMANY_API_KEY"

Баланс GET/v1/account/balance

curl https://apimany.com/v1/account/balance -H "Authorization: Bearer $APIMANY_API_KEY"
# { "object": "balance", "currency": "usd", "balance_usd": 42.17, "debt_usd": 0 }

Ошибки

Ошибки возвращаются в формате OpenAI, поэтому исключения SDK работают как обычно.

{
  "error": {
    "message": "Your balance is too low for this request. Top up and try again.",
    "type": "insufficient_quota",
    "param": null,
    "code": "insufficient_balance"
  }
}
HTTPcodeЗначение
400invalid_requestПараметр отсутствует или недопустим для этой модели. Ничего не списано.
401invalid_api_keyКлюч отсутствует, неверен или отозван.
402insufficient_balanceБаланса недостаточно для резерва этого запроса.
404model_not_foundТакой модели нет. Список моделей — GET /v1/models.
409idempotency_replayЭтот Idempotency-Key уже использован — запросите прежнюю запись.
413request_too_largeТело запроса превышает лимит. Передавайте медиа ссылками.
429rate_limitedСлишком много запросов в минуту для этого ключа. Повторите с паузой.
502generation_failedВсе каналы этой модели недоступны. Ничего не списано — повторите чуть позже.
503model_unavailableМодель временно недоступна.

Лимиты

  • Тело запроса: до 25 МБ для текста и 40 МБ для медиа. Крупные файлы передавайте HTTPS-ссылками.
  • Загрузки в песочнице: изображения до 10 МБ, видео до 100 МБ, аудио до 50 МБ.
  • Лимит по умолчанию — 120 запросов в минуту на аккаунт. Для более высоких лимитов напишите нам.
  • Сгенерированные файлы хранятся 30 дней. Незавершённые задачи проверяются и возвращаются.
  • Возможности и лимиты моделей определяет их разработчик.