> ## 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.

# API Playground

> Execute um servidor mock local para testar endpoints da X API v2 durante o desenvolvimento sem consumir créditos de API, além de exemplos de requisições e payloads de resposta.

O [API Playground](https://github.com/xdevplatform/playground) é um servidor mock local que simula toda a X API v2. Teste endpoints, construa protótipos e explore a API sem consumir créditos reais.

<Card title="Repositório no GitHub" icon="github" href="https://github.com/xdevplatform/playground">
  Código-fonte, releases e documentação completa.
</Card>

***

## Recursos

<CardGroup cols={2}>
  <Card title="Compatibilidade total com a API v2" icon="check">
    Todos os endpoints suportados com validação de requisições via specs OpenAPI e respostas de erro realistas.
  </Card>

  <Card title="Interface web interativa" icon="browser">
    Explorador visual de endpoints em `http://localhost:8080/playground` para testar no navegador.
  </Card>

  <Card title="Sem créditos necessários" icon="https://mintcdn.com/x-preview/ygI6sSJPehlc0qNT/icons/xds/icon-coins.svg?fit=max&auto=format&n=ygI6sSJPehlc0qNT&q=85&s=d8b17de3fb4032d86b77606ea95fcb55" width="24" height="24" data-path="icons/xds/icon-coins.svg">
    Tudo roda localmente com dados mock — sem necessidade de chaves de API ou faturamento.
  </Card>

  <Card title="Operações com estado" icon="database">
    Estado em memória com persistência opcional em arquivo. Crie posts e depois faça lookup.
  </Card>
</CardGroup>

***

## Instalação

Requer Go 1.21+. Instale a partir do código-fonte ou baixe um binário pré-compilado dos [releases](https://github.com/xdevplatform/playground/releases).

<Tabs>
  <Tab title="Go install">
    ```bash theme={null}
    go install github.com/xdevplatform/playground/cmd/playground@latest
    playground start
    ```
  </Tab>

  <Tab title="Build a partir do código-fonte">
    ```bash theme={null}
    git clone https://github.com/xdevplatform/playground.git
    cd playground
    go build -o playground ./cmd/playground
    ./playground start
    ```
  </Tab>
</Tabs>

O servidor inicia em `http://localhost:8080` por padrão.

***

## Início rápido

Faça requisições como faria para a API real — use `test_token` como seu bearer token:

```bash title="me" lines wrap icon="terminal" theme={null}
# Fazer lookup de um usuário
curl -H "Authorization: Bearer test_token" \
  http://localhost:8080/2/users/me

# Criar um post
curl -X POST -H "Authorization: Bearer test_token" \
  -H "Content-Type: application/json" \
  -d '{"text": "Hello from the playground!"}' \
  http://localhost:8080/2/tweets

# Buscar posts
curl -H "Authorization: Bearer test_token" \
  "http://localhost:8080/2/tweets/search/recent?query=hello"
```

Abra `http://localhost:8080/playground` no seu navegador para a interface interativa.

***

## O que está incluído

| Recurso                      | Descrição                                                     |
| :--------------------------- | :------------------------------------------------------------ |
| **Validação de requisições** | Valida requisições conforme a spec OpenAPI                    |
| **Erros realistas**          | Retorna códigos e mensagens de erro adequados                 |
| **Suporte a streaming**      | Endpoints de streaming simulados                              |
| **Rate limiting**            | Simulação configurável de rate limits                         |
| **Suporte a CORS**           | Funciona com aplicações baseadas em navegador                 |
| **Rastreamento de uso**      | Endpoints simulados de faturamento e rastreamento de créditos |
| **Persistência de estado**   | Persistência opcional em arquivo em `~/.playground/`          |

***

## Relacionados

<CardGroup cols={2}>
  <Card title="xurl" icon="terminal" href="/tools/xurl">
    Ferramenta CLI para a X API real com autenticação embutida.
  </Card>

  <Card title="Faça sua primeira requisição" icon="https://mintcdn.com/x-preview/oR-aRNyj1BKPJtxM/icons/xds/icon-rocket.svg?fit=max&auto=format&n=oR-aRNyj1BKPJtxM&q=85&s=b978d7a9225de31709efbbed5b84e92d" href="/make-your-first-request" width="24" height="24" data-path="icons/xds/icon-rocket.svg">
    Pronto para a API real? Faça sua primeira requisição.
  </Card>
</CardGroup>
