GetAiApiKey/Checklist de API de IA para Produção
Testador de chave de API de IA: verifique uma chave em 30 segundos
Você não precisa de um site para atuar como testador de chave de API de IA. Uma única chamada curl, ou seis linhas de Python, informam se uma chave é válida, se o modelo responde e quanto saldo resta.
Atualizado

Pontos principais
- Chame GET /v1/models primeiro: isso prova a chave e a base URL sem gastar tokens em uma conclusão.
- Uma chamada de chat de um único token prova que o modelo funciona, e X-Balance-USD mostra seu saldo.
- Nunca cole uma chave ativa em um verificador online desconhecido; teste localmente.
- Falhas comuns vêm de uma base URL errada, falta do prefixo Bearer ou de um limite.
Por que testar localmente em vez de em uma página web
Pesquisar por um testador de chave de API de IA traz muitas páginas onde você cola uma chave e clica em um botão. Evite-as. Uma chave é uma senha que gasta seu dinheiro, e você não sabe o que uma página assim faz com ela. Os testes abaixo levam meio minuto, rodam na sua própria máquina e enviam a chave apenas para a API que você deseja usar.
Você precisa de três coisas: a chave, a base URL https://api.getaiapikey.com/v1 e o ID do modelo uncensored. Coloque a chave em uma variável de ambiente para que ela não acabe no histórico do shell ou em um arquivo que você possa commitar.
export API_KEY="paste-your-key-here"
As chaves vêm da página de chaves de API. Se você ainda não tem uma, novos usuários podem reivindicar $0,50 de crédito de teste lá com um clique após o cadastro, o que é mais do que suficiente para todos os testes deste artigo várias vezes.
Verificação 1: listar modelos com curl
O teste mais barato é a lista de modelos. Ele precisa de uma chave válida e uma base URL correta, e não gera nenhum texto.
curl -i https://api.getaiapikey.com/v1/models \
-H "Authorization: Bearer $API_KEY"
A flag -i imprime os cabeçalhos da resposta. Uma resposta saudável começa com HTTP/2 200 e um corpo JSON que inclui o ID do modelo uncensored. Se você vir um erro de autenticação, geralmente status 401, a chave está errada, foi copiada com um espaço no final ou o cabeçalho está faltando a palavra Bearer. Um 404 significa que a URL está errada, mais frequentemente por falta de /v1 ou por ter um /v1 duplicado.
Verificação 2: executar uma conclusão real
Uma chave pode ser válida e ainda falhar em uma solicitação real, por exemplo, porque o saldo está vazio. Então envie uma chamada de chat pequena e limite a saída para manter o custo próximo de zero:
curl -i https://api.getaiapikey.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","max_tokens":5,"messages":[{"role":"user","content":"Say ok."}]}'
Leia os cabeçalhos antes do corpo. X-Request-Id identifica a chamada, que é o que o suporte pede. X-Balance-USD mostra quanto crédito resta. X-RateLimit-Limit-Requests e X-RateLimit-Limit-Concurrency revelam os limites da sua chave: 300 e 8 para uma chave completa, 60 e 2 para uma chave de teste. Essa única chamada verifica portanto autenticação, o modelo, o saldo e o tipo de chave.
O preço do teste é insignificante. Um prompt de cerca de 10 tokens e uma resposta de 5 tokens custam 10 x $0.15 / 1M + 5 x $0.50 / 1M, que é cerca de $0.000004. Requisições falhas ou recusadas não são cobradas de forma alguma.
Verificação 3: o mesmo teste em Python
Se o seu código real usa Python, teste-o da maneira como o código será executado. Este script usa o pacote oficial openai, então uma aprovação aqui significa que a configuração do seu aplicativo também funciona:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.getaiapikey.com/v1",
api_key=os.environ["API_KEY"],
)
raw = client.chat.completions.with_raw_response.create(
model="uncensored",
max_tokens=5,
messages=[{"role": "user", "content": "Say ok."}],
)
print("status:", raw.status_code)
print("balance:", raw.headers.get("X-Balance-USD"))
print("req/min limit:", raw.headers.get("X-RateLimit-Limit-Requests"))
print("concurrency limit:", raw.headers.get("X-RateLimit-Limit-Concurrency"))
print("reply:", raw.parse().choices[0].message.content)
O wrapper with_raw_response dá acesso aos cabeçalhos enquanto parse() retorna o objeto de resposta usual. A configuração do Python em si é coberta em como instalar um cliente LLM em Python se a importação falhar.
Verifique seu saldo sem uma conclusão
Para ler o saldo sem gerar texto, chame um dos endpoints de saldo. Há um estilo OpenAI e um curto:
curl https://api.getaiapikey.com/v1/balance \
-H "Authorization: Bearer $API_KEY"
curl https://api.getaiapikey.com/v1/dashboard/billing/credit_grants \
-H "Authorization: Bearer $API_KEY"
Ferramentas que já esperam o formato de concessão de crédito do OpenAI podem usar o segundo caminho sem alterações. Adicione uma chamada assim a um script de monitoramento e você receberá um aviso antes que um bot de produção fique sem crédito. As recargas começam em $20 e o crédito nunca expira, então não há penalidade por manter uma reserva confortável. Valores e bônus estão na página de preços.
Transforme o teste em uma verificação de saúde
Depois que a chave funcionar, mantenha o teste. Um pequeno script que roda em um cronograma informa sobre uma implantação ruim, um segredo expirado ou um saldo baixo antes que seus usuários percebam. Aqui está uma versão para Node usando o fetch embutido (Node 18 ou posterior):
const base = "https://api.getaiapikey.com/v1";
async function check() {
const res = await fetch(`${base}/chat/completions`, {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "uncensored",
max_tokens: 5,
messages: [{ role: "user", content: "Say ok." }],
}),
});
const balance = Number(res.headers.get("X-Balance-USD"));
console.log(res.status, "balance:", balance);
if (res.status >= 400 || balance < 5) process.exitCode = 1;
}
check();
O script sai com um código diferente de zero quando a chamada falha ou o saldo cai abaixo de $5, então um job cron ou etapa de CI pode alertá-lo. Escolha o limite com base na sua própria taxa de consumo: a $2 por dia, $5 dá a você pouco mais de dois dias de aviso.
O que um teste aprovado não prova
Uma marca verde mostra que a autenticação, o roteamento e o modelo estão funcionando naquele momento, com baixa carga. Isso não mostra como seu aplicativo se comporta com 20 usuários ao mesmo tempo. Para isso, lembre-se dos limites: uma chave completa executa 8 requisições ao mesmo tempo, e as requisições em streaming mantêm sua posição até o fim do streaming. Faça teste de carga do seu próprio código com um limite de chamadas paralelas antes do lançamento.
Leitura de falhas
| O que você vê | Motivo mais provável | O que fazer |
|---|---|---|
| Erro de autenticação, geralmente 401 | Chave errada, espaço extra, sem prefixo Bearer | Copie novamente a chave, verifique a string do cabeçalho |
| 404 ou HTML em vez de JSON | URL base errada | Use exatamente https://api.getaiapikey.com/v1 |
| Modelo não encontrado | ID de modelo diferente na solicitação | Defina model para uncensored |
429 com rate_limited ou concurrency | Muitas requisições por minuto ou ao mesmo tempo | Aguarde, depois tente novamente com um atraso |
429 com Retry-After: 5 | Sobrecarga temporária | Espere 5 segundos e tente novamente |
| Erro de conexão ou tempo limite | Rede, proxy ou firewall | Teste em outra rede, verifique variáveis de proxy |
Requisições acima de 8 MB são rejeitadas, então se apenas chamadas grandes falharem, verifique o tamanho do corpo. A documentação lista todos os códigos de erro e cabeçalhos.
Boas práticas para lidar com uma chave
- Mantenha a chave em uma variável de ambiente ou loja de segredos, nunca em código do lado do cliente, repositório público ou captura de tela.
- Use uma chave por aplicativo onde puder, para que um vazamento seja fácil de rastrear e substituir.
- Se uma chave pode ter vazado, substitua-a, depois verifique o saldo para gastos inesperados.
- Não compartilhe uma chave de teste entre vários programas: com 2 requisições simultâneas, ela atingirá os limites rapidamente.
Se você só quer ver se existe uma opção gratuita antes de se cadastrar, o artigo sobre uma chave de API LLM gratuita explica o que está disponível. Caso contrário, as três verificações acima são tudo o que uma chave precisa para ser testada.
Mais guias
Perguntas e respostas
Existe um testador de chaves online oficial?
Você não precisa de um. GET /v1/models, mais uma pequena chamada de chat, executada na sua própria máquina, verifica a chave, o modelo e o saldo sem expor a chave a um terceiro.
Testar uma chave custa dinheiro?
Uma chamada curta com max_tokens definido como 5 custa alguns milionésimos de dólar. Requisições falhas ou recusadas não são cobradas.
Como diferenciar uma chave de teste de uma chave completa?
Leia os cabeçalhos X-RateLimit-Limit-Requests e X-RateLimit-Limit-Concurrency. Uma chave de teste mostra 60 e 2, uma chave completa mostra 300 e 8.
Minha chave funciona no curl, mas não no meu app. Por quê?
Compare a base URL, o ID do modelo e o cabeçalho Authorization no seu app com a chamada curl. Os principais culpados costumam ser a falta de /v1, um espaço em branco no final da chave e uma variável de ambiente desatualizada.
Sua chave está a um formulário de distância
Crie uma conta, copie a chave e altere a URL base. Essa é toda a configuração.