Ir para o conteúdo

Documentação API e configuração de IDE — Dikaya

Revisado em

Valide uma solicitação de texto antes de conectar o editor. Veja configurações, limites do chat e regras de cobrança, inclusive quando o resultado é desconhecido.

Início rápido

Cadastre usuário e senha sem email: senha de 8 a 128 caracteres, digitada duas vezes. A chave pessoal fica em API e saldo. Contas novas elegíveis podem receber até 3 solicitações seller-pro-2: Chat Completions de texto, 8192 tokens de saída com raciocínio, 6000 bytes de contexto, 10 RPM e uma simultânea. Cotas anteriores permanecem; novo cadastro não renova a demonstração.

Criar conta · API e saldo

Use exatamente um /v1 na Base URL e Authorization: Bearer dk_…. Os exemplos leem variável de ambiente, sem chave real embutida. Retentativas automáticas do SDK estão desativadas para evitar novo trabalho pago após perda de conexão. Confira status e gasto antes de repetir manualmente. A demonstração não permite ferramentas de agente; após recarga valem as permissões da chave.

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": "Sugira três verificações para uma API pequena."
    }
  ]
}'

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": "Sugira três verificações para uma API pequena."}],
)
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: "Sugira três verificações para uma API pequena." }],
});
console.log(response.choices[0].message.content);
console.log(response.usage);

Navegador: arquivos, busca e ramificações

O histórico fica na conta. A busca de conversas filtra títulos, não mensagens; esconder o painel não apaga nada. Uma conversa salva restaura seu modelo e ajustes. A nova começa sem instrução de sistema e com raciocínio padrão. Arquivos de rascunhos não enviados e não utilizados expiram em 24 horas e são limpos durante novos envios.

Conversas e versões ficam salvas no servidor. Editar uma pergunta com nova geração cria uma ramificação; regenerar preserva a resposta anterior. Ver uma versão salva não chama o modelo. Parar interrompe o trabalho, não os custos já incorridos.

O chat pago aceita até quatro anexos privados: texto/código UTF-8 de 32 KiB cada, 48000 bytes de texto ao todo, ou PNG/JPEG/WebP de até 2 MiB e 20 milhões de pixels cada. O armazenamento da conta é de 64 MiB. Não é um leitor universal de PDF ou documentos.

A busca é explícita: os mecanismos recebem a consulta visível, não o histórico oculto ou os arquivos. Até cinco trechos reais são salvos com a resposta. Não há taxa adicional de busca; trechos e resposta usam tokens normais. Falhas não iniciam geração sem fontes silenciosamente.

Chat

Ajustes e limites do contexto

O chat pago aceita instrução de sistema de até 8000 caracteres, salva nessa conversa após solicitação aceita, não globalmente. low/high/max aparecem só conforme metadados; padrão omite reasoning_effort. A demonstração não altera isso. Responses usa reasoning.effort. Raciocínio consome saída, sem segunda cobrança.

O navegador envia até 40 mensagens / 60000 bytes de JSON de texto no pago e 24 / 5800 na demonstração, incluindo sistema. Contexto antigo pode ser omitido sem apagar histórico. Não é contagem exata de tokens. Contexto do modelo, corpo API de 16 MiB e imagens são verificados separadamente; também valem limites de anexos.

O painel de solicitação API mostra modelo, histórico e opções com dk_YOUR_KEY, nunca o segredo. Abrir ou copiar não envia nada. Com arquivos/busca, o cURL de texto incompleto fica desativado: futuros trechos e imagens não são apresentados como contagem precisa. Código pode ser copiado, baixado e expandido como texto, sem execução. Markdown não incorpora HTML executável ou imagens remotas.

Conectar um editor

O cliente deve suportar OpenAI-compatible / Custom API. OpenAI descreve o protocolo, com destino Dikaya e sem outra chave OpenAI. Teste /v1/models, /v1/balance e texto. Após recarga, teste projeto pequeno e ferramentas separadamente: reenviar arquivos e histórico é entrada cobrada. A busca do navegador não adiciona uma ferramenta de internet à API pública.

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

Instale OpenCode pelas instruções oficiais. Crie opencode.jsonc na raiz ou integre dikaya aos providers existentes sem apagar ajustes. V2 usa providers, package e settings.baseURL, não o formato antigo V1. Guarde o segredo em DIKAYA_API_KEY, fora do arquivo de projeto.

{
  "$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)"
        }
      }
    }
  }
}

Defina a variável no terminal do projeto e execute opencode --standalone. Esse servidor separado recebe o ambiente atual; um compartilhado já aberto pode não ter a chave. Abaixo há macOS/Linux e PowerShell. Escolha Dikaya e o ID exato em /models.

macOS / Linux

export DIKAYA_API_KEY="dk_YOUR_KEY"
opencode --standalone

Windows / PowerShell

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

Comece pedindo explicação sem alterações. Se não encontrar o modelo, confira diretório, JSON e ambiente e reinicie a instância. Agentes exigem recarga e ferramentas permitidas. Acompanhe os custos: contexto amplo e etapas repetidas não são grátis.

Cursor: sua própria chave

Abra Cursor Settings → Models → API Keys, normalmente Cmd+Shift+J no macOS ou Ctrl+Shift+J no Windows/Linux. Coloque a chave Dikaya em OpenAI API Key e ative Use OpenAI API Key. Ative Override OpenAI Base URL com o endereço abaixo. Adicione e habilite seller-pro-2 em Add Custom Model e selecione em um novo chat Ask. Outros IDs permitidos podem ser adicionados.

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

Os nomes variam por versão; o administrador da equipe pode precisar liberar chaves pessoais/BYOK. Cursor Tab não muda para Dikaya; teste Agent separadamente. Se Verify usar modelo integrado ausente, teste seu ID no chat e cURL. Desative Override ao voltar aos integrados, pois algumas versões redirecionam também suas solicitações.

Continue / VS Code e JetBrains

Instale Continue, abra ajustes de modelos e configuração local, normalmente ~/.continue/config.yaml para YAML. Preserve entradas existentes ao adicionar; o exemplo abaixo é pago. Selecione no painel e recarregue a extensão se preciso. Na demonstração use texto e seu limite de saída permitido.

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

Substitua YOUR_DIKAYA_KEY apenas no arquivo local e não envie o segredo ao repositório. Com interface diferente, adicione manualmente modelo compatível OpenAI com URL e ID iguais. Papéis e ferramentas dependem da versão do Continue, não apenas do endereço API.

Cline / Roo Code

Instale a extensão e abra os ajustes API. Escolha OpenAI Compatible, ou OpenAI com Base URL personalizada; informe endereço, chave e seller-pro-2. O exemplo pago usa 16384 tokens de saída com raciocínio. Salve, teste uma pergunta curta e depois a explicação de um arquivo de projeto pequeno.

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

Agente exige recarga; a demonstração não admite ferramentas nem contexto grande. Esquemas de ferramentas variam entre versões. Se falhar, confira texto, modelo e formato tools separadamente. Um limite de saída maior exige reserva maior mesmo para pergunta curta.

Claude Code / terminal da IDE

Abra terminal do VS Code, JetBrains ou outro. ANTHROPIC_BASE_URL vai sem /v1 porque o cliente adiciona o caminho. ANTHROPIC_AUTH_TOKEN contém sua chave Dikaya. seller-pro-2[1m] usa sufixo de contexto compatível; o ID permanece seller-pro-2. Agente precisa de acesso pago.

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]'

Variáveis valem no terminal atual. Se solicitações forem a outro destino, procure chave ou endereço conflitantes no ambiente/projeto. Esta conexão Messages não garante todas as extensões internas Claude. Modelos novos aceitam texto e function tools normais; extensões incompatíveis são rejeitadas antes da execução.

Antigravity: OpenCode no terminal

A documentação oficial não confirma Base URL OpenAI arbitrária no agente integrado Antigravity. Uma chave Dikaya não substitui Google API key. Abra projeto e terminal, instale OpenCode, adicione a configuração acima, defina DIKAYA_API_KEY e rode opencode --standalone.

Escolha em /models. OpenCode é assistente separado para arquivos, não substitui o modelo integrado nem muda login Google, certificados ou APIs internas. Não deixe ambos editando os mesmos arquivos simultaneamente. Se surgir Custom Provider oficial, siga a documentação da versão em vez de presumir compatibilidade.

OpenCode V2

Endpoints e protocolos

GET /v1/models retorna catálogo ou, com chave, modelos permitidos e preços pessoais; GET /v1/balance retorna saldo e limites. POST /v1/chat/completions usa Chat Completions, POST /v1/responses Responses, POST /v1/messages Messages. Ative stream: true para SSE, sem tarifa de token separada.

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

Modelos novos usam Chat Completions e Responses nativos. Messages adapta texto e function tools normais; extensões thinking/cache/media não suportadas são rejeitadas antes da reserva, nunca descartadas silenciosamente. Imagens novas usam ponte Chat Completions/Responses. Fluxos OpenAI pedem usage final. O protocolo não concede arquivos nem ferramentas ao cliente.

Modelos atuais e tarifas de varejo

Contexto e preços vêm da configuração. seller-pro-2 é GLM-5.3 modificada. Quatro variantes novas GLM/Qwen/DeepSeek são modificadas; DeepSeek V4.1 Flash 1017 (Safeguards) é original separada. Catálogo não comprova disponibilidade: tarifa não confirmada interrompe antes de gerar. reasoning_effort só exibe valores suportados.

USD por milhão de tokens
ModeloID da APIContexto, tokensProcessamento de imagensEntradaEntrada em cacheSaídareasoning_effort
Dikaya Flashseller-flash256.000Direto20,26—
Dikaya Proseller-pro1.000.000Por descrição textual60,610—
Dikaya Pro 2seller-pro-21.000.000Por descrição textual60,610—
GLM 5.3 Abliteratedseller-glm-5-31.048.576Por descrição textual40,76low / high / max
GLM 5.3 Flash Abliteratedseller-glm-5-3-flash1.048.576Por descrição textual0,50,31,6low / high / max
Qwen3.8 Flash Next Abliteratedseller-qwen-3-8-flash-next262.144Por descrição textual0,360,181,2low / high / max
DeepSeek V4.1 Flash Abliteratedseller-deepseek-v4-1-flash1.048.576Por descrição textual1,20,33,2low / high / max
DeepSeek V4.1 Flash 1017 (Safeguards)seller-deepseek-v4-1-flash-10171.048.576Por descrição textual0,10,0080,3low / high / max

O catálogo não é um teste de disponibilidade em tempo real. Valem as permissões da chave e a verificação de tarifa; condições não confirmadas interrompem a solicitação antes da geração. Consulte suas tarifas em /v1/models com sua chave.

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": "Sugira três verificações para uma API pequena."}],
)
print(response.choices[0].message.content)
print(response.usage)

Reserva, usage e custo final

Antes de inferência, reserva-se atomicamente estimativa conservadora de entrada e saída máxima. usage conhecido determina custo real e libera sobra; o mesmo saldo não financia duas reservas paralelas. Cache integra entrada e raciocínio integra saída. Imagens podem acrescentar etapa, ambas visíveis no histórico de gastos.

Estimativa textual: ((entrada − cache) × tarifa de entrada + cache × tarifa de cache + saída × tarifa de saída) / 1.000.000. O cache integra a entrada total; o raciocínio integra a saída quando usado. Imagens e solicitações adicionais podem criar etapas separadas.

Rejeição HTTP explícita da execução libera reserva. Queda, timeout ou falta de usage podem acontecer após início do trabalho: retém-se estimativa até conciliação. Perder confirmação não prova ausência de gravação nem gratuidade. Fechar aba ou parar não desfaz trabalho concluído. Questões financeiras passam por revisão manual no suporte da conta, sem reembolso automático garantido.

Sem limite cliente, vale o padrão pessoal da chave; senão o padrão pago é 16384. Limite explícito vence ambos; máximo gateway 65536 conforme modelo. Demo Pro 2 até 8192, Flash antigo 512; limites explícitos menores continuam. Reserva grande pode dar 402 com saldo positivo: diminua contexto/saída ou recarregue.

Recargas e faturas

Chat e API compartilham crédito disponível. Crie fatura em rede configurada disponível: USDT TRON, TON, BNB Smart Chain, Ethereum, ou BTC com carteira configurada. Criar não credita. Dura 30 minutos; BTC fixa câmbio na criação e exige três confirmações. Crédito automático depende de confirmações e monitoramento funcionando.

Envie valor exato e pague taxas de rede separadamente. Não arredonde o acréscimo identificador; crédito e bônus estão na fatura. Valor errado ou atraso exige suporte. Bônus depende de um pagamento confirmado, não soma histórica. Sem assinatura, cobrança mensal automática ou expiração. Código de ativação concede orçamento separado conforme seus termos; não comprova pagamento nem dá bônus de pacote.

PacotePagamento, USDCrédito adicionado, USDBônus
Start550%
Builder20215%
Studio505510%
Scale10011515%

O bônus considera um pagamento confirmado. Pagamentos separados não se somam para atingir outra faixa; criar uma fatura não adiciona saldo. Condições individuais ou de atacado não recalculam operações concluídas.

Preços · API e saldo

Erros e recuperação

400: JSON, ID, saída e demo. 401: chave ausente, incorreta, revogada ou bloqueio. 402: saldo disponível insuficiente à reserva. 404: Base URL e um /v1, nenhum para Claude Code. 429: limite da chave, reduza concorrência e espere. 502/503: execução indisponível ou condições não confirmadas; leia error.message, type e code.

413 significa JSON maior que 16 MiB. Reduza histórico, anexos ou resultados de ferramentas. Essa rejeição de entrada antecede geração e não debita saldo; contexto do modelo é separado. Uma janela grande não elimina o limite do corpo ou do navegador.

Rejeição HTTP conhecida não é resposta de rede perdida. Não repita POST automaticamente com resultado incerto. Confira execução aceita no navegador; recuperação manual mantém o request ID. Nova chamada API ou retentativa SDK pode ser novo trabalho cobrado. Exceção local não comprova custo zero.

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

Imagens: visão nativa e ponte

seller-flash processa imagens diretamente. Pro/Pro 2 pagos primeiro recebem descrição Flash, depois o modelo escolhido responde, sem substituição. Duas reservas são necessárias antes do processamento, com cobrança separada. Descrição pode perder detalhes. Modelos novos usam ponte Chat Completions/Responses; demo continua textual.

Até oito imagens distintas por solicitação API. data/base64 fica em cache por chave 24 horas; repetir no histórico não reanalisa. HTTP/HTTPS não recebe cache porque conteúdo muda. Pro/Pro 2 têm ponte em Chat Completions, Responses e Messages. Os quatro anexos do navegador são um limite mais estrito.

X-Dikaya-Vision-Bridge, X-Dikaya-Vision-Cost-Usd e X-Dikaya-Vision-Cache-Hits informam a ponte. dikaya_image_handling: reject desativa e pede rejeição explícita da imagem. Falha de análise não inicia o principal e devolve sua reserva; Flash concluído é cobrado e usage desconhecido mantém estimativa. Imagens não significam leitura universal de documentos.

{
  "model": "seller-pro-2",
  "max_tokens": 1024,
  "dikaya_image_handling": "reject",
  "messages": [
    {
      "role": "user",
      "content": [
        {
          "type": "text",
          "text": "Sugira três verificações para uma API pequena."
        },
        {
          "type": "image_url",
          "image_url": {
            "url": "data:image/png;base64,IMAGE_BYTES"
          }
        }
      ]
    }
  ]
}

Dados, chaves e acesso

Histórico fica no servidor. Perguntas, respostas e gasto são salvos para moderação manual; o administrador usa console protegido e avisos Telegram privados. Materiais necessários vão à infraestrutura externa de modelos. Não exponha chaves em frontend, repositório ou conversa. Rotacionar revoga o segredo antigo imediatamente e mantém crédito. Exclusão não apaga automaticamente registros financeiros/de moderação, notificações ou backups. Termos e privacidade estão abaixo.

Termos de uso · Privacidade · Contato

Perguntas frequentes

HTTP 200 não garante message.content preenchido. Agentes podem receber tool_calls que o cliente executa e devolve. Com finish_reason: length, raciocínio pode esgotar saída antes do texto. Confira o motivo e usage.completion_tokens_details.reasoning_tokens, não só content. Não repita automaticamente requisição truncada.

seller-flash Chat Completions deixa raciocínio desligado salvo definição explícita; isso não vale para todo modelo chamado Flash. Pro/Pro 2 guardam seus modos. reasoning_effort=none no demo Pro 2 é raciocínio baixo com trilha oculta, não garantia de zero tokens ou resposta preenchida. Contexto amplo não significa saída do mesmo tamanho.

Conta e /v1/balance mostram RPM e saída da chave. Demo: 10 RPM e uma simultânea; não se promete RPM uniforme para chaves pagas. Ferramentas IDE exigem suporte, configuração e permissão; Base URL sozinha não dá arquivos, internet ou comandos.

Não há assinatura nem expiração do saldo. Use o suporte da conta para pagamento, consumo e acesso. A revisão é manual, sem promessa de reembolso automático ou prazo de resposta. Não há canal público separado de recuperação de senha nem recuperação automática implementada.

Referências oficiais dos clientes

Os links explicam ferramentas externas, cujas interfaces mudam por versão. A documentação delas não amplia permissões Dikaya. Exemplos não executam e copiar não envia nada. Artigos práticos desta edição estão separados.

Artigos