API

PROMT SPACE API для агентов

OpenAI-compatible gateway PROMT SPACE: один ключ, единый баланс, история запросов и списание по фактическому usage.

1. Создание ключа

Владелец workspace выпускает ключ в разделе API-доступ. Секрет показывается только один раз.

Тот же ключ можно создать через кабинетный API, если у вас уже есть web-сессия и CSRF token.

curl https://promt.space/api/api-keys \
    -X POST \
    -H "Content-Type: application/json" \
    -H "X-CSRF-Token: <csrf>" \
    -d '{"name":"Production agent"}'

2. Список моделей

curl https://promt.space/v1/models \
    -H "Authorization: Bearer ps_live_..."

Ответ совместим с OpenAI model list и дополнен данными PROMT SPACE: типом модели, модальностями, контекстом и ценами в рублях за 1M токенов, если они доступны.

3. Конкретная модель

curl "https://promt.space/v1/models/openai/gpt-4.1-mini" \
    -H "Authorization: Bearer ps_live_..."

4. Проверка ключа и баланса

curl https://promt.space/v1/me \
    -H "Authorization: Bearer ps_live_..."

Endpoint возвращает workspace, активный ключ, scopes и баланс: общий, hold, доступный остаток и расход за месяц.

5. Chat Completions

curl https://promt.space/v1/chat/completions \
    -H "Authorization: Bearer ps_live_..." \
    -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-4.1-mini",
    "messages": [
      {"role": "user", "content": "Составь план запуска продукта"}
    ],
    "temperature": 0.2,
    "max_tokens": 1200
  }'

6. OpenAI SDK

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.PROMT_SPACE_API_KEY,
  baseURL: "https://promt.space/v1",
});

const response = await client.chat.completions.create({
  model: "anthropic/claude-sonnet-4",
  messages: [{ role: "user", content: "Привет" }],
});

Биллинг

Перед запросом система ставит hold по прогнозу стоимости. После ответа модели списывается фактическая стоимость по usage. Если запрос не выполнен, hold возвращается автоматически.

Ограничения текущей версии

  • Поддерживается только non-streaming chat/completions.
  • Нужно указывать конкретную модель, автовыбор для платных API-запросов запрещен.
  • Embeddings, image, audio и streaming будут добавлены отдельными endpoint’ами.