> ## Documentation Index
> Fetch the complete documentation index at: https://docs.x.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtendo acesso

> Cadastre-se para uma developer account, crie um app e salve as API keys, bearer token e credenciais OAuth necessários para começar a chamar a X API.

export const Button = ({href, children}) => {
  return <div className="not-prose group">
    <a href={href}>
      <button className="flex items-center space-x-2.5 py-1 px-4 bg-primary-dark dark:bg-white text-white dark:text-gray-950 rounded-full group-hover:opacity-[0.9] font-medium">
        <span>
          {children}
        </span>
        <svg width="3" height="24" viewBox="0 -9 3 24" class="h-6 rotate-0 overflow-visible"><path d="M0 0L3 3L0 6" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg>
      </button>
    </a>
  </div>;
};

Comece a usar a X API em três passos: cadastre-se, crie um app e salve suas credenciais.

<Button href="https://console.x.com">Cadastre-se agora</Button>

***

## Passo 1: crie uma developer account

<Steps>
  <Step title="Acesse o Developer Console">
    Visite [console.x.com](https://console.x.com) e faça login com sua conta do X.
  </Step>

  <Step title="Aceite o Developer Agreement">
    Revise e aceite o Developer Agreement e a Policy.
  </Step>

  <Step title="Complete seu perfil">
    Forneça informações básicas sobre como você usará a API.
  </Step>
</Steps>

***

## Passo 2: crie um app

Após o cadastro, crie um app para obter suas credenciais de API:

<Steps>
  <Step title="Clique em 'New App'">
    No painel do Developer Console, crie um novo app.
  </Step>

  <Step title="Informe os detalhes do app">
    Forneça um nome, uma descrição e o caso de uso do seu app.
  </Step>

  <Step title="Gere as credenciais">
    O console gerará suas API keys e tokens.
  </Step>
</Steps>

***

## Passo 3: salve suas credenciais

Você receberá diferentes credenciais dependendo das suas necessidades de autenticação:

| Credencial                | Finalidade                                                                       |
| :------------------------ | :------------------------------------------------------------------------------- |
| **API Key e Secret**      | Identificam seu app. Usadas para gerar tokens e assinar solicitações OAuth 1.0a. |
| **Bearer Token**          | Autenticação app-only para leitura de dados públicos.                            |
| **Access Token e Secret** | Fazer solicitações em nome da sua própria conta (OAuth 1.0a).                    |
| **Client ID e Secret**    | Autenticação OAuth 2.0 para solicitações com contexto de usuário.                |

<Warning>
  **Salve imediatamente.** As credenciais são exibidas apenas uma vez. Armazene-as em um gerenciador de senhas ou cofre seguro. Se você as perder, precisará regenerá-las (o que invalida as antigas).
</Warning>

***

## De quais credenciais você precisa?

<Tabs>
  <Tab title="Lendo dados públicos">
    Use o **Bearer Token** para acesso simples e somente leitura a dados públicos.

    ```bash theme={null}
    curl "https://api.x.com/2/users/by/username/xdevelopers" \
      -H "Authorization: Bearer $BEARER_TOKEN"
    ```

    Ideal para: pesquisar posts, consultar usuários, ler tendências.
  </Tab>

  <Tab title="Agindo como usuário">
    Use **OAuth 2.0** (recomendado) ou **OAuth 1.0a** para agir em nome de usuários.

    O OAuth 2.0 oferece escopos granulares — solicite apenas as permissões de que você precisa.

    Ideal para: postar, curtir, seguir, acessar DMs.

    [Guia do OAuth 2.0 →](/resources/fundamentals/authentication/oauth-2-0/overview)
  </Tab>

  <Tab title="Agindo como você mesmo">
    Use seu **Access Token e Secret** para fazer solicitações como sua própria conta.

    Esses tokens representam a conta dona do app.

    Ideal para: testes, bots pessoais, sua própria automação.
  </Tab>
</Tabs>

***

## Boas práticas de segurança para credenciais

<CardGroup cols={2}>
  <Card title="Use variáveis de ambiente" icon="terminal">
    Nunca deixe credenciais hardcoded no seu código-fonte.
  </Card>

  <Card title="Não envie para o git" icon="code-branch">
    Adicione arquivos de credenciais ao `.gitignore`.
  </Card>

  <Card title="Faça rotação regularmente" icon="arrows-rotate">
    Regenere as credenciais periodicamente como medida de segurança.
  </Card>

  <Card title="Use escopos mínimos" icon="shield-check">
    Solicite apenas as permissões OAuth de que seu app precisa.
  </Card>
</CardGroup>

***

## Próximos passos

<CardGroup cols={2}>
  <Card title="Faça sua primeira solicitação" icon="rocket" href="/x-api/getting-started/make-your-first-request">
    Chame a API com suas novas credenciais.
  </Card>

  <Card title="Aprenda sobre autenticação" icon="key" href="/resources/fundamentals/authentication/overview">
    Entenda OAuth 1.0a e OAuth 2.0.
  </Card>
</CardGroup>
