O que é uma chave de API e como armazená-la com segurança
O que é uma chave de API de IA, onde obtê-la, por que ela deve ficar fora do seu código e do git, como fazer uma primeira chamada e o que fazer se a chave vazar.

Nesta página
Você se inscreveu em uma API de IA e a primeira coisa que ela pede é uma chave. Este guia explica o que é uma chave de API, de onde ela vem, como mantê-la segura e o que fazer se ela acabar onde não deveria.
O que é uma chave de API#
Uma chave de API é uma longa sequência de letras e dígitos que informa ao serviço quem está enviando uma requisição. Pense nela como uma senha para programas: seu script envia a chave a cada requisição, e o serviço a usa para encontrar sua conta e descontar o custo da requisição do seu saldo.
Duas coisas decorrem disso:
- Quem tem a chave pode gastar seu saldo. O serviço não consegue diferenciar você de alguém que copiou sua chave.
- A chave não é o modelo nem o saldo. Ela é apenas o passe. O saldo é uma coisa separada que você recarrega, e a mesma chave funciona com qualquer modelo que sua conta possa usar.
O custo de uma requisição é contado em tokens. Se tokens são novidade para você, comece com O que é um token em IA?.
Onde obter uma chave#
Cada serviço de IA emite chaves a partir do seu próprio painel. Por exemplo, a API oficial da DeepSeek tem uma página de chaves de API em platform.deepseek.com/api_keys, e sua documentação lê a chave da variável de ambiente DEEPSEEK_API_KEY (verificado em 21 de outubro de 2026). O fluxo geral é o mesmo em quase todos os lugares:
- Crie uma conta.
- Abra a página de chaves de API no painel.
- Pressione o botão que cria uma nova chave e dê um nome a ela, por exemplo
my-first-script. - Copie a chave imediatamente. Muitos serviços a mostram apenas uma vez.
Com a CheapTokens, os passos da conta até a chave estão em Sua primeira requisição de API com a CheapTokens. A CheapTokens funciona com um saldo pré-pago em USD: um saldo para todos os modelos. Se uma requisição falhar porque o saldo está vazio, veja Erro "Not enough tokens".
Onde uma chave nunca deve estar#
A maioria dos vazamentos não são hacks. São erros de copiar e colar:
- uma chave escrita diretamente no código (
api_key="sk-...") e depois enviada ao GitHub; - uma chave em uma captura de tela, uma mensagem de chat ou uma pergunta em um fórum;
- uma chave em código de front-end (uma página web ou um aplicativo móvel): qualquer um pode abri-la e lê-la;
- um arquivo
.envque foi commitado no git.
O último é o mais comum. Mesmo que você exclua o arquivo no próximo commit, a chave permanece no histórico do git, então uma chave que já foi commitada deve ser tratada como vazada.
Armazene a chave em uma variável de ambiente#
Uma variável de ambiente é um valor nomeado que fica no seu sistema, não no seu código. O programa a lê quando inicia, então o código pode ser compartilhado com segurança e a chave fica na sua máquina.
No Linux ou macOS, defina-a para o terminal atual:
export CHEAPTOKENS_API_KEY="YOUR_API_KEY"No Windows PowerShell:
$env:CHEAPTOKENS_API_KEY = "YOUR_API_KEY"Isso dura até você fechar o terminal. Para mantê-la entre sessões, coloque a linha no perfil do seu shell, ou use um arquivo .env para o projeto e adicione-o ao .gitignore antes do primeiro commit:
# .gitignore
.envDepois leia a chave no código. Nunca a digite lá:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"], # read from the environment, not written in the code
)Se a variável estiver faltando, os.environ[...] interrompe o programa com um erro imediatamente, o que é melhor do que enviar uma requisição com uma chave vazia.
Faça uma primeira chamada#
A CheapTokens fala os formatos OpenAI Chat Completions e Anthropic Messages, então os SDKs padrão funcionam: você só altera a URL base e a chave. Aqui está um teste completo com MiniMaxAI/:
import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.cheaptokens.dev/v1",
api_key=os.environ["CHEAPTOKENS_API_KEY"],
)
response = client.chat.completions.create(
model="MiniMaxAI/MiniMax-M2.7",
messages=[{"role": "user", "content": "Explain what an API key is in two sentences."}],
max_tokens=200,
)
print(response.choices[0].message.content)O mesmo com curl, onde o shell substitui a variável e a chave nunca aparece no comando:
curl https://api.cheaptokens.dev/v1/chat/completions \
-H "Authorization: Bearer $CHEAPTOKENS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "MiniMaxAI/MiniMax-M2.7", "messages": [{"role": "user", "content": "Hello"}], "max_tokens": 100}'Um teste curto como este é barato. Por exemplo, uma requisição com 1.000 tokens de entrada e 500 tokens de saída custa $0.00013 pelo preço atual. O MiniMax-M2.7 também tem contexto de 180K e fornece respostas de até 8.192 tokens, então é um modelo confortável para primeiros experimentos. Se a resposta parar no meio da frase, veja Por que uma resposta de IA para no meio da frase?.
Copie o id do modelo da documentação da CheapTokens em vez de outro serviço: os nomes dos modelos diferem entre provedores.
Hábitos que mantêm uma chave segura#
- Uma chave por projeto. Se uma vazar, você substitui apenas aquela e nada mais para de funcionar.
- Dê nomes às chaves que digam onde são usadas (
laptop-script,telegram-bot), para que você saiba o que atualizar após uma substituição. - Mantenha o saldo pequeno enquanto estiver aprendendo. Com um saldo pré-pago, o dano de uma chave vazada é limitado pelo que há nele, mas ainda é seu dinheiro.
- Não cole chaves em chats com pessoas ou assistentes de IA, e remova-as de logs e capturas de tela.
- Não coloque a chave em um navegador ou aplicativo móvel. Chame a API de um servidor que você controla, e deixe o aplicativo falar com esse servidor.
O que fazer se uma chave vazar#
Se você enviou uma chave para um repositório público, a enviou em uma mensagem ou simplesmente não tem certeza, aja como se ela já estivesse nas mãos de outra pessoa:
- Revogue a chave primeiro. Abra a página onde você a criou e exclua-a ou desative-a. Faça isso antes de qualquer outra coisa; a limpeza vem depois.
- Crie uma nova chave com um novo nome.
- Substitua-a em todos os lugares onde era usada: variáveis de ambiente, arquivos
.env, servidores, aplicativos e ferramentas. - Verifique seu saldo e uso. Requisições que você não fez são um sinal de que a chave antiga foi usada.
- Limpe o código-fonte. Remova a chave do código e adicione
.envao.gitignore. Excluir o arquivo não remove a chave do histórico do git, e é por isso que o passo 1 importa mais do que reescrever o histórico.
A ordem é importante. Uma chave revogada é inofensiva mesmo que permaneça em um commit antigo.
Próximos passos#
- Faça sua primeira requisição com uma chave: Sua primeira requisição de API com a CheapTokens.
- Entenda pelo que você paga: O que é um token em IA?.
- Recarregue o saldo quando ele acabar: Erro "Not enough tokens".
Pronto para experimentar? Obtenha uma chave CheapTokens, defina-a como CHEAPTOKENS_ e execute o exemplo acima.
Endpoints, ids de modelos e limites para cada modelo estão na documentação da CheapTokens.



