Перейти к содержанию

Документация API и подключение IDE — Dikaya

Проверено

Начните с текстового запроса, затем подключите редактор. Здесь — рабочие форматы конфигураций, ограничения браузерного чата и порядок расчёта запросов, включая неизвестный исход.

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

Создайте аккаунт по логину и паролю без email: пароль 8–128 символов, вводится дважды. В разделе «API и баланс» находится персональный ключ. Новым подходящим аккаунтам может быть выдано до 3 запросов seller-pro-2: текстовый Chat Completions, до 8192 выходных токенов вместе с рассуждением, 6000 байт контекста, 10 RPM и один запрос одновременно. Прежние квоты сохраняются; повторная регистрация не даёт новое демо.

Создать аккаунт · API и баланс

Укажите Base URL с одним /v1 и передавайте ключ в Authorization: Bearer dk_…. Примеры ниже используют переменную окружения, не настоящий ключ. Отключённые повторы SDK предотвращают незаметный новый платный запрос при ошибке связи. Проверяйте статус и расход до ручного повтора. Демо не разрешает агентные инструменты; после пополнения действуют разрешения ключа.

cURL

curl https://dikaya.cc/v1/chat/completions \
  -H "Authorization: Bearer $DIKAYA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "seller-pro-2",
  "max_tokens": 8192,
  "messages": [
    {
      "role": "user",
      "content": "Предложи три проверки для небольшого API."
    }
  ]
}'

Python · OpenAI SDK

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://dikaya.cc/v1",
    api_key=os.environ["DIKAYA_API_KEY"],
    max_retries=0,
)
response = client.chat.completions.create(
    model="seller-pro-2",
    max_tokens=8192,
    messages=[{"role": "user", "content": "Предложи три проверки для небольшого API."}],
)
print(response.choices[0].message.content)
print(response.usage)

JavaScript / TypeScript · OpenAI SDK

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://dikaya.cc/v1",
  apiKey: process.env.DIKAYA_API_KEY,
  maxRetries: 0,
});
const response = await client.chat.completions.create({
  model: "seller-pro-2",
  max_tokens: 8192,
  messages: [{ role: "user", content: "Предложи три проверки для небольшого API." }],
});
console.log(response.choices[0].message.content);
console.log(response.usage);

Браузер: файлы, поиск и ветки

История хранится в аккаунте. Поиск в списке разговоров фильтрует названия, не тексты сообщений; скрытие панели не удаляет историю. Сохранённый разговор возвращает свою модель и настройки. Новая беседа начинается с пустой системной инструкцией и рассуждением по умолчанию. Невысланные неиспользуемые файлы-черновики истекают через 24 часа и очищаются при новых загрузках.

Диалоги и варианты сохраняются на сервере. Редактирование вопроса с новой генерацией создаёт ветку; повтор ответа сохраняет предыдущую версию. Просмотр сохранённого варианта не запускает модель. «Стоп» отменяет работу, но не уже возникший расход.

В платном чате — до четырёх приватных файлов: UTF-8 текст/код до 32 КиБ каждый, 48000 байт текста вместе, PNG/JPEG/WebP до 2 МиБ и 20 млн пикселей. Хранение — до 64 МиБ на аккаунт. Это не универсальный просмотр PDF или любых документов.

Поиск включается явно: поисковикам передаётся видимая строка, а не скрытая история или файлы. До пяти реальных выдержек сохраняются с ответом. Отдельной поисковой наценки нет; выдержки и ответ расходуют обычные модельные токены. При ошибке поиска генерация без источников не запускается молча.

Чат

Настройки и границы контекста

Платный чат позволяет системную инструкцию до 8000 символов: она сохраняется для конкретного разговора после принятого запроса, не глобально. low/high/max появляются только по метаданным модели; default не отправляет reasoning_effort. Демо эти настройки не меняет. В Responses используется reasoning.effort. Рассуждение входит в бюджет выхода и не оплачивается второй раз.

Браузер отправляет до 40 сообщений / 60000 байт текстового JSON на платном доступе и 24 / 5800 в демо, включая системную инструкцию. Старая часть может не отправляться, но остаётся в сохранённой истории. Это не точный счёт токенов. Отдельно проверяются контекст модели, тело API 16 МиБ и изображения; ограничения вложений действуют дополнительно.

Панель API-запроса показывает выбранную модель, историю и текущие настройки с dk_YOUR_KEY, не раскрывая секрет. Открытие или копирование ничего не отправляет. Для файлов и поиска неполный текстовый cURL отключён: будущие выдержки и изображения не выдаются за точно посчитанный контекст. Код копируется, скачивается и разворачивается как текст, не исполняется; Markdown не встраивает исполняемый HTML и внешние картинки.

Подключение к редактору

Нужен клиент с OpenAI-compatible / Custom API. Название OpenAI означает формат, а запрос идёт на Dikaya; отдельный ключ OpenAI не требуется. Сначала проверьте ключ через /v1/models и /v1/balance, затем текстовый чат. После пополнения проверьте небольшой проект и инструменты отдельно: клиент может многократно пересылать историю и файлы, оплачиваемые как вход. Поиск браузера не добавляет интернет-инструмент публичному API.

curl https://dikaya.cc/v1/models \
  -H "Authorization: Bearer $DIKAYA_API_KEY"

curl https://dikaya.cc/v1/balance \
  -H "Authorization: Bearer $DIKAYA_API_KEY"

OpenCode V2

Установите OpenCode по официальной инструкции. В корне проекта создайте opencode.jsonc или добавьте блок dikaya в существующий providers, не удаляя прочие настройки. Формат V2 использует providers, package и settings.baseURL; старые примеры V1 с другим синтаксисом сюда не подходят. Секрет остаётся в переменной DIKAYA_API_KEY, не в проектном файле.

{
  "$schema": "https://opencode.ai/config.json",
  "model": "dikaya/seller-pro-2",
  "providers": {
    "dikaya": {
      "name": "Dikaya",
      "env": [
        "DIKAYA_API_KEY"
      ],
      "package": "@opencode/ai/providers/openai-compatible",
      "settings": {
        "baseURL": "https://dikaya.cc/v1"
      },
      "models": {
        "seller-flash": {
          "name": "Dikaya Flash"
        },
        "seller-pro": {
          "name": "Dikaya Pro"
        },
        "seller-pro-2": {
          "name": "Dikaya Pro 2"
        },
        "seller-glm-5-3": {
          "name": "GLM 5.3 Abliterated"
        },
        "seller-glm-5-3-flash": {
          "name": "GLM 5.3 Flash Abliterated"
        },
        "seller-qwen-3-8-flash-next": {
          "name": "Qwen3.8 Flash Next Abliterated"
        },
        "seller-deepseek-v4-1-flash": {
          "name": "DeepSeek V4.1 Flash Abliterated"
        },
        "seller-deepseek-v4-1-flash-1017": {
          "name": "DeepSeek V4.1 Flash 1017 (Safeguards)"
        }
      }
    }
  }
}

Задайте переменную в терминале проекта и запустите opencode --standalone. Этот отдельный сервер получит окружение текущего терминала; общий ранее запущенный сервер мог стартовать без ключа. Команды приведены для macOS/Linux и PowerShell. Через /models выберите Dikaya и нужный точный ID.

macOS / Linux

export DIKAYA_API_KEY="dk_YOUR_KEY"
opencode --standalone

Windows / PowerShell

$env:DIKAYA_API_KEY = "dk_YOUR_KEY"
opencode --standalone

Начните с просьбы объяснить структуру проекта без изменений. При отсутствии модели проверьте каталог, JSON и окружение, затем перезапустите этот экземпляр. Агентные задания требуют пополнения и разрешённых инструментов. Следите за расходом в кабинете; большой контекст и многократные шаги агента не бесплатны.

Cursor: собственный ключ

Откройте Cursor Settings → Models → API Keys (обычно Cmd+Shift+J на macOS, Ctrl+Shift+J на Windows/Linux). В OpenAI API Key вставьте ключ Dikaya и включите Use OpenAI API Key. Активируйте Override OpenAI Base URL с адресом ниже. Через Add Custom Model добавьте seller-pro-2, включите его и выберите в новом чате Ask. При необходимости добавьте другие разрешённые API-ID.

Base URL: https://dikaya.cc/v1
API Key: dk_YOUR_KEY
Model ID: seller-pro-2

Названия пунктов зависят от версии. Персональные ключи/BYOK могут требовать разрешения администратора команды. Cursor Tab не переключается на Dikaya; Agent проверяйте отдельно. Если Verify использует встроенную отсутствующую модель, проверяйте свой ID в чате и через cURL. При возврате к встроенным моделям отключите Override: он может перенаправлять и их запросы.

Continue / VS Code и JetBrains

Установите Continue, откройте настройки моделей и локальный конфиг. Для YAML это обычно ~/.continue/config.yaml. Добавьте модель, сохранив остальные записи; ниже конфигурация для платного режима. Выберите модель в панели Continue и при необходимости перезагрузите расширение. Для демо оставьте текстовый режим и допустимый демо-лимит.

name: Dikaya
version: 1.0.0
schema: v1
models:
  - name: Dikaya Pro 2
    provider: openai
    model: seller-pro-2
    apiBase: https://dikaya.cc/v1
    apiKey: YOUR_DIKAYA_KEY
    defaultCompletionOptions:
      maxTokens: 16384
  - name: Dikaya Flash
    provider: openai
    model: seller-flash
    apiBase: https://dikaya.cc/v1
    apiKey: YOUR_DIKAYA_KEY
    defaultCompletionOptions:
      maxTokens: 8192

Замените YOUR_DIKAYA_KEY своим ключом только в локальном файле и не включайте секрет в репозиторий. Если ваша версия использует другой интерфейс, добавьте OpenAI-совместимую модель вручную с теми же Base URL и ID. Назначение ролей и инструментов зависит от версии Continue, не от одного адреса API.

Cline / Roo Code

Установите расширение и откройте настройки API. Выберите OpenAI Compatible (иногда OpenAI с пользовательским Base URL), задайте адрес, ключ и seller-pro-2. Для платного режима пример использует 16384 выходных токена, включая рассуждение. Сохраните, проверьте короткий вопрос, затем объяснение одного файла небольшого проекта.

Base URL: https://dikaya.cc/v1
API Key: dk_YOUR_KEY
Model ID: seller-pro-2

Агентный режим требует пополнения; демо не разрешает tool-вызовы и большой контекст. Схемы инструментов в версиях расширения могут отличаться. При ошибке tool-вызова отдельно проверьте текстовый запрос, выбранную модель и формат tools. Больший предел ответа требует большего резерва даже для короткого вопроса.

Claude Code / терминал IDE

Откройте терминал VS Code, JetBrains или другой среды. Задайте ANTHROPIC_BASE_URL без /v1: клиент добавляет путь сам. ANTHROPIC_AUTH_TOKEN содержит ваш ключ Dikaya. Команда с seller-pro-2[1m] использует совместимый суффикс контекста; API-ID модели остаётся seller-pro-2. Для агентного режима нужен оплаченный доступ.

macOS / Linux

export ANTHROPIC_BASE_URL="https://dikaya.cc"
export ANTHROPIC_AUTH_TOKEN="dk_YOUR_KEY"
claude --model 'seller-pro-2[1m]'

Windows / PowerShell

$env:ANTHROPIC_BASE_URL = "https://dikaya.cc"
$env:ANTHROPIC_AUTH_TOKEN = "dk_YOUR_KEY"
claude --model 'seller-pro-2[1m]'

Переменные действуют в текущем терминале. Если запросы уходят не в Dikaya, проверьте настройки окружения и проекта на конфликтующий ключ или адрес. Это подключение через Messages, не обещание поддержки всех внутренних расширений Claude: для новых моделей разрешены текст и обычные function tools, неподдерживаемые расширения отклоняются до запуска.

Antigravity: OpenCode в терминале

Официальная справка не подтверждает штатную настройку произвольного OpenAI Base URL для встроенного агента Antigravity. Ключ Dikaya нельзя подставить вместо Google API key. Откройте проект и терминал Antigravity, установите OpenCode, добавьте конфиг из раздела выше, задайте DIKAYA_API_KEY и запустите opencode --standalone.

Выберите модель через /models. OpenCode работает с файлами проекта как отдельный помощник; встроенная модель Antigravity не заменяется. Способ не меняет вход в Google, сертификаты и внутренние API. Не запускайте двух помощников одновременно на правку одних файлов. Если версия получит официальный Custom Provider, используйте опубликованные условия этой версии, а не предположение о поддержке.

OpenCode V2

Эндпоинты и протоколы

GET /v1/models возвращает каталог, с ключом — разрешённые модели и персональные цены; GET /v1/balance — баланс и лимиты. POST /v1/chat/completions принимает Chat Completions, POST /v1/responses — Responses, POST /v1/messages — Messages. Для SSE укажите stream: true; стриминг не создаёт отдельной ставки токенов.

GET  /v1/models
GET  /v1/balance
POST /v1/chat/completions
POST /v1/responses
POST /v1/messages

Новые модели используют нативные Chat Completions и Responses. Messages адаптирует текст и обычные function tools; неподдерживаемые thinking/cache/media-расширения не теряются молча, а отклоняются до резервирования. Изображения новых моделей доступны через мост в Chat Completions и Responses. Для OpenAI-стрима шлюз запрашивает финальный usage. Выбор протокола не добавляет клиенту файловую систему или инструменты.

Текущие модели и розничные цены

Контекст и тарифы ниже берутся из конфигурации, не из статичного рекламного списка. seller-pro-2 — доработанная GLM-5.3. Четыре новых варианта GLM/Qwen/DeepSeek модифицированы, DeepSeek V4.1 Flash 1017 (Safeguards) — отдельный оригинальный вариант. Наличие в каталоге не доказывает текущую доступность: неподтверждённый тариф выбранной модели останавливает запрос до генерации. Поддерживаемые уровни reasoning_effort показаны без выдуманных опций.

USD за 1 млн токенов
МодельAPI-IDКонтекст, токеновОбработка изображенийВходКэшированный входВыходreasoning_effort
Dikaya Flashseller-flash256 000Непосредственно20,26—
Dikaya Proseller-pro1 000 000Через текстовое описание60,610—
Dikaya Pro 2seller-pro-21 000 000Через текстовое описание60,610—
GLM 5.3 Abliteratedseller-glm-5-31 048 576Через текстовое описание40,76low / high / max
GLM 5.3 Flash Abliteratedseller-glm-5-3-flash1 048 576Через текстовое описание0,50,31,6low / high / max
Qwen3.8 Flash Next Abliteratedseller-qwen-3-8-flash-next262 144Через текстовое описание0,360,181,2low / high / max
DeepSeek V4.1 Flash Abliteratedseller-deepseek-v4-1-flash1 048 576Через текстовое описание1,20,33,2low / high / max
DeepSeek V4.1 Flash 1017 (Safeguards)seller-deepseek-v4-1-flash-10171 048 576Через текстовое описание0,10,0080,3low / high / max

Каталог не является проверкой текущей доступности каждого варианта. Для выбранной модели действуют разрешения ключа и проверка тарифа; если условия не подтверждены, запрос останавливается до генерации. Персональные цены смотрите через /v1/models со своим ключом.

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://dikaya.cc/v1",
    api_key=os.environ["DIKAYA_API_KEY"],
    max_retries=0,
)
response = client.chat.completions.create(
    model="seller-glm-5-3",
    max_tokens=1024,
    reasoning_effort="low",
    messages=[{"role": "user", "content": "Предложи три проверки для небольшого API."}],
)
print(response.choices[0].message.content)
print(response.usage)

Резерв, usage и итоговый расход

До обращения к модели атомарно резервируется консервативная оценка входа и предела выхода. Известный usage определяет фактический расход, неиспользованный остаток освобождается; одни средства нельзя зарезервировать параллельно дважды. Кэш уже включён во вход, рассуждение — в выход. Картинки могут добавлять отдельный этап; расходы обоих этапов видны в истории.

Текстовая оценка: ((вход − кэш) × цена входа + кэш × цена кэша + выход × цена выхода) / 1 000 000. Кэш уже входит в общий вход; рассуждение входит в выход, когда используется. Изображения и дополнительные запросы могут добавить отдельные этапы.

При явном HTTP-отказе исполнения резерв возвращается. При обрыве, таймауте или отсутствии usage работа уже могла начаться: оценочный резерв сохраняется до сверки. Потерянное подтверждение не доказывает, что запрос не сохранён или ничего не стоил. Закрытие вкладки и «Стоп» не отменяют уже выполненную работу. Финансовые спорные случаи рассматриваются вручную через поддержку аккаунта, без обещания автоматического возврата.

Если клиент не указал предел, используется личный default ключа, иначе общий платный default 16384. Явный предел клиента выше обоих; максимум шлюза — 65536 с учётом модели. Демо Pro 2 — до 8192, legacy Flash — 512; меньший явный предел сохраняется. Большой резерв может дать 402 при положительном балансе: уменьшите контекст или лимит, либо пополните.

Пополнение и счета

Чат и API используют один свободный баланс. Счёт создаётся в аккаунте для доступной настроенной сети: USDT в TRON, TON, BNB Smart Chain, Ethereum или BTC при подключённом кошельке. Само создание счёта не зачисляет деньги. Срок — 30 минут; для BTC курс фиксируется при создании и нужны три подтверждения. Автозачисление зависит от подтверждений и работающего мониторинга.

Отправьте точную сумму, комиссию сети оплатите отдельно. Не округляйте идентификационную добавку: ожидаемые баланс и бонус указаны в счёте. Неверная сумма или просрочка требуют поддержки. Бонус считается по одному подтверждённому платежу, не сумме прошлых оплат. Нет подписки, автоматических ежемесячных списаний или срока сгорания. Активационный код даёт отдельный бюджет по своим условиям, не подтверждает оплату и не начисляет пакетный бонус.

ПакетОплата, USDНа баланс, USDБонус
Start550%
Builder20215%
Studio505510%
Scale10011515%

Бонус определяется одним подтверждённым платежом. Отдельные оплаты не складываются для повышения уровня; создание счёта не начисляет средства. Индивидуальные и оптовые условия не переоценивают старую историю.

Цены · API и баланс

Ошибки и безопасное восстановление

400: проверьте JSON, ID модели, лимит и ограничения демо. 401: отсутствующий, отозванный или неверный ключ либо блокировка. 402: не хватает свободных средств для резерва. 404: проверьте Base URL и единственный /v1 (Claude Code — без него). 429: лимит ключа; снизьте параллелизм и повторите позже. 502/503: недоступность исполнения или неподтверждённые условия; прочитайте error.message, type и code.

413 означает превышение тела JSON 16 МиБ: сократите историю, файлы или результаты инструментов. Отказ по этому входному пределу происходит до генерации и не списывает баланс; контекст модели проверяется отдельно. Большое окно модели не отменяет лимит тела или более строгий предел браузера.

Известный HTTP-отказ и пропавший сетевой ответ — разные случаи. Не включайте автоматический повтор POST, если исход неясен. В браузере проверьте состояние уже принятого запроса; ручное восстановление использует прежний request ID. Прямой новый API-запрос или повтор SDK может стать новой оплачиваемой работой. Не делайте вывод о нулевом расходе только из локального исключения.

{"error":{"message":"…","type":"…","code":"…"}}

Изображения: прямое зрение и мост

seller-flash обрабатывает изображения непосредственно. Платные Pro/Pro 2 сначала получают текстовое описание через Flash, затем выбранная модель отвечает; она не подменяется. До запуска обязательны два резерва, стадии оплачиваются отдельно. Описание может потерять детали. Новые модели используют мост в Chat Completions/Responses; демо остаётся текстовым.

До восьми разных изображений в API-запросе. Встроенные data/base64-изображения кэшируются на 24 часа отдельно для ключа; повтор в истории не запускает новый разбор. HTTP/HTTPS URL не кэшируются: содержимое может меняться. Для Pro/Pro 2 мост поддерживает Chat Completions, Responses и Messages. Браузерное ограничение четырёх вложений строже API-границы изображений.

X-Dikaya-Vision-Bridge, X-Dikaya-Vision-Cost-Usd и X-Dikaya-Vision-Cache-Hits показывают мост. dikaya_image_handling: reject запрещает его и требует явного отказа на изображении. Если разбор не удался, основная модель не запускается и её резерв возвращается; завершённый Flash оплачивается, неизвестный usage удерживает оценочный резерв. Поддержка картинки не равна чтению произвольного документа.

{
  "model": "seller-pro-2",
  "max_tokens": 1024,
  "dikaya_image_handling": "reject",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Предложи три проверки для небольшого API."
        },
        {
          "type": "image_url",
          "image_url": {
            "url": "data:image/png;base64,IMAGE_BYTES"
          }
        }
      ]
    }
  ]
}

Данные, ключи и доступ

История браузера хранится на сервере. Вопросы, ответы и сведения о расходе сохраняются для ручной модерации; администратору доступны защищённая консоль и приватные Telegram-уведомления. Нужные материалы передаются внешней инфраструктуре исполнения. Не публикуйте ключ в фронтенде, репозитории или чате; перевыпуск в аккаунте сразу отзывает старый секрет, сохраняя баланс. Удаление не стирает автоматически отдельные финансовые/модерационные записи, уведомления и резервные копии. Условия и политика доступны по ссылкам внизу.

Условия использования · Конфиденциальность · Контакты

Частые вопросы

HTTP 200 не гарантирует непустой message.content. В агентном режиме ответ может содержать tool_calls, которые клиент должен выполнить и вернуть. При finish_reason: length выход мог закончиться на рассуждении до финального текста. Проверяйте причину завершения и usage.completion_tokens_details.reasoning_tokens, а не только content. Не запускайте обрезанный запрос автоматически заново.

Для seller-flash в Chat Completions рассуждение по умолчанию выключено, если его не задали явно; это не относится ко всем моделям со словом Flash. Pro/Pro 2 сохраняют свой режим. Демо reasoning_effort=none у Pro 2 — низкий уровень со скрытой трассой, не обещание нулевых токенов рассуждения или непустого ответа. Большой контекст не означает столь же длинный ответ.

RPM и лимит ответа конкретного ключа видны в аккаунте и /v1/balance. Демо — 10 RPM и один одновременно; единого обещанного RPM для всех платных аккаунтов нет. Совместимые инструменты редактора требуют поддержки, настройки и разрешений: само подключение Base URL не даёт доступ к файлам, интернету или выполнению команд.

Подписки нет, баланс не сгорает. Для вопросов об оплате, расходе и доступе используйте поддержку в аккаунте; рассмотрение ручное, без обещания автоматического возврата или срока ответа. Отдельный публичный канал восстановления пароля не опубликован, автоматическое восстановление не реализовано.

Официальные справочники клиентов

Ссылки ниже объясняют настройки сторонних инструментов. Их интерфейсы и возможности меняются по версии; документация клиента не расширяет права вашего ключа Dikaya. Примеры здесь не выполняются, копирование не отправляет запрос. Практические статьи этой языковой версии доступны отдельно.

Статьи