Autenticação App only e OAuth 2.0 Bearer Token
- Obter timelines de usuários
- Acessar amigos e seguidores de qualquer conta
- Acessar recursos de List
- Pesquisar Tweets
- Publicar Tweets ou outros recursos
- Pesquisar usuários
- Usar qualquer endpoint de geolocalização
- Acessar Mensagens diretas ou credenciais da conta
- Recuperar os endereços de e-mail do usuário
Fluxo de autenticação
- Um aplicativo codifica sua consumer key e secret em um conjunto de credenciais com codificação específica.
- O aplicativo faz uma solicitação ao endpoint POST oauth2/token para trocar essas credenciais por um App only Access Token.
- Ao acessar a REST API, o aplicativo usa o App only Access Token para autenticar.

Sobre autenticação App only
Emissão de solicitações somente da aplicação
- Faça a codificação de URL da consumer key e do consumer secret de acordo com a RFC 1738. Observe que, no momento desta redação, isso não alterará a consumer key nem o consumer secret, mas esta etapa ainda deve ser realizada caso o formato desses valores mude no futuro.
- Concatene a consumer key codificada, um caractere de dois-pontos ”:” e o consumer secret codificado em uma única string.
- Faça a codificação Base64 da string do passo anterior.
Consumer key | xvz1evFS4wEEPTGEFPHBog |
Consumer secret | L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg |
Consumer key codificada segundo a RFC 1738 (não altera) | xvz1evFS4wEEPTGEFPHBog |
Consumer secret codificado segundo a RFC 1738 (não altera) | L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg |
Credenciais do Bearer Token | xvz1evFS4wEEPTGEFPHBog:L8qq9PZyRg6ieKGEKhZolGC0vJWLw8iEJ88DRdyOg |
Credenciais do Bearer Token codificadas em Base64 | :: eHZ6MWV2RlM0d0VFUFRHRUZQSEJvZzpMOHFxOVBaeVJnNmllS0dFS2hab2xHQzB2SldMdzhpRUo4OERSZHlPZw== |
- A solicitação deve ser uma solicitação HTTP POST.
- A solicitação deve incluir um cabeçalho
Authorization
com o valorBasic <base64 encoded value from step 1>.
- A solicitação deve incluir um cabeçalho
Content-Type
com o valorapplication/x-www-form-urlencoded;charset=UTF-8.
- O corpo da solicitação deve ser
grant_type=client_credentials
.
token_type
do objeto retornado é bearer
. O valor associado à chave access_token
é o App only Access Token (Bearer Token).
Observe que um App only Access Token é válido para um aplicativo por vez. Enviar outra solicitação com as mesmas credenciais para /oauth2/token
retornará o mesmo token até que ele seja invalidado.
Etapa 3: Autenticar solicitações à API com o App only Access Token (Bearer Token)
O App only Access Token (Bearer Token) pode ser usado para enviar solicitações a endpoints da API que oferecem suporte à autenticação somente de aplicativo. Para usar o App Access Token, faça uma solicitação HTTPS normal e inclua um cabeçalho Authorization
com o valor Bearer <base64 bearer token value from step 2>. Signing is not required.
Solicitação de exemplo (o cabeçalho Authorization foi quebrado em várias linhas):
Casos de erro comuns
- Obter um App only Access Token (Bearer Token) com uma solicitação inválida (por exemplo, omitindo
grant_type=client_credentials
). - Obter ou revogar um App only Access Token (Bearer Token) com credenciais de App incorretas ou expiradas.
- Invalidar um App only Access Token (Bearer Token) incorreto ou já revogado.
- Obter um App only Access Token (Bearer Token) com muita frequência em um curto período.
A solicitação à API contém um App only Access Token inválido (Bearer Token)
App only Access Token (Bearer Token) usado em endpoint que não oferece suporte à autenticação somente de aplicação
statuses/home_timeline
) com um App only Access Token (Bearer Token) resultará em: