Quickstart
Faça sua primeira chamada IA via Tokia em ~3 minutos. Você vai precisar de uma conta Google e R$ 10 pra recarga PIX (saldo não expira).
Última verificação: 2026-05-19 · funcional contra `api.usetokia.com/v1`
Já tem conta? Pula pra primeira chamada →
Passo 1
Criar conta
~30s
Passo 2
Recarregar PIX
~1min
Passo 3
Criar API key
~30s
Passo 4
Primeira chamada
~10s
1. Criar conta
- Acesse usetokia.com/dashboard — você será redirecionado pra login Google.
- Autorize o acesso (Tokia recebe email + nome + foto).
- Dashboard aparece com saldo R$ 0,00.
2. Recarregar via PIX
- Na tela "Saldo", digite
R$ 10(mínimo) ou clique em um preset. - Clique Gerar QR PIX. Na primeira vez, aparece o modal Complete seu cadastro pedindo CPF ou CNPJ — preencha (Asaas exige pra antifraude/nota fiscal).
- Pague o QR pelo app do banco. Saldo cai em até 30 segundos.
✓Saldo não expira e você pode recarregar a qualquer momento. Cada chamada IA debita o valor proporcional (markup decrescente — modelos baratos pagam 3x, caros pagam 1.5x).
3. Criar API key
- Vá em API Keys na sidebar do dashboard.
- Clique Criar key. Dê um nome (
produção-app) e opcionalmente desmarque modelos que você não usa (ex: deixar só LLM). - A key plaintext aparece uma vez — copie e salve em
.envou cofre seguro. Depois você só vê o prefixo (sk-tokia-AbCdEf12...).
4. Primeira chamada
Cole no terminal substituindo $TOKIA_KEY pela key copiada:
bash
curl https://api.usetokia.com/v1/chat/completions \
-H "Authorization: Bearer $TOKIA_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openrouter/openai/gpt-4o-mini",
"messages": [
{ "role": "user", "content": "Diga oi em 1 palavra" }
],
"max_tokens": 5
}'Resposta esperada:
json
{
"id": "chatcmpl-...",
"model": "openrouter/openai/gpt-4o-mini",
"choices": [
{ "message": { "role": "assistant", "content": "Olá!" }, "finish_reason": "stop" }
],
"usage": { "prompt_tokens": 17, "completion_tokens": 2, "total_tokens": 19 }
}Após ~60s (cron de reconcile do Tokia), o gasto aparece no dashboard em Uso. O custo BRL é calculado como spend_usd × fx_BCB × markup_modelo.
5. Em Python (OpenAI SDK)
python
from openai import OpenAI
client = OpenAI(
api_key="sk-tokia-...", # sua key Tokia
base_url="https://api.usetokia.com/v1",
)
response = client.chat.completions.create(
model="openrouter/openai/gpt-4o-mini",
messages=[{"role": "user", "content": "Diga oi"}],
)
print(response.choices[0].message.content)6. Em Node.js (OpenAI SDK)
typescript
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.TOKIA_KEY,
baseURL: "https://api.usetokia.com/v1",
});
const res = await client.chat.completions.create({
model: "openrouter/openai/gpt-4o-mini",
messages: [{ role: "user", content: "Diga oi" }],
});
console.log(res.choices[0].message.content);Cookbook · receitas práticas
Snippets prontos pros casos de uso mais comuns. Copie, troque a key e roda.
Chat com tool calling (function calling)
python
from openai import OpenAI
client = OpenAI(api_key="sk-tokia-...", base_url="https://api.usetokia.com/v1")
tools = [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Consulta clima atual",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"]
}
}
}]
resp = client.chat.completions.create(
model="openrouter/openai/gpt-4o-mini", # ou claude, gemini — todos suportam tools
messages=[{"role": "user", "content": "Qual a temperatura em Brasília?"}],
tools=tools,
)
print(resp.choices[0].message.tool_calls) # [{name: 'get_weather', arguments: '{"city":"Brasília"}'}]Embeddings + busca semântica
python
from openai import OpenAI
import numpy as np
client = OpenAI(api_key="sk-tokia-...", base_url="https://api.usetokia.com/v1")
# Gera embeddings em batch (1 chamada, N textos)
texts = ["Tokia gateway IA brasileiro", "Pague em BRL via PIX", "API OpenAI-compatible"]
result = client.embeddings.create(
model="openrouter/openai/text-embedding-3-small",
input=texts,
)
vectors = np.array([e.embedding for e in result.data])
# Busca: cosine similarity entre query e corpus
query_vec = client.embeddings.create(
model="openrouter/openai/text-embedding-3-small",
input="como pagar?",
).data[0].embedding
sims = np.dot(vectors, query_vec) / (np.linalg.norm(vectors, axis=1) * np.linalg.norm(query_vec))
print(texts[np.argmax(sims)]) # → "Pague em BRL via PIX"Whisper · transcrever áudio pt-BR
bash
curl https://api.usetokia.com/v1/audio/transcriptions \
-H "Authorization: Bearer $TOKIA_KEY" \
-F file=@reuniao.mp3 \
-F model=openrouter/openai/whisper-large-v3 \
-F language=ptStreaming (SSE) — token-by-token
typescript
const stream = await client.chat.completions.create({
model: "openrouter/openai/gpt-4o-mini",
messages: [{ role: "user", content: "Conte uma piada curta" }],
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}Próximos passos
- Referência completa de
/v1/chat/completionscom todos os parâmetros. - Embeddings e Whisper (audio) — detalhes dos endpoints.
- Auto Top-Up — recarrega cartão automaticamente quando saldo cai abaixo do limiar.
- Migrar do OpenAI — guia completo + tabela de compatibilidade.
- Pricing calculator — estima custo BRL/mês baseado em tokens.