Pular para o conteúdo

Como obter a chave de API do Twitter (X)

Para obter a chave de API do Twitter (X), entre em console.x.com com a sua conta do X, aceite o Developer Agreement, crie um app e guarde as chaves e o Bearer token dele, e depois compre créditos: as leituras custam US$ 0,005 por post.

Resposta curta: O console emite a chave de API, o secret dela, um Bearer token e as credenciais OAuth quando o app é criado, e mostra cada um uma única vez. Enquanto você não compra créditos, toda requisição responde HTTP 402 CreditsDepleted. Para ler dados públicos do X com uma única chave, use a Sorsa API: tweets a partir de US$ 0,014 por 1.000, e 100 requisições grátis não pedem cartão.

ApiKey: YOUR_API_KEY
uma chave, sem OAuth
Preço
a partir de US$ 0,014 por 1.000 tweets

#Como obter uma chave oficial da API do X, passo a passo

Uma chave oficial da API do X sai do X Developer Console, em console.x.com, o site em que o X emite todas as credenciais da API dele, e o caminho tem seis passos. O guia Getting Access (abre em uma nova aba) do X lista os quatro primeiros. Os créditos do passo 5 estão na página de preços dele, e a requisição do passo 6 falha sem eles.

Abrir uma conta de desenvolvedor e criar um app não custa nada. Ler custa: o X cobra US$ 0,005 por cada post que uma resposta devolve e US$ 0,010 por cada perfil ou seguidor, de um saldo que você recarrega adiantado. Nosso detalhamento dos preços da API do X lista todas as tarifas.

  1. Entre em console.x.com. Use a conta do X que deve ser dona do app; não existe login de desenvolvedor separado.

  2. Aceite o Developer Agreement. Leia e aceite o Developer Agreement and Policy do X e depois descreva em palavras simples o que você vai construir e quais dados vai ler. O X não divulga prazo de análise para esta etapa.

  3. Crie um app. Clique em New App e informe um nome, uma descrição e um caso de uso. O console gera as credenciais do app assim que ele existe.

  4. Guarde as credenciais. Copie a chave de API e o secret e o Bearer token. Se o app for publicar ou agir em nome de pessoas, copie também o access token e o secret ou o client ID e o secret do OAuth 2.0. Cada valor é mostrado uma única vez.

  5. Compre créditos. No console, adicione um cartão e compre créditos. Defina um limite de gasto enquanto testa; a recarga automática pode esperar até um trabalho que nunca possa parar.

  6. Envie uma requisição de teste. Consulte uma conta pública com o Bearer token no header Authorization. Um objeto JSON com id, name e username significa que a chave funciona, e a consulta custa US$ 0,010, o preço de uma leitura de usuário.

    Terminal
    curl "https://api.x.com/2/users/by/username/XDevelopers" \
      -H "Authorization: Bearer $X_BEARER_TOKEN"
    
    01 Entre em console.x.com Com a conta do X que será dona do app 02 Aceite o Contrato de Desenvolvedor Depois descreva em palavras simples o que fará 03 Crie um app com New App Nome, descrição, caso de uso; as credenciais aparecem logo 04 Salve as credenciais Chave, secret, Bearer token: cada um aparece uma vez Perdeu? Gere de novo 05 Compre créditos pré-pagos US$ 0,005 por post lido; sem créditos, toda chamada retorna 402 CreditsDepleted 06 Envie uma requisição de teste Bearer token no header; um app antigo pode retornar 403 client-not-enrolled
    Seis passos de console.x.com até uma chave oficial funcionando. O passo 5, os créditos, é o que o guia Getting Access do X deixa de fora.

Para ler posts e perfis públicos, o Bearer token é a única credencial que o seu código envia. Os access tokens e o par do OAuth 2.0 importam quando o app publica ou age em nome de outras pessoas, e a tabela de credenciais abaixo mostra qual é qual.

#Obtenha uma chave da Sorsa API em cerca de 3 minutos

Para ler dados públicos do X, use a Sorsa API, uma API e scraper do Twitter (X): uma chave substitui o app, as credenciais dele e o saldo de créditos, e os tweets custam a partir de US$ 0,014 por 1.000. Isso é 250 vezes menos que a API oficial do X. Nenhuma conta sua do X participa, então a sua conta corre risco zero, e a chave roda a 20 requisições por segundo em todos os planos, contas gratuitas incluídas.

  1. Crie sua conta. Crie sua conta com o Google ou com um e-mail. Não há cartão, conta do X nem análise, e a conta começa com 100 requisições grátis que nunca expiram.

  2. Copie a chave. A página de visão geral do painel mostra a sua chave de API. Guarde-a em uma variável de ambiente no seu servidor, como SORSA_API_KEY.

  3. Verifique a chave de graça. Chame GET /key-usage-info (abre em uma nova aba) com a chave no header ApiKey. Essa chamada nunca desconta das suas requisições, então testar uma chave não custa nada.

    Terminal
    curl "https://api.sorsa.io/v3/key-usage-info" \
      -H "ApiKey: YOUR_API_KEY"
    
    Response200 OK
    {
      "key_requests": 100,
      "remaining_requests": 100,
      "total_requests": 0
    }
    

remaining_requests é o que a chave ainda pode gastar. Em um plano pago, a resposta traz também valid_until, a data em que o saldo atual de requisições expira; as 100 requisições grátis não têm essa data. A partir daí, todos os endpoints da Sorsa API, 45 no total, usam o mesmo header: GET /info (abre em uma nova aba) devolve um perfil, e a busca, as timelines, os seguidores e os lotes de 100 tweets funcionam do mesmo jeito.

Lado a lado, a chave da Sorsa API precisa de menos peças, não custa nada para verificar e lê tweets por uma pequena fração do preço oficial:

O que é precisoChave da Sorsa APIChave da API oficial do X
Cadastro comE-mail ou GoogleSua conta do X
Antes de a chave aparecerSó o cadastroDeveloper Agreement, descrição de uso, um app
O que você guarda1 chave de APIAté 7 valores: chave e secret, Bearer token, access token e secret, client ID e secret
Header em toda requisiçãoApiKey: <chave>Authorization: Bearer <token>
Antes da primeira leitura100 requisições grátis, sem cartãoCréditos pré-pagos, ou HTTP 402
Conferir se a chave funcionaGET /key-usage-info, grátisUma leitura cobrada, como US$ 0,010 por um perfil
Taxa de requisições20 requisições por segundo em todos os planosJanelas separadas de 15 minutos para cada endpoint
1.000 tweetsA partir de US$ 0,014US$ 5,00
  • Cadastro com

    Chave da Sorsa API
    E-mail ou Google
    Chave da API oficial do X
    Sua conta do X
  • Antes de a chave aparecer

    Chave da Sorsa API
    Só o cadastro
    Chave da API oficial do X
    Developer Agreement, descrição de uso, um app
  • O que você guarda

    Chave da Sorsa API
    1 chave de API
    Chave da API oficial do X
    Até 7 valores: chave e secret, Bearer token, access token e secret, client ID e secret
  • Header em toda requisição

    Chave da Sorsa API
    ApiKey: <chave>
    Chave da API oficial do X
    Authorization: Bearer <token>
  • Antes da primeira leitura

    Chave da Sorsa API
    100 requisições grátis, sem cartão
    Chave da API oficial do X
    Créditos pré-pagos, ou HTTP 402
  • Conferir se a chave funciona

    Chave da Sorsa API
    GET /key-usage-info, grátis
    Chave da API oficial do X
    Uma leitura cobrada, como US$ 0,010 por um perfil
  • Taxa de requisições

    Chave da Sorsa API
    20 requisições por segundo em todos os planos
    Chave da API oficial do X
    Janelas separadas de 15 minutos para cada endpoint
  • 1.000 tweets

    Chave da Sorsa API
    A partir de US$ 0,014
    Chave da API oficial do X
    US$ 5,00

No código, leia a chave de uma variável de ambiente, ou cole-a no lugar de YOUR_API_KEY para uma primeira tentativa, e pare em qualquer status diferente de 200; o message do JSON diz o que deu errado.

import os
import requests

key = os.environ.get("SORSA_API_KEY", "YOUR_API_KEY")
r = requests.get("https://api.sorsa.io/v3/key-usage-info",
                 headers={"ApiKey": key}, timeout=30)
if r.status_code != 200:
    raise SystemExit(f"{r.status_code}: {r.json()['message']}")
print("requests left:", r.json()["remaining_requests"])

Se o motivo de você ter vindo até aqui é fugir do console do X de vez, o guia da API do Twitter sem conta de desenvolvedor mostra as primeiras leituras: tweets, busca e listas de seguidores.

#Qual credencial do X faz o quê

A API oficial do X emite quatro tipos de credenciais, e ler dados públicos exige só uma delas, o Bearer token. A chave de API e o secret, também chamados de consumer key e consumer secret, identificam o seu app e funcionam como o usuário e a senha dele. A página API Key and Secret (abre em uma nova aba) do X diz isso com essas palavras. As outras credenciais são geradas a partir delas, ou para uma pessoa que usa o seu app.

Só o Bearer token lê posts públicos sozinho, então um script que nunca publica pode ignorar as outras três linhas:

CredencialO que éPara que serveLê posts públicos sozinha
Chave de API e secret (consumer key e secret)A identidade do seu appAssinar requisições OAuth 1.0a, gerar o Bearer tokenNão
Bearer tokenToken OAuth 2.0 só do appLeituras públicas: posts, perfis, buscaSim
Access token e secretPar OAuth 1.0a da conta dona do appPublicar e agir como essa contaSim, como essa conta
Client ID e secret do OAuth 2.0A identidade do seu app no fluxo de loginDeixar outras pessoas entrarem com o X e agirem pelo seu appNão, eles geram tokens de usuário
  • Chave de API e secret (consumer key e secret)

    O que é
    A identidade do seu app
    Para que serve
    Assinar requisições OAuth 1.0a, gerar o Bearer token
    Lê posts públicos sozinha
    Não
  • Bearer token

    O que é
    Token OAuth 2.0 só do app
    Para que serve
    Leituras públicas: posts, perfis, busca
    Lê posts públicos sozinha
    Sim
  • Access token e secret

    O que é
    Par OAuth 1.0a da conta dona do app
    Para que serve
    Publicar e agir como essa conta
    Lê posts públicos sozinha
    Sim, como essa conta
  • Client ID e secret do OAuth 2.0

    O que é
    A identidade do seu app no fluxo de login
    Para que serve
    Deixar outras pessoas entrarem com o X e agirem pelo seu app
    Lê posts públicos sozinha
    Não, eles geram tokens de usuário

Um Bearer token perdido pode ser gerado de novo a partir da chave e do secret. O guia de Bearer token (abre em uma nova aba) do X os envia como um par de basic auth para oauth2/token, e o campo access_token do JSON que volta é o Bearer token:

Terminal
curl -u "$X_API_KEY:$X_API_SECRET" \
  --data "grant_type=client_credentials" \
  "https://api.x.com/oauth2/token"

As permissões pertencem ao app, não ao token. Um app definido como Read não consegue publicar. Mude-o para Read and write nas configurações de autenticação de usuário dele e depois gere o access token e o secret de novo: um token mantém as permissões com que foi criado. Um token feito antes da mudança é uma causa comum de 403 no primeiro post.

Escolha o trabalho que o seu código precisa fazer, e o seletor indica a credencial, o header e a primeira requisição:

O que seu código precisa fazer?

Ler posts e perfis públicos

Sorsa API

Credencial
Uma chave de API
Onde obter
No painel, logo após o cadastro
Cabeçalho
ApiKey: <key>
Primeira requisição
GET /v3/key-usage-info sem custo
1,000 tweets
a partir de US$ 0,014

API oficial do X

Credencial
Bearer token
Onde obter
A aba Keys and tokens do seu app
Cabeçalho
Authorization: Bearer <token>
Primeira requisição
GET /2/users/by/username/… a US$ 0,010
1,000 tweets
US$ 5,00

Postar na minha própria conta

API oficial do X

Credencial
Access token e secret, assinados com a chave e o secret da API
Onde obter
Keys and tokens, depois de configurar o app como Read and write
Cabeçalho
Authorization: OAuth … com uma assinatura OAuth 1.0a
Primeira requisição
POST /2/tweets
Cada post
US$ 0,015

Um post com link custa US$ 0,20. A Sorsa API é somente leitura por design: nunca posta, então sua conta do X fica fora disso.

Deixar outras pessoas entrarem com o X

API oficial do X

Credencial
Client ID e secret do OAuth 2.0
Onde obter
As configurações de autenticação de usuário do app, com uma URL de callback
Cabeçalho
Authorization: Bearer <user token> para cada pessoa
Primeira requisição
O fluxo de login: authorization code com PKCE
Lê e posta
tarifas oficiais

Cada pessoa conectada recebe o próprio token, e toda leitura ou post feito com ele é cobrado dos seus créditos.

Um trabalho, uma credencial: o seletor mostra de onde ela vem, qual cabeçalho a leva e quanto custa a primeira requisição.

#X-API-Key, Bearer ou ApiKey: qual header

A API oficial do X lê o token dela apenas do header Authorization: Bearer, e a Sorsa API lê a chave dela apenas do header ApiKey. Nenhuma das duas lê X-API-Key, um nome de header que muitas outras APIs usam para as chaves delas. O nome confunde porque parece "chave da API do X", mas não tem relação nenhuma com o X. Gateways de API e muitos produtos SaaS o usam, e uma chave colocada nele chega aos servidores do X como se não houvesse chave.

Sorsa API GET /v3/key-usage-info Host: api.sorsa.io ApiKey: YOUR_API_KEY Checagem da chave grátis, nunca contada X API oficial GET /2/users/by/username/XDevelopers Host: api.x.com Authorization: Bearer AAAA… Cobrado como leitura de usuário, US$ 0,010 Enviado como X-API-Key X-API-Key: YOUR_API_KEY Nome de header genérico: nenhuma API lê A Sorsa API responde 403 missing key in request header A X API oficial responde 401 Unauthorized
A Sorsa API lê a chave em ApiKey, a API oficial do X lê um Bearer token em Authorization, e nenhuma lê X-API-Key.

Enviamos as mesmas requisições às duas APIs em 2 de novembro de 2026, com chaves inventadas, e cada resposta abaixo é o que voltou:

O que enviamosA Sorsa API respondeuA API oficial do X respondeu
Nenhuma chave403 missing key in request header401 Unauthorized
Uma chave inventada no header certo401 invalid api key401 Unauthorized
A chave em um header X-API-Key403 missing key in request header401 Unauthorized
A chave como Authorization: Bearer403 missing key in request header401 Unauthorized
  • Nenhuma chave

    A Sorsa API respondeu
    403 missing key in request header
    A API oficial do X respondeu
    401 Unauthorized
  • Uma chave inventada no header certo

    A Sorsa API respondeu
    401 invalid api key
    A API oficial do X respondeu
    401 Unauthorized
  • A chave em um header X-API-Key

    A Sorsa API respondeu
    403 missing key in request header
    A API oficial do X respondeu
    401 Unauthorized
  • A chave como Authorization: Bearer

    A Sorsa API respondeu
    403 missing key in request header
    A API oficial do X respondeu
    401 Unauthorized

Então um 401 da API oficial do X significa que o token está errado, ausente ou foi enviado da forma errada, e não diz qual dos três. A Sorsa API distingue os dois casos: 401 invalid api key significa que o valor está errado, e 403 missing key in request header significa que o nome do header está.

#Quando uma chave nova falha: 401, 402, 403, 429

Uma chave nova da API oficial do X falha por quatro motivos, cada um com o seu código de status. O 401 indica um token errado ou regenerado, o 402 um saldo de créditos vazio, o 403 uma permissão ausente ou um app fora de um projeto, e o 429 uma janela de rate limit esgotada. Os mesmos números significam coisas diferentes na Sorsa API, e a solução vem da mensagem:

StatusSorsa APIAPI oficial do X
401A chave está errada ou foi apagada (invalid api key)O token está errado, ausente ou foi regenerado
402Não usadoCreditsDepleted: a conta não tem créditos
403Nenhuma chave no header ApiKey, ou as requisições acabaramO app não tem a permissão, ou não está em um projeto (client-not-enrolled)
429Mais de 20 requisições em um segundoA janela de 15 minutos do endpoint está esgotada
  • 401

    Sorsa API
    A chave está errada ou foi apagada (invalid api key)
    API oficial do X
    O token está errado, ausente ou foi regenerado
  • 402

    Sorsa API
    Não usado
    API oficial do X
    CreditsDepleted: a conta não tem créditos
  • 403

    Sorsa API
    Nenhuma chave no header ApiKey, ou as requisições acabaram
    API oficial do X
    O app não tem a permissão, ou não está em um projeto (client-not-enrolled)
  • 429

    Sorsa API
    Mais de 20 requisições em um segundo
    API oficial do X
    A janela de 15 minutos do endpoint está esgotada

O 402 é o erro que o guia Getting Access do X nunca menciona. O corpo dele traz o título CreditsDepleted e a linha "Your enrolled account does not have any credits to fulfill this request." (a conta cadastrada não tem créditos para atender a esta requisição), como desenvolvedores relataram no fórum de desenvolvedores do X (abre em uma nova aba), e comprar créditos resolve. Um saldo também pode ficar um pouco abaixo de zero, e então as requisições continuam bloqueadas até uma recarga cobri-lo.

O 403 client-not-enrolled diz que as chaves precisam vir de um app de desenvolvedor "attached to a Project" (vinculado a um projeto). Ele aparece em apps antigos e avulsos; vincular o app a um projeto no console, ou criar um app novo lá, resolve. Os rate limits da API oficial do X diferem em cada endpoint, e o guia de rate limits da API do X os lista. Na Sorsa API, um 429 se resolve em menos de um segundo, e requisições que falham nunca são cobradas, então tentar de novo não custa nada.

#Mantenha a chave em segredo e troque-a se ela vazar

Trate toda chave de API como uma senha: guarde-a em uma variável de ambiente ou em um gerenciador de segredos no seu servidor, nunca em código de front-end nem em um repositório Git. Coloque o arquivo .env que guarda X_BEARER_TOKEN ou SORSA_API_KEY no .gitignore antes do primeiro commit, porque bots varrem repositórios públicos atrás de chaves.

Uma chave vazada custa caro nas duas APIs. Na API oficial do X, a página de boas práticas (abre em uma nova aba) do X alerta que uma chave roubada pode consumir o seu acesso pago ou fazer o app ser suspenso. Na Sorsa API, ela gasta as suas requisições.

  • API oficial do X: abra a aba Keys and tokens do app e clique em Regenerate ao lado da credencial vazada. O valor antigo para de funcionar na hora, então atualize todos os servidores que o usavam. Um Bearer token também pode ser invalidado por oauth2/invalidate_token e gerado de novo.
  • Sorsa API: na página API Keys do painel, crie uma chave nova e apague a vazada. A chave antiga para na hora e responde 401.

As chaves da Sorsa API pertencem apenas a código no servidor: navegadores não conseguem chamar a API diretamente, e uma chave em JavaScript de front-end pode ser lida por qualquer pessoa que abra a página.

Bom saber

O X mostra cada credencial uma única vez, no momento em que ela é gerada. Cole-a direto no seu gerenciador de senhas ou de segredos. Se você fechar a página antes, o único caminho de volta é regenerá-la, o que quebra todo script que ainda guarda o valor antigo.

#Comece com a chave que lê dados hoje

Uma chave oficial da API do X leva seis passos e um saldo de créditos antes da primeira resposta, e cada post que ela lê custa US$ 0,005. Para ler dados públicos do X, use uma chave da Sorsa API: um cadastro, um header e tweets a partir de US$ 0,014 por 1.000. Copie a chave, verifique-a de graça e gaste as 100 requisições grátis em até 10 mil tweets antes de pagar qualquer coisa. Para publicar posts também, mantenha um pequeno app oficial para escrever e leia tudo pela Sorsa API.

#Perguntas frequentes

Onde encontro a minha chave da API do X e o Bearer token?

No X Developer Console, em console.x.com: abra Apps no menu lateral, escolha o seu app e vá para a aba Keys and tokens. A aba lista a chave de API e o secret, o Bearer token e os access tokens, cada um com um botão Regenerate. O X mostra um secret só quando ele é gerado, então um valor perdido não pode ser visto de novo, apenas substituído.

A chave de API do Twitter é grátis?

Criar uma chave oficial da API do X é grátis, mas usá-la não é. A API oficial do X não tem plano gratuito para novos desenvolvedores, e toda leitura sai de créditos pré-pagos: US$ 0,005 por post e US$ 0,010 por perfil. Uma chave da Sorsa API vem com 100 requisições grátis, até 10 mil tweets, sem cartão. A resposta completa em a API do Twitter é gratuita? cobre as duas.

Qual chave de API do Twitter devo usar para ler tweets?

Use uma chave da Sorsa API. Obtê-la leva cerca de 3 minutos, sem app, sem OAuth e sem conta do X; um header ApiKey funciona nos 45 endpoints, e todo plano roda a 20 requisições por segundo. Os tweets custam a partir de US$ 0,014 por 1.000, 250 vezes menos que os US$ 5,00 da API oficial do X, e as primeiras 100 requisições são grátis. A Sorsa API já atendeu mais de 6 bilhões de requisições de dados do X desde 2022.

Quanto tempo leva para obter uma chave da API do X?

O X não divulga prazo de análise. O guia Getting Access dele lista três passos (entrar, aceitar o Developer Agreement, criar um app), e o console gera as credenciais quando o app é criado. A chave não lê nada até você comprar créditos, então conte também com a etapa de pagamento. Uma chave da Sorsa API leva cerca de 3 minutos do cadastro à primeira resposta.

Qual chave preciso para publicar tweets?

Publicar exige um token de usuário, não o Bearer token: o access token e o secret de um app definido como Read and write, ou um token de usuário OAuth 2.0 com permissão de escrita. O X cobra US$ 0,015 por post e US$ 0,20 por um post com link. A Sorsa API é somente leitura por princípio, então nunca publica e nunca toca na sua conta do X; combine as duas quando um bot lê e publica.

#Como verificamos

Em 2 de novembro de 2026, lemos as páginas de docs.x.com do X sobre obtenção de acesso, chave de API e secret, Bearer token, apps de desenvolvedor, preços, erros e segurança de chaves, além de threads do fórum de desenvolvedores do X sobre os erros de configuração 402 e 403. No mesmo dia, enviamos às duas APIs requisições sem chave, com uma chave inventada e com chaves no header errado; a tabela de headers mostra os códigos e as mensagens que voltaram. As requisições da Sorsa API seguem a referência da API ao vivo, e a resposta de uso da chave mostra os valores de uma conta nova, não uma chamada capturada.

Pela equipe da Sorsa API. Construímos e operamos a Sorsa API, a API e scraper somente leitura do Twitter (X), em produção desde 2022 (antiga TweetScout API), com mais de 6 bilhões de requisições atendidas. Sobre a Sorsa API

O que mudou
  • Reescrito do zero. Os passos oficiais foram conferidos hoje em docs.x.com e ganharam a etapa dos créditos e o erro 402; novas seções sobre as credenciais, o header (com nossas próprias verificações de requisições) e erros de configuração; um caminho de chave da Sorsa API com verificação gratuita da chave; duas figuras e um seletor de credenciais.
  • Primeira publicação.