Skip to main content
A X API exige autenticação para todos os endpoints. O XDK oferece suporte a três métodos de autenticação:
  1. Bearer Token (apenas de app)
  2. OAuth 2.0 com PKCE
  3. OAuth 1.0a (contexto de usuário)
  • Bearer Token: Use isto para acesso somente-leitura em endpoints que suportam autenticação de app (por exemplo, pesquisar Posts, endpoints de streaming).
  • OAuth 2.0 PKCE: Autenticação segura para acesso baseado em escopos, autorizado pelo usuário (por exemplo, obter métricas non_public dos Posts do usuário autenticado).
  • OAuth 1.0a: Autenticação legada para operações específicas do usuário (por exemplo, publicar em nome de um usuário, gerenciar listas). Obtenha credenciais no Console do desenvolvedor da X. Você precisará de uma conta de desenvolvedor aprovada e de um app com as permissões apropriadas (por exemplo, Read + Write).

Criando um Client

Todos os fluxos de autenticação criam uma instância de Client:

1. Bearer Token (apenas de app)

Para operações somente-leitura sem contexto de usuário. Passos:
  1. No Console do desenvolvedor, gere um Bearer Token para seu app.
  2. Passe-o para o Client. Exemplo:
Uso:

2. OAuth 2.0 com PKCE (contexto de usuário)

Este exemplo mostra como usar OAuth 2.0 com Proof Key for Code Exchange (PKCE). Use isto para acesso específico do usuário (por exemplo, publicar em nome de um usuário, enviar mídia por um usuário etc.). Passos:
  1. No Console do desenvolvedor, registre seu app com um redirect URI (por exemplo, http://localhost:8080/callback).
  2. Obtenha o Client ID (nenhum segredo é necessário para PKCE).
  3. Inicie o fluxo, direcione o usuário para a URL de autorização e trate o callback. Exemplo (usando um servidor web para o callback):
Example
Atualização de token (automática no SDK para sessões de longa duração):

3. OAuth 1.0a (contexto de usuário)

Para aplicações legadas ou casos de uso específicos que exigem autenticação OAuth 1.0a: Passos:
  1. No Console do desenvolvedor, obtenha sua API Key e API Secret.
  2. Se você já tiver tokens de acesso, use-os diretamente. Caso contrário, conclua o fluxo OAuth 1.0a para obtê-los.
  3. Crie uma instância OAuth1 e passe-a para o Client. Exemplo (com tokens de acesso existentes):
Example
Exemplo (fluxo OAuth 1.0a completo):
Example
Nota:
  • Nunca coloque segredos diretamente no código em produção; use variáveis de ambiente ou gerenciadores de segredos (por exemplo, os.getenv("X_BEARER_TOKEN")).
  • Para PKCE, garanta HTTPS para os redirect URIs em produção.
  • O SDK valida tokens e lança xdk.AuthenticationError em caso de falhas. Para exemplos de código detalhados usando o XDK Python, confira nosso repositório de exemplos de código no GitHub.