Visão geral
- API Key e Secret: Essencialmente, o nome de usuário e a senha da sua App. Você usará essas credenciais para autenticar requisições que exigem Contexto de usuário do OAuth 1.0a ou para gerar outros tokens, como Access Tokens de usuário ou App Access Token.
- Access Token e Secret: Em geral, Access Tokens representam o usuário em nome de quem você está fazendo a requisição. Os que você pode gerar pelo portal do desenvolvedor representam o usuário proprietário da App. Você usará esses tokens para autenticar requisições que exigem Contexto de usuário do OAuth 1.0a. Se quiser fazer requisições em nome de outro usuário, será necessário usar o 3-legged OAuth (fluxo com 3 partes) para que ele conceda autorização.
- Client ID e Client Secret: Essas credenciais são usadas para obter um Access Token de usuário com autenticação OAuth 2.0. Semelhante ao OAuth 1.0a, os Access Tokens de usuário são usados para autenticar requisições que fornecem informações privadas da conta do usuário ou executam ações em nome de outra conta, mas com escopo granular para maior controle sobre o acesso que o aplicativo cliente tem ao usuário.
- App only Access Token: Você usará este token ao fazer requisições a endpoints que respondem com informações publicamente disponíveis no X.
Apps e Projetos
Painel do portal do desenvolvedor
- Visualizar suas Standalone Apps existentes e o App ID associado a elas.
- Criar um novo Projeto, App ou Standalone App.
- Excluir um Projeto ou App não utilizado.
- Revisar ou atualizar as configurações de uma App específica, incluindo nome, descrição, site, URL de callback e permissões.
- Regenerar credenciais específicas da App, como API Key & Secret, App Access Token e os Access Tokens de usuário do proprietário da App.
Inscrevendo-se para obter acesso
Rotulagem de conta automatizada para bots
- Vá para as configurações da sua conta
- Selecione “Sua conta”
- Selecione “Automação”
- Selecione “Gerenciamento de conta”
- Em seguida, selecione a conta do X que executa seu bot
- Insira sua senha para fazer login
- Por fim, você deverá ver a confirmação de que o rótulo foi aplicado à sua conta.
Gerenciamento da App
Introdução
- Visualizar suas Apps e Projetos existentes e seus respectivos App ID.
- Criar um novo Projeto ou uma App autônoma.
- Excluir um Projeto, uma App ou uma App autônoma.
- Abrir as configurações de uma App específica clicando na própria App. Nas configurações, é possível ver os detalhes da App, chaves e tokens e permissões.
- Atualizar as configurações de autenticação de usuário da sua App para usar OAuth 1.0a ou OAuth 2.0.
Observação:Todas as chaves e tokens da App não estão mais visíveis no portal do desenvolvedor e devem ser salvos com segurança assim que forem gerados. Recomendamos usar um gerenciador de senhas para armazenar suas chaves e tokens.Você pode revelar uma dica da sua API Key para ajudar a corresponder sua credencial à App correta.
Configurações do App
Detalhes da App
Chaves e tokens
- API Key (Consumer Key) e API Secret (Consumer Secret)
- App Access Token
- User Access Token e Access Token Secret - O Access Token e o Secret disponíveis no portal do desenvolvedor correspondem ao usuário proprietário da App.
Configurações de autenticação do usuário
Permissões de aplicativo-usuário do OAuth 1.0a
Tipo de App para OAuth 2.0
Permissões da App
Permissões de App do OAuth 1.0a
- Somente leitura
- Leitura e escrita
- Leitura, escrita e acesso a Mensagens diretas
Somente leitura
Leitura e escrita
Ler, escrever e acessar Mensagens diretas
- POST /2/dm_conversations/:dm_conversation_id/messages
- POST /2/dm_conversations/
- POST /2/dm_conversations/with/:participant_id/messages
- GET /2/dm_conversations/with/:user_id/dm_events
- GET /2/dm_conversations/:dm_conversation_id/dm_events
- GET /2/dm_events
Determinação de permissões
x-access-level
na resposta HTTP. O valor desse cabeçalho indica o nível de permissão atualmente em uso. Os valores possíveis são read, read-write e read-write-directmessages.
URLs de callback
- Fluxo de código de autorização do OAuth 2.0 com PKCE
- Fluxo 3-legged OAuth do OAuth 1.0a (e, separadamente, o fluxo Sign in with X)
callback_url
ao fazer uma solicitação para o endpoint GET oauth/request_token. Da mesma forma, desenvolvedores usando OAuth 2.0 Authorization Code com PKCE devem passar o parâmetro redirect_uri
com sua solicitação para o endpoint GET oauth2/authorize.
Além de usar esses parâmetros, o desenvolvedor também deve garantir que a URL de callback tenha sido adicionada à allowlist de URLs de callback da App, que pode ser encontrada na página de configurações da App no portal do desenvolvedor.
Se tudo estiver configurado corretamente, os usuários serão redirecionados para a URL de callback após fazerem login com sucesso no X como parte desses fluxos.
Pontos a considerar
callback_url
ou redirect_uri
, certifique-se de aplicar HTTP encode ao URL.
Limites de URL de callback
Há um limite fixo de 10 URLs de callback no painel do X Apps. Seu URL de callback deve sempre corresponder exatamente ao URL de callback autorizado que você adiciona no painel de Apps e ao parâmetro que você inclui no fluxo de autorização.
Se você quiser incluir dados específicos da solicitação no URL de callback, use o parâmetro state
para armazenar dados que serão incluídos após o redirecionamento do usuário. Você pode codificar os dados no próprio parâmetro state
ou usar o parâmetro como um ID de sessão para armazenar o estado no servidor.
Não use localhost como URL de callback
Em vez de usar localhost, use um host personalizado localmente ou http(s)://127.0.0.1
URLs de protocolo personalizado
Se você quiser aproveitar o deep linking em dispositivos móveis, utilize URLs de protocolo personalizado com partes de caminho e domínio, como twitter://callback/path. No entanto, há uma lista de protocolos não permitidos que você deve evitar. Você pode consultar a lista de protocolos não permitidos abaixo.
Protocolos não permitidos
vbscript | ldap |
javascript | mailto |
vbs | mmst |
data | mmsu |
mocha | msbd |
keyword | rtsp |
livescript | mso-offdap |
ftp | snews |
file | news |
gopher | nntp |
acrobat | outlook |
callto | stssync |
daap | rlogin |
itpc | telnet |
itms | tn3270 |
firefoxurl | shell |
hcp | sip |
Exemplo de erro
HTTP 403 - Forbidden
HTTP 400