← GhostGPT

GhostGPT API

OpenAI-совместимый HTTP API для чата и completion. Веб-интерфейс: ghostgpt.io

OpenAI-compatible HTTP API for chat and completions. Web UI: ghostgpt.io

Главная ссылка для интеграции (Base URL): Main integration link (Base URL): https://api.ghostgpt.io/v1

С чего начать

Getting started

Дайте пользователям одну ссылку — эту страницу:

Share one link with your users — this page:

https://api.ghostgpt.io/

В настройках клиента укажите:

In your client settings use:

ПолеЗначение
Base URL / API URLhttps://api.ghostgpt.io/v1
Modelghostgpt
API KeyAuthorization: Bearer YOUR_KEY
FieldValue
Base URL / API URLhttps://api.ghostgpt.io/v1
Modelghostgpt
API KeyAuthorization: Bearer YOUR_KEY

JSON-манифест: /api.json

Machine-readable manifest: /api.json

Важно: https://api.ghostgpt.io/v1 — это Base URL для клиентов, не страница в браузере. Откройте / (документация) или проверьте API: /v1/models.

Note: https://api.ghostgpt.io/v1 is the client Base URL, not a browsable page. Use / for docs or try /v1/models.

Авторизация

Authentication

api.ghostgpt.io — обязателен заголовок Authorization: Bearer <api_key>.

api.ghostgpt.io requires Authorization: Bearer <api_key>.

Веб-чат на ghostgpt.io: cookie gg_sess после POST /api/session/bootstrap (или тот же Bearer).

Web chat on ghostgpt.io: gg_sess cookie after POST /api/session/bootstrap, or Bearer key.

curl https://api.ghostgpt.io/v1/models \
  -H "Authorization: Bearer YOUR_KEY"

Политика запросов

Request policy

Модели

Models

Список моделей:

List models:

GET https://api.ghostgpt.io/v1/models

Основная модель:

Default model:

ghostgpt

Мультимодальность — текст и изображения в messages.

Multimodal — text and images in messages are supported.

Эндпоинты

Endpoints

МетодПутьНазначение
GET/v1/modelsСписок моделей
POST/v1/chat/completionsЧат (рекомендуется)
POST/v1/completionsLegacy completion
GET/healthПроверка сервера
MethodPathDescription
GET/v1/modelsList models
POST/v1/chat/completionsChat (recommended)
POST/v1/completionsLegacy completion
GET/healthHealth check

Chat Completions

Основной способ — OpenAI Chat API.

Main method — same as OpenAI Chat API.

curl

curl https://api.ghostgpt.io/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "ghostgpt",
    "messages": [
      {"role": "user", "content": "Hello! What is GhostGPT API?"}
    ]
  }'

Python (openai)

pip install openai

from openai import OpenAI

client = OpenAI(
    base_url="https://api.ghostgpt.io/v1",
    api_key="YOUR_KEY",
)

resp = client.chat.completions.create(
    model="ghostgpt",
    messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)

JavaScript (fetch)

const r = await fetch("https://api.ghostgpt.io/v1/chat/completions", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_KEY",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    model: "ghostgpt",
    messages: [{ role: "user", content: "Hello" }],
  }),
});
const data = await r.json();
console.log(data.choices[0].message.content);

Стриминг

Streaming

Добавьте "stream": true — ответ чанками (SSE), как в OpenAI.

Set "stream": true for chunked SSE responses, OpenAI-style.

curl https://api.ghostgpt.io/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "ghostgpt",
    "stream": true,
    "messages": [{"role": "user", "content": "Write a short poem"}]
  }'

Изображения (vision)

Images (vision)

Картинка в messages в формате OpenAI (base64 или URL):

Pass an image in messages using OpenAI format (base64 or URL):

{
  "model": "ghostgpt",
  "messages": [{
    "role": "user",
    "content": [
      {"type": "text", "text": "What is in this image?"},
      {"type": "image_url", "image_url": {"url": "data:image/jpeg;base64,..."}}
    ]
  }]
}

Публичные ссылки и веб-данные (ghostgpt.io)

Share links & web data (ghostgpt.io)

Эти ручки обслуживает сервис ghostgpt-tools на основном домене. Они не входят в /v1 OpenAI API.

These routes are served by ghostgpt-tools on the main site. They are not part of the OpenAI /v1 API.

Базовый URL: https://ghostgpt.io · Просмотр диалога: https://ghostgpt.io/share/{id}

Base URL: https://ghostgpt.io · View shared chat: https://ghostgpt.io/share/{id}

МетодПутьНазначение
POST/api/shareСоздать публичную ссылку на диалог
GET/api/share/{id}JSON снимок диалога
POST/api/fetch-urlСкачать и извлечь текст страницы
POST/api/web-researchПодбор источников по запросу (курсы, погода)
POST/api/session/bootstrapCookie gg_sess для веб-чата
POST/api/pdf/extractТекст из PDF (multipart, rate limit)
POST/api/transcribeРаспознавание аудио (multipart)
MethodPathDescription
POST/api/shareCreate a public share link
GET/api/share/{id}JSON snapshot of shared chat
POST/api/fetch-urlFetch URL and extract text
POST/api/web-researchPick sources for a query (FX, weather)
POST/api/session/bootstrapgg_sess cookie for web chat
POST/api/pdf/extractExtract text from PDF (multipart, rate limited)
POST/api/transcribeTranscribe audio (multipart)

POST /api/share

POST /api/share

Тело — массив блоков диалога (как в UI). Максимум ~2 MB.

Body — array of conversation blocks (same shape as the UI). Max ~2 MB.

curl -X POST https://ghostgpt.io/api/share \
  -H "Content-Type: application/json" \
  -d '[{
    "conv": {"id": "example", "name": "My chat"},
    "messages": [
      {"role": "user", "content": "Hello", "timestamp": 1},
      {"role": "assistant", "content": "Hi!", "timestamp": 2}
    ]
  }]'

Ответ: {"id":"…","url":"https://ghostgpt.io/share/…"}

Response: {"id":"…","url":"https://ghostgpt.io/share/…"}

POST /api/fetch-url

POST /api/fetch-url

curl -X POST https://ghostgpt.io/api/fetch-url \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com"}'

POST /api/web-research

POST /api/web-research

Для пар с рублем — ЦБ РФ и Банки.ру; для USD/TRY и др. — Frankfurter; погода — Яндекс.

RUB pairs use CBR + banki.ru; international FX uses Frankfurter; weather uses Yandex.

curl -X POST https://ghostgpt.io/api/web-research \
  -H "Content-Type: application/json" \
  -d '{"query": "курс доллара к рублю"}'
В веб-UI: «Поделиться», «Источники», EN/RU, встроенный просмотр PDF/DOCX/XLSX, центрированные модалки — только на ghostgpt.io, не через api.ghostgpt.io/v1.
Web UI: Share, Sources, EN/RU, built-in PDF/DOCX/XLSX preview, centered modals — only on ghostgpt.io, not via api.ghostgpt.io/v1.

Просмотр документов (веб-UI)

Document preview (web UI)

Клик по вложению в чате открывает предпросмотр в браузере:

Click a chat attachment to preview in the browser:

Статика: /gg-doc-viewer.js, /vendor/*.js

Assets: /gg-doc-viewer.js, /vendor/*.js

SDK и клиенты

SDKs & clients

Любой клиент с Custom OpenAI Base URL:

Any client with Custom OpenAI Base URL support:

Веб-чат: ghostgpt.io

Web chat: ghostgpt.io

Ошибки

Errors

КодЗначение
401Нет API key / сессии
400Неверный JSON или параметры
404Неверный путь (нужен /v1/...)
429Rate limit (nginx)
502/503Сервер перегружен или модель грузится
504Таймаут — уменьшите контекст
CodeMeaning
401Missing API key / session
400Invalid JSON or parameters
404Wrong path (use /v1/...)
429Rate limit (nginx)
502/503Server busy or model loading
504Timeout — reduce context size

Лимиты

Limits & fair use

При злоупотреблении доступ могут ограничить (API key / rate limit).
Abuse may lead to API keys or rate limits.