API v1.0

FusionLLM API

Единый API для доступа к лучшим языковым моделям мира. GPT-5, Claude, Gemini и другие — через один интерфейс.

Возможности

Всё что нужно для работы с AI в одном месте

Множество моделей

GPT-5, Claude Sonnet, Claude Opus, Gemini Pro, Grok и другие модели через единый API

Streaming ответы

Получайте ответы в реальном времени через Server-Sent Events

Режим размышлений

Наблюдайте за процессом мышления модели с thinking mode

Загрузка файлов

Прикрепляйте изображения и документы к запросам

Диалоги

Ведите многошаговые диалоги с сохранением контекста

Безопасность

API ключи для авторизации и защиты ваших запросов

Авторизация

Все запросы требуют API ключ

API Ключ

Передавайте ваш API ключ в заголовке каждого запроса:

HTTP Header
X-API-Key: ваш-секретный-ключ

Альтернативный способ — через Bearer токен:

HTTP Header
Authorization: Bearer ваш-секретный-ключ

API Endpoints

Полный список доступных методов

POST /query

Отправить запрос и получить полный ответ. Ожидает завершения генерации.

Параметры

Параметр Тип Статус Описание
query string Обязательный Текст запроса к модели
model string Опционально ID модели. По умолчанию: sonar
thinking boolean Опционально Включить режим размышлений. По умолчанию: false
threadUrl string Обязательный URL диалога. Создайте диалог через /create-thread перед отправкой запроса
file file Опционально Файл для анализа (изображение, PDF, документ). Макс. 20MB

Пример запроса

cURL
curl -X POST https://fusionllm.nikitasolomon.ru/query \
  -H "Content-Type: application/json" \
  -H "X-API-Key: ваш-ключ" \
  -d '{
    "query": "Объясни теорию относительности",
    "threadUrl": "https://www.perplexity.ai/search/...",
    "model": "gpt-5",
    "thinking": true
  }'

Запрос с файлом

cURL
curl -X POST https://fusionllm.nikitasolomon.ru/query \
  -H "X-API-Key: ваш-ключ" \
  -F "query=Проанализируй этот документ" \
  -F "threadUrl=https://www.perplexity.ai/search/..." \
  -F "model=claude-sonnet" \
  -F "file=@/path/to/document.pdf"

Ответ

JSON
{
  "success": true,
  "query": "Объясни теорию относительности",
  "answer": "Теория относительности — это физическая теория...",
  "threadUrl": "https://..."
}
POST /query-stream

Streaming запрос — ответ приходит по частям в реальном времени через Server-Sent Events.

Параметры

Те же параметры, что и у /query

Типы событий SSE

Тип Описание
thinking Шаг размышления модели (при thinking: true)
chunk Часть ответа модели
done Генерация завершена, содержит полный ответ и threadUrl
error Произошла ошибка

Пример запроса

cURL
curl -N -X POST https://fusionllm.nikitasolomon.ru/query-stream \
  -H "Content-Type: application/json" \
  -H "X-API-Key: ваш-ключ" \
  -d '{
    "query": "Напиши рассказ о космосе",
    "threadUrl": "https://www.perplexity.ai/search/...",
    "model": "claude-sonnet",
    "thinking": true
  }'

Формат ответа

SSE
data: {"type":"thinking","text":"thinking(Анализирую запрос...)","done":false}

data: {"type":"chunk","text":"В далёкой галактике...","done":false}

data: {"type":"done","text":"Полный текст...","threadUrl":"https://...","done":true}

Пример на JavaScript

JavaScript
const response = await fetch('https://fusionllm.nikitasolomon.ru/query-stream', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': 'ваш-ключ'
  },
  body: JSON.stringify({
    query: 'Привет!',
    threadUrl: 'https://www.perplexity.ai/search/...',
    model: 'gpt-5'
  })
});

const reader = response.body.getReader();
const decoder = new TextDecoder();

while (true) {
  const { done, value } = await reader.read();
  if (done) break;
  
  const lines = decoder.decode(value).split('\n');
  for (const line of lines) {
    if (!line.startsWith('data: ')) continue;
    const event = JSON.parse(line.slice(6));
    console.log(event.type, event.text);
  }
}

Пример на Python

Python
import requests
import json

response = requests.post(
    'https://fusionllm.nikitasolomon.ru/query-stream',
    headers={'X-API-Key': 'ваш-ключ'},
    json={
        'query': 'Привет!',
        'threadUrl': 'https://www.perplexity.ai/search/...',
        'model': 'gpt-5'
    },
    stream=True
)

for line in response.iter_lines():
    if line and line.startswith(b'data: '):
        event = json.loads(line[6:])
        print(event['type'], event.get('text', ''))
POST /transcribe

Транскрипция аудио в текст. Возвращает только расшифрованный текст без дополнений.

Параметр Тип Статус Описание
file file Обязательно Аудиофайл для транскрипции (mp3, wav, m4a, ogg и др.)
prompt string Опционально Дополнительные указания для транскрипции
model string Опционально Модель для обработки (по умолчанию: claude-sonnet)
threadUrl string Опционально URL существующего диалога

Пример запроса

cURL
curl -X POST https://fusionllm.nikitasolomon.ru/transcribe \
  -H "X-API-Key: ваш-ключ" \
  -F "file=@/path/to/audio.mp3"

С дополнительным промптом

cURL
curl -X POST https://fusionllm.nikitasolomon.ru/transcribe \
  -H "X-API-Key: ваш-ключ" \
  -F "file=@/path/to/audio.mp3" \
  -F "prompt=Это техническое интервью на русском языке"

Ответ

JSON
{
  "success": true,
  "transcription": "Привет, это тестовая запись для проверки транскрипции.",
  "threadUrl": "https://..."
}
POST /voice-query

Голосовой запрос к AI. Отправьте аудиофайл с вопросом — получите ответ.

Параметр Тип Статус Описание
file file Обязательно Аудиофайл с голосовым запросом
prompt string Опционально Дополнительный контекст к запросу
model string Опционально Модель для обработки (по умолчанию: claude-sonnet)
thinking boolean Опционально Включить режим размышлений
threadUrl string Опционально URL существующего диалога

Пример запроса

cURL
curl -X POST https://fusionllm.nikitasolomon.ru/voice-query \
  -H "X-API-Key: ваш-ключ" \
  -F "file=@/path/to/question.mp3" \
  -F "model=gpt-5" \
  -F "thinking=true"

Ответ

JSON
{
  "success": true,
  "response": "Ответ AI на ваш голосовой вопрос...",
  "threadUrl": "https://..."
}
POST /voice-query-stream

Голосовой запрос со streaming ответом. Те же параметры, что и у /voice-query.

cURL
curl -N -X POST https://fusionllm.nikitasolomon.ru/voice-query-stream \
  -H "X-API-Key: ваш-ключ" \
  -F "file=@/path/to/question.mp3" \
  -F "model=claude-sonnet"
POST /create-thread

Создать новый диалог для многошаговых разговоров.

Параметр Тип Статус Описание
initialMessage string Опционально Начальное сообщение для диалога
cURL
curl -X POST https://fusionllm.nikitasolomon.ru/create-thread \
  -H "Content-Type: application/json" \
  -H "X-API-Key: ваш-ключ" \
  -d '{"initialMessage": "Привет!"}'
GET /models

Получить список всех доступных моделей.

cURL
curl https://fusionllm.nikitasolomon.ru/models
GET /health

Проверить статус API сервера.

cURL
curl https://fusionllm.nikitasolomon.ru/health

Доступные модели

Выбирайте лучшую модель для вашей задачи

Sonar
sonar
Стандарт
GPT-5
gpt-5
Thinking
Claude Sonnet
claude-sonnet
Thinking
Claude Opus
claude-opus
Thinking
Gemini Flash
gemini-flash
Thinking
Gemini Pro
gemini-pro
Thinking
Grok
grok
Thinking
Kimi
kimi
Стандарт