Documentazione

Documentazione

TypingMind

TypingMind non offre un campo per l’URL di base per i modelli personalizzati: ciascun modello è una voce distinta con la route completa dell’endpoint, l’ID modello, la lunghezza del contesto e la chiave, inserita manualmente come intestazione. Ecco la voce per Kunavo e il motivo per cui ora funziona dal browser, mentre un mese fa non funzionava.

Models → Add custom model: l'Endpoint URL completo https://api.kunavo.com/v1/chat/completions, un header Authorization con Bearer e la tua chiave, il Model ID e la sua lunghezza di contesto — una voce per modello, chiamata direttamente dal browser.

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
L’Endpoint URL è la route completa, non un URL di base. Per il tipo di API OpenAI Chat Completions, è https://api.kunavo.com/v1/chat/completions. TypingMind non aggiunge nulla: nei suoi esempi pratici vengono incollate route complete come https://api.minimax.io/v1/chat/completions. Inserendo solo https://api.kunavo.com/v1, quindi, la richiesta di chat viene inviata a un percorso inesistente.
Ora funziona con Kunavo direttamente dal browser. La documentazione di TypingMind indica che le richieste vengono inviate “direttamente dal browser”, quindi l’endpoint deve consentire l’origine della pagina. Il 29 settembre 2026 l’API di Kunavo ha aggiunto le intestazioni CORS. Il 1º ottobre 2026, una richiesta inviata direttamente dalla pagina typingmind.com ha restituito access-control-allow-origin: * e una risposta leggibile da ciascuno degli endpoint /v1/chat/completions, /v1/messages e /v1/models. Per questo endpoint non è necessaria l’opzione Route requests via TypingMind Cloud.
Quali verifiche sono state eseguite e quali no. Le etichette del modulo qui sopra sono state lette nell’app attiva il 1º ottobre 2026 e la richiesta cross-origin è stata inviata da quella pagina usando una chiave volutamente non valida: è quindi stato dimostrato che il browser consente a TypingMind di raggiungere Kunavo e leggere la risposta. Non sono state eseguite chiamate di completamento, streaming o agli strumenti tramite TypingMind e Kunavo con una chiave valida, e non è stato premuto il pulsante Test & Save. La prima verifica completa da un’estremità all’altra sarà quella che eseguirai con il tuo Test & Save.
Non hai ancora una chiave? Crea un account Kunavo, genera una chiave (inizia con sk-kn-) e aggiungi credito da $10: le chiamate vengono pagate con quel saldo e le chiamate non riuscite non vengono addebitate. La dashboard si apre quindi sulla configurazione TypingMind.

Passo dopo passo

  1. Crea una chiave su /app/keys e copiala: viene mostrata una sola volta.
  2. In TypingMind, apri Models nella barra laterale sinistra e fai clic su Add custom model. Resta su Create Manually; Import JSON e Import OpenRouter sono destinati ad altre fonti.
  3. Compila Name (a piacere), Model ID (esattamente come indicato in GET /v1/models, ad esempio claude-sonnet-5) e Context Length. Il modulo inserisce in automatico il valore 128000; imposta la finestra effettiva del modello, consultando la pagina dei modelli, perché TypingMind usa questo numero per stabilire quanta cronologia inviare.
  4. Nella scheda Autenticazione, scegli Tipo di API = OpenAI Chat Completions API, incolla l’URL endpoint completo, imposta Tipo di autenticazione su API Key via HTTP Header e inserisci Chiave intestazione Authorization con Valore intestazione Bearer sk-kn-... — la parola Bearer, uno spazio e poi la chiave.
  5. In Funzionalità, seleziona manualmente le funzioni oppure lascia attiva l’opzione Controlla automaticamente le funzionalità al salvataggio: il modulo indica che al salvataggio invia «alcune richieste di test», che consumano una manciata di token. Facoltativamente, compila Prezzi con le tariffe per milione riportate nella tabella qui sotto, così il calcolo dei costi di TypingMind corrisponde alla tua fattura. Poi fai clic su Test & Save.
  6. Ripeti l’operazione per ogni modello. Non esiste una voce a livello di provider per un endpoint personalizzato: Claude Sonnet, Claude Haiku e un modello GPT sono tre modelli personalizzati distinti con lo stesso URL endpoint e la stessa intestazione.

Verificato rispetto a Documentazione dei modelli di TypingMind il 1 ottobre 2026. Le impostazioni di terze parti cambiano; se il nome di un campo qui non corrisponde più a quello visualizzato, fa fede quella pagina, non questa.

Questa è la versione breve. La guida completa, con scelta del modello, costo di una sessione reale e modalità di errore, è in Prezzi e costi API di TypingMind.

Verifica prima di eseguire il debug del client

Una sola richiesta stabilisce se il problema riguarda l'endpoint, la chiave o il file di configurazione. Se restituisce JSON, lo stesso base URL e la stessa chiave funzionano in 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-..."

Quale model id inserire nel campo

Ogni modello di testo è raggiungibile come model id: l'elenco aggiornato è GET /v1/models e il catalogo con i prezzi è nella pagina dei modelli. Le tariffe sono in USD per 1M di token, input / output.

ID del modelloKunavo ingresso / uscitaDove si inserisce in TypingMind
claude-sonnet-5$1.40 / $7.00Il modello per l’uso quotidiano con chat e documenti lunghi — lunghezza del contesto 1000000
claude-haiku-4-5$0.70 / $3.50Una seconda opzione economica per domande rapide e titoli — lunghezza del contesto 200000
claude-opus-5$3.50 / $17.50Ragionamento complesso in un’unica chat, da usare con criterio — lunghezza del contesto 1000000
La fatturazione è per token, usando un saldo prepagato senza canone mensile: vedi billing. In presenza di contesto ripetuto, che costituisce la maggior parte di ciò che invia un editor o un client di chat, prompt caching incide sulla spesa più della scelta del modello.

Gli altri tre tipi di API

Il menu a discesa Tipo di API nel modulo attuale offre OpenAI Chat Completions API, OpenAI Responses API, Claude Messages API e Gemini API. Kunavo supporta i primi tre; ognuno richiede il percorso completo corrispondente in URL endpoint.

  • Claude Messages API — URL endpoint https://api.kunavo.com/v1/messages. L’esempio in formato Claude fornito da TypingMind usa un’intestazione x-api-key; su questo percorso Kunavo accetta sia quella sia Authorization: Bearer. Su questo percorso Kunavo serve solo ID della famiglia Claude.
  • OpenAI Responses API — URL endpoint https://api.kunavo.com/v1/responses, stessa intestazione Bearer. La documentazione di TypingMind non include un esempio completo per questo tipo, quindi l’uso del percorso completo è dedotto dagli altri tre e non riportato testualmente.
  • Gemini API — non per questo endpoint. Si aspetta il formato nativo delle richieste di Google; per raggiungere i modelli Gemini, usa il tipo Chat Completions.

Questa non è la TypingMind API

Con «TypingMind API» si intende di solito la REST API di un’istanza TypingMind Teams (custom.typingmind.com), che gestisce quell’istanza di chat. Non vende token per i modelli e non ha nulla a che fare con questa configurazione. Un modello personalizzato consiste semplicemente nel fatto che TypingMind chiama l’endpoint di qualcun altro usando una chiave fornita da te.

Due fatture separate

La licenza TypingMind paga l’app. Ogni messaggio inviato tramite un modello personalizzato viene fatturato a token dal titolare della chiave nell’intestazione — in questo caso Kunavo, tramite un saldo prepagato. Le fasce di licenza e il costo di un mese di chat a queste tariffe sono illustrati in Prezzi e costi API di TypingMind.

Se Test & Save non riesce

  • 404 con «POST /v1 è l’URL di base, non un endpoint» (oppure «Not found: /» se l’URL termina all’host) — all’URL endpoint manca il percorso. Deve terminare in /v1/chat/completions (oppure /v1/messages, /v1/responses per quei tipi). Prima del 1 ottobre 2026, entrambi restituivano una pagina HTML.
  • 404 con «No such endpoint» — il percorso è scritto in modo errato, per esempio /v1/chat/completion. Lo stesso messaggio indica il percorso più simile tra quelli serviti da Kunavo.
  • 404 con «Not found: /chat/completions. Kunavo's API lives under /v1» — il percorso esiste, ma manca /v1: l’URL endpoint è https://api.kunavo.com/chat/completions. Aggiungi /v1 prima del percorso. (Verificato il 1 ottobre 2026; prima di quella data lo stesso errore restituiva una pagina HTML.)
  • 401 «Missing or invalid API key» — l’intestazione non è corretta: Chiave intestazione deve essere Authorization e il valore deve iniziare con Bearer , oppure la chiave è stata revocata.
  • Errore di modello non disponibile — l’ID modello non è scritto come indicato in GET /v1/models. Gli ID sono in minuscolo e separati da trattini.
  • Errore di rete o CORS nella console del browser — verifica che l’URL endpoint sia https://api.kunavo.com e non il dominio del sito web; è l’host API a inviare le intestazioni CORS.

Domande frequenti

Come aggiungo un modello personalizzato con la mia chiave API in TypingMind?

Apri Modelli nella barra laterale sinistra e fai clic su Add custom model, poi su Create Manually. Assegna un Nome, l’ID modello esatto e la sua Lunghezza del contesto. Nella scheda Autenticazione, scegli il Tipo di API, incolla l’URL endpoint completo — per un provider compatibile con OpenAI, termina con /v1/chat/completions — e imposta Tipo di autenticazione su API Key via HTTP Header, con Chiave intestazione Authorization e Valore intestazione Bearer seguito dalla tua chiave. Fai clic su Test & Save. Queste etichette sono state lette dall’app attuale il 1 ottobre 2026; la documentazione precedente di TypingMind descrive lo stesso flusso con formulazioni leggermente diverse.

TypingMind richiede un URL di base o l’endpoint completo?

L’endpoint completo. Il campo si chiama URL endpoint e ogni esempio completo nella documentazione di TypingMind incolla un percorso completo, come https://api.minimax.io/v1/chat/completions o un URL Azure che termina in /anthropic/v1/messages. TypingMind non aggiunge un percorso, quindi un URL di base come https://api.kunavo.com/v1 usato da solo indirizza la richiesta a un percorso inesistente e restituisce un 404.

TypingMind può chiamare Kunavo direttamente dal browser?

Sì, dal 29 settembre 2026, quando l’API di Kunavo ha iniziato a inviare intestazioni CORS. TypingMind effettua le richieste ai modelli direttamente dalla pagina web, quindi l’endpoint deve consentire l’origine di quella pagina. Il 1 ottobre 2026, le richieste inviate da typingmind.com a /v1/chat/completions, /v1/messages e /v1/models di Kunavo hanno restituito access-control-allow-origin: * con un corpo leggibile. Per scelta, queste richieste usavano una chiave non valida: dimostrano quindi che il percorso dal browser è aperto, ma non che sia stata eseguita una chat completa.

Mi servono il proxy di TypingMind o l’instradamento TypingMind Cloud?

Non per Kunavo. La scheda Request Options include l’opzione Route requests via TypingMind Cloud, descritta nel modulo come un modo per instradare le richieste attraverso il server di TypingMind ed evitare le restrizioni CORS del browser. L’API di Kunavo consente già le chiamate dal browser, quindi lasciando l’opzione disattivata la richiesta passa direttamente dal browser all’endpoint.

Kunavo ha testato TypingMind end-to-end?

Non con una chiave funzionante. Il 1 ottobre 2026 è stato verificato il modulo attuale Add Custom Model e una richiesta dal browser della pagina typingmind.com a Kunavo con una chiave non valida, che ha restituito una risposta leggibile con intestazioni CORS. Non sono stati eseguiti tramite TypingMind con Kunavo completamenti, risposte in streaming o chiamate a strumenti, e non è stato premuto il pulsante Test & Save. Usa il tuo Test & Save e il primo messaggio come verifica end-to-end.