Documentação

Documentação

TypingMind

O TypingMind não tem um campo de URL base para modelos personalizados: cada modelo é uma entrada separada, com a rota completa do endpoint, o ID do modelo, o tamanho do contexto e a chave em um cabeçalho que você mesmo digita. Veja a entrada para a Kunavo e por que ela funciona no navegador agora, embora não funcionasse há um mês.

Models → Add custom model: a URL completa do endpoint https://api.kunavo.com/v1/chat/completions, um cabeçalho Authorization com Bearer e sua chave, o Model ID e seu comprimento de contexto — uma entrada por modelo, chamada diretamente do navegador.

typingmind.com — Add Custom Model
Models  →  Add custom model  →  Create Manually

Name                    Kunavo · Claude Sonnet 5
Model ID                claude-sonnet-5
Context Length          1000000

Authentication tab
  API Type              OpenAI Chat Completions API
  Endpoint URL          https://api.kunavo.com/v1/chat/completions
  Authentication Type   API Key via HTTP Header
    Header Key          Authorization
    Header Value        Bearer sk-kn-...

Capabilities tab        tick only what you have checked (see below)
Request Options tab     leave "Route requests via TypingMind Cloud" off

                        → Test & Save
A URL do endpoint é a rota completa, não uma URL base. Para o tipo OpenAI Chat Completions API, ela é https://api.kunavo.com/v1/chat/completions. O TypingMind não acrescenta nada — seus próprios exemplos práticos usam rotas completas, como https://api.minimax.io/v1/chat/completions — então https://api.kunavo.com/v1 sozinho envia a solicitação de chat para um caminho inexistente.
O TypingMind é executado no navegador, e agora funciona com a Kunavo. A documentação do TypingMind diz que as solicitações vão “diretamente do navegador”, então o endpoint precisa permitir a origem da página. A API da Kunavo adicionou cabeçalhos CORS em 29 de setembro de 2026. Em 1º de outubro de 2026, uma solicitação enviada da própria página typingmind.com retornou access-control-allow-origin: * e uma resposta legível, tanto de /v1/chat/completions, /v1/messages quanto de /v1/models. Você não precisa da opção Route requests via TypingMind Cloud para este endpoint.
O que foi e não foi testado. Os rótulos dos campos acima foram lidos no aplicativo ativo em 1º de outubro de 2026, e a solicitação entre origens foi enviada dessa página com uma chave deliberadamente inválida — isso comprova que o navegador permite que o TypingMind acesse a Kunavo e leia a resposta. Nenhuma geração de resposta, transmissão em fluxo ou chamada de ferramenta foi executada pelo TypingMind com a Kunavo usando uma chave real, e o botão Test & Save não foi pressionado. Seu próprio Test & Save é a primeira verificação de ponta a ponta.
Ainda não tem uma chave? Crie uma conta na Kunavo, gere uma chave (ela começa com sk-kn-) e adicione crédito a partir de $10 — as chamadas são pagas com esse saldo, e chamadas malsucedidas não são cobradas. O painel então abre na configuração de TypingMind.

Passo a passo

  1. Crie uma chave em /app/keys e copie-a — ela é exibida uma única vez.
  2. No TypingMind, abra Models na barra lateral esquerda e clique em Add custom model. Permaneça em Create Manually; Import JSON e Import OpenRouter são para outras fontes.
  3. Preencha Name (qualquer valor), Model ID (exatamente como listado em GET /v1/models — por exemplo, claude-sonnet-5) e Context Length. O formulário preenche 128000 automaticamente; defina o tamanho real da janela do modelo conforme a página de modelos, pois o TypingMind usa esse número para decidir quanto histórico enviar.
  4. Na aba Authentication, escolha API Type = OpenAI Chat Completions API, cole a Endpoint URL completa, defina Authentication Type como API Key via HTTP Header e informe Header Key Authorization com Header Value Bearer sk-kn-... — a palavra Bearer, um espaço e, em seguida, a chave.
  5. Em Capabilities, marque os recursos manualmente ou deixe ativada a opção Auto check capabilities on save — o formulário informa que envia “algumas solicitações de teste” ao salvar, o que consome alguns tokens. Se quiser, preencha Pricing com as tarifas por milhão da tabela abaixo para que a exibição de custos do TypingMind corresponda à sua fatura. Em seguida, clique em Test & Save.
  6. Repita o processo para cada modelo. Não há um cadastro no nível do provedor para um endpoint personalizado: Claude Sonnet, Claude Haiku e um modelo GPT são três modelos personalizados distintos com a mesma Endpoint URL e o mesmo cabeçalho.

Verificado em Documentação de modelos do TypingMind em 1 de outubro de 2026. As configurações de terceiros podem mudar; se o nome de um campo aqui já não corresponder ao que você vê, aquela página é a autoridade, não esta.

Esta é a versão resumida. O guia completo — escolha do modelo, custo de uma sessão real e modos de falha — está em Preços e custos de API do TypingMind.

Verifique antes de depurar o cliente

Uma solicitação determina se a falha está no endpoint, na chave ou no arquivo de configuração. Se isto retornar JSON, a mesma URL base e a mesma chave funcionarão em TypingMind.

# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

Qual ID de modelo inserir no campo

Todo modelo de texto pode ser acessado como um ID de modelo — a lista atual está em GET /v1/models, e o catálogo com preços está na página de modelos. As tarifas são em USD por 1 milhão de tokens, entrada / saída.

ID do modeloEntrada / saída da KunavoOnde se encaixa em TypingMind
claude-sonnet-5$1.40 / $7.00O modelo para o dia a dia, em conversas longas e documentos — janela de contexto de 1000000
claude-haiku-4-5$0.70 / $3.50Uma opção secundária econômica para perguntas rápidas e títulos — janela de contexto de 200000
claude-opus-5$3.50 / $17.50Raciocínio complexo em uma conversa, usado de forma deliberada — janela de contexto de 1000000
A cobrança é por token, usando um saldo pré-pago e sem tarifa mensal — consulte billing. Em contextos repetidos — que representam a maior parte do que um editor ou cliente de chat envia — o cache de prompt altera a conta mais do que a escolha do modelo.

Os outros três tipos de API

O menu suspenso API Type no formulário atual oferece OpenAI Chat Completions API, OpenAI Responses API, Claude Messages API e Gemini API. Kunavo atende aos três primeiros; cada um exige sua própria rota completa em Endpoint URL.

  • Claude Messages API — Endpoint URL https://api.kunavo.com/v1/messages. O exemplo da própria TypingMind no formato Claude usa um cabeçalho x-api-key; nessa rota, Kunavo aceita tanto esse cabeçalho quanto Authorization: Bearer. Kunavo atende apenas IDs da família Claude nessa rota.
  • OpenAI Responses API — Endpoint URL https://api.kunavo.com/v1/responses, com o mesmo cabeçalho Bearer. A documentação do TypingMind não traz um exemplo completo para esse tipo, então o formato com a rota completa é inferido dos outros três, não citado.
  • Gemini API — não serve para este endpoint. Ela espera o formato de solicitação nativo do Google; acesse os modelos Gemini usando o tipo Chat Completions.

Esta não é a API do TypingMind

“TypingMind API” geralmente se refere à API REST de uma instância do TypingMind Teams (custom.typingmind.com), que gerencia essa instância de chat. Ela não vende tokens de modelos e não tem relação com esta configuração. Um modelo personalizado é simplesmente o TypingMind chamando o endpoint de outra pessoa com uma chave fornecida por você.

Duas cobranças separadas

A licença do TypingMind paga pelo aplicativo. Cada mensagem enviada por meio de um modelo personalizado é cobrada por token por quem controla a chave no cabeçalho — neste caso, Kunavo, com saldo pré-pago. Os níveis de licença e o custo de um mês de conversas com estas tarifas são detalhados em Preços e custos de API do TypingMind.

Quando Test & Save falha

  • 404 com “POST /v1 é a URL base, não um endpoint” (ou “Not found: /” quando a URL termina no host) — falta a rota em Endpoint URL. Ela deve terminar em /v1/chat/completions (ou /v1/messages, /v1/responses para esses tipos). Antes de 1º de outubro de 2026, ambos retornavam uma página HTML.
  • 404 com “No such endpoint” — a rota está escrita incorretamente, por exemplo, /v1/chat/completion. A mesma mensagem informa a rota mais próxima que Kunavo atende.
  • 404 com “Not found: /chat/completions. Kunavo's API lives under /v1” — a rota existe, mas falta /v1: Endpoint URL está como https://api.kunavo.com/chat/completions. Adicione /v1 antes da rota. (Verificado em 1º de outubro de 2026; antes desse dia, o mesmo erro retornava uma página HTML.)
  • 401 “Missing or invalid API key” — o cabeçalho está incorreto: Header Key deve ser Authorization e o valor deve começar com Bearer , ou a chave foi revogada.
  • Erro de modelo indisponível — o Model ID não está escrito como aparece na lista de GET /v1/models. Os IDs usam letras minúsculas e hífens.
  • Erro de rede ou CORS no console do navegador — verifique se Endpoint URL é https://api.kunavo.com e não o domínio do site; o host da API é quem envia os cabeçalhos CORS.

Perguntas frequentes

Como adiciono um modelo personalizado com minha própria chave de API no TypingMind?

Abra Models na barra lateral esquerda e clique em Add custom model, depois em Create Manually. Informe um Name, o Model ID exato e seu Context Length. Na aba Authentication, escolha API Type, cole a Endpoint URL completa — para um provedor compatível com OpenAI, ela termina em /v1/chat/completions — e defina Authentication Type como API Key via HTTP Header, com Header Key Authorization e Header Value Bearer seguido da sua chave. Clique em Test & Save. Esses rótulos foram consultados no aplicativo atual em 1º de outubro de 2026; a documentação mais antiga do TypingMind descreve o mesmo fluxo com uma redação ligeiramente diferente.

O TypingMind precisa de uma URL base ou do endpoint completo?

Do endpoint completo. O campo se chama Endpoint URL, e todos os exemplos completos na documentação do TypingMind usam uma rota completa, como https://api.minimax.io/v1/chat/completions ou uma URL do Azure terminada em /anthropic/v1/messages. O TypingMind não acrescenta um caminho; portanto, uma URL base como https://api.kunavo.com/v1, sozinha, direciona a solicitação para uma rota inexistente e retorna 404.

O TypingMind pode chamar Kunavo diretamente do navegador?

Sim, desde 29 de setembro de 2026, quando a API da Kunavo começou a enviar cabeçalhos CORS. O TypingMind faz solicitações aos modelos diretamente da página da web, então o endpoint precisa permitir a origem dessa página. Em 1º de outubro de 2026, solicitações enviadas de typingmind.com para /v1/chat/completions, /v1/messages e /v1/models da Kunavo retornaram access-control-allow-origin: * com um corpo legível. Essas solicitações usaram intencionalmente uma chave inválida, então comprovam que o acesso pelo navegador está liberado, não que uma conversa completa tenha sido executada.

Preciso do proxy do TypingMind ou do roteamento pelo TypingMind Cloud?

Não para Kunavo. A aba Request Options tem uma opção Route requests via TypingMind Cloud, descrita no formulário como uma forma de encaminhar solicitações pelo servidor do TypingMind para contornar as restrições CORS do navegador. A API da Kunavo já permite chamadas pelo navegador; portanto, deixá-la desativada mantém a solicitação indo diretamente do seu navegador ao endpoint.

Kunavo testou o TypingMind de ponta a ponta?

Não com uma chave válida. O que foi verificado em 1º de outubro de 2026 é o formulário Add Custom Model atual e uma solicitação do navegador, a partir da página typingmind.com, para Kunavo com uma chave inválida, que retornou conteúdo legível com cabeçalhos CORS. Nenhuma chamada de geração de texto, resposta em streaming ou chamada de ferramenta foi executada pelo TypingMind contra Kunavo, e o botão Test & Save não foi pressionado. Considere seu próprio Test & Save e a primeira mensagem como a verificação de ponta a ponta.