Pular para o conteúdo principal

Uso e geração de Bearer Token no modo apenas aplicativo

Um Bearer Token permite que desenvolvedores tenham um ponto de entrada mais seguro para usar a X API e é um dos recursos centrais do OAuth 2.0. A autenticação que usa um Bearer Token também é conhecida como autenticação apenas de aplicativo (application-only). Um Bearer Token é um array de bytes de formato não especificado que você pode gerar usando um script, como um comando curl. Você também pode obter um Bearer Token no portal do desenvolvedor, na seção de chaves e tokens das configurações da sua App. Mais informações sobre esse recurso podem ser encontradas na documentação oficial do OAuth.

Quando são usados?

Os produtos que exigem o uso de um Bearer Token são os seguintes:

Pré-requisitos

Você precisará se inscrever em uma conta de desenvolvedor e ter criado uma X App. Depois disso, você também precisará obter as API Keys encontradas no portal do desenvolvedor. Siga as etapas abaixo:
  1. Faça login na sua conta do X em developer.x.com.
  2. Acesse o X App dashboard e abra a X App para a qual você deseja gerar Access Tokens.
  3. Vá até a página “chaves e tokens”.
  4. Você encontrará as API Keys, os Access Tokens de usuário e o Bearer Token nesta página.

Como gerar um Bearer Token

Você pode encontrar o Bearer Token da sua App junto com o restante das suas “chaves e tokens”. Copie a seguinte solicitação cURL no seu terminal após substituir pelas seguintes chaves de consumidor da API obtidas anteriormente na sua X App. Observe que as chaves de consumidor da API usadas nesta página foram desativadas e não funcionarão em solicitações reais.
  • API key <API key> ex.: xvz1evFS4wEEPTGEFPHBog
  • API secret key <API secret key> ex.: L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg
    curl -u "$API_KEY:$API_SECRET_KEY" \
    --data 'grant_type=client_credentials' \
    'https://api.x.com/oauth2/token'
    
Aqui está um exemplo de como a solicitação curl deve ficar com suas API keys preenchidas:
   curl -u 'xvz1evFS4wEEPTGEFPHBog:L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg' \
  --data 'grant_type=client_credentials' \
  'https://api.x.com/oauth2/token'
Veja como seria a resposta. Observe que este é um Bearer Token desativado: {"token_type":"bearer","access_token":"AAAAAAAAAAAAAAAAAAAAAMLheAAAAAAA0%2BuSeid%2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F"} Nosso Bearer Token usado para autenticar em recursos com OAuth 2.0 seria: AAAAAAAAAAAAAAAAAAAAAMLheAAAAAAA0%2BuSeid%2BULvsea4JtiGRiSDSJSI%3DEUifiRBkKG5E2XzMDjRfl76ZC9Ub0wnz4XsNiRVBChTYbJcE3F
I