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

# Editar Posts

> Edite Posts no X dentro de uma janela de 30 minutos até cinco vezes e leia o histórico de edições, edit_controls e metadados editáveis retornados pela API v2.

Posts no X podem ser editados dentro de 30 minutos após a publicação, até 5 vezes. A API do X fornece acesso completo ao histórico de edições e aos metadados.

***

## Regras de edição

| Regra                   | Detalhes                                        |
| :---------------------- | :---------------------------------------------- |
| **Janela de tempo**     | 30 minutos a partir do post original            |
| **Limite de edições**   | Máximo de 5 edições                             |
| **Comportamento de ID** | Cada edição cria um novo ID de post             |
| **Exclusão**            | Excluir qualquer versão exclui a cadeia inteira |

***

## O que não pode ser editado

Alguns tipos de post não são editáveis:

* Posts promovidos (anúncios)
* Posts com enquetes
* Respostas a outros (não self-thread)
* Reposts (Quote posts *podem* ser editados)
* Posts de Communities
* Posts colaborativos
* Posts agendados

***

## Dados de edição nas respostas

### Fields padrão

Todas as respostas de post incluem `edit_history_tweet_ids` por padrão:

```json theme={null}
{
  "data": {
    "id": "1234567891",
    "text": "Updated text (edited)",
    "edit_history_tweet_ids": ["1234567890", "1234567891"]
  }
}
```

* ID único = nunca editado
* Múltiplos IDs = histórico de edições (mais antigo primeiro)

### Edit controls

Solicite `edit_controls` para o status de edição:

```bash theme={null}
curl "https://api.x.com/2/tweets/1234567891?tweet.fields=edit_controls" \
  -H "Authorization: Bearer $TOKEN"
```

```json title="Exemplo de resposta" lines wrap icon="https://mintcdn.com/x-preview/Vn2KEkZaPF9LiPi3/icons/xds/icon-brackets.svg?fit=max&auto=format&n=Vn2KEkZaPF9LiPi3&q=85&s=ed2428e77bab43e57800e1a590e982fa" theme={null}
{
  "data": {
    "id": "1234567891",
    "text": "Updated text (edited)",
    "edit_history_tweet_ids": ["1234567890", "1234567891"],
    "edit_controls": {
      "is_edit_eligible": true,
      "editable_until": "2024-01-15T12:30:00.000Z",
      "edits_remaining": 3
    }
  }
}
```

| Field              | Descrição                                    |
| :----------------- | :------------------------------------------- |
| `is_edit_eligible` | Se o post pode ser editado                   |
| `editable_until`   | Timestamp de quando a janela de edição fecha |
| `edits_remaining`  | Número de edições restantes (0-5)            |

***

## Obtendo o histórico de edições

Use a expansion `edit_history_tweet_ids` para obter os objetos de post completos de todas as versões:

```bash theme={null}
curl "https://api.x.com/2/tweets/1234567891?\
tweet.fields=edit_controls&\
expansions=edit_history_tweet_ids" \
  -H "Authorization: Bearer $TOKEN"
```

```json title="Exemplo de resposta" lines wrap icon="https://mintcdn.com/x-preview/Vn2KEkZaPF9LiPi3/icons/xds/icon-brackets.svg?fit=max&auto=format&n=Vn2KEkZaPF9LiPi3&q=85&s=ed2428e77bab43e57800e1a590e982fa" theme={null}
{
  "data": {
    "id": "1234567891",
    "text": "Updated text (edited)",
    "edit_history_tweet_ids": ["1234567890", "1234567891"],
    "edit_controls": {
      "is_edit_eligible": true,
      "editable_until": "2024-01-15T12:30:00.000Z",
      "edits_remaining": 3
    }
  },
  "includes": {
    "tweets": [{
      "id": "1234567890",
      "text": "Original text (with typo)",
      "edit_history_tweet_ids": ["1234567890", "1234567891"],
      "edit_controls": {
        "is_edit_eligible": true,
        "editable_until": "2024-01-15T12:30:00.000Z",
        "edits_remaining": 3
      }
    }]
  }
}
```

***

## Qual versão é retornada?

Por padrão, a API retorna a **versão mais recente** de um post editado.

Para obter uma versão específica, solicite-a diretamente pelo ID do post:

```bash theme={null}
# Get original version
curl "https://api.x.com/2/tweets/1234567890" -H "Authorization: Bearer $TOKEN"

# Get edited version  
curl "https://api.x.com/2/tweets/1234567891" -H "Authorization: Bearer $TOKEN"
```

***

## Métricas para posts editados

Cada versão de um post editado tem suas próprias métricas de engajamento. As métricas são atribuídas à versão que estava visível quando o engajamento ocorreu.

***

## Disponibilidade

Os metadados de edição estão disponíveis:

* Para todos os posts criados desde 29 de setembro de 2022
* Em todos os endpoints v2 que retornam posts
* Incluindo search, timelines, stream e lookup

Posts criados antes dessa data não têm metadados de edição.

***

## Casos de uso

<Tabs>
  <Tab title="Rastrear mudanças">
    Monitore posts em busca de edições e registre as diferenças:

    ```python theme={null}
    def check_for_edits(post):
        history = post.get("edit_history_tweet_ids", [])
        if len(history) > 1:
            print(f"Post {post['id']} has been edited {len(history) - 1} times")
    ```
  </Tab>

  <Tab title="Exibir indicador de edição">
    Exiba um selo de "edited" na sua UI:

    ```javascript theme={null}
    const isEdited = post.edit_history_tweet_ids?.length > 1;
    if (isEdited) {
      showEditedBadge();
    }
    ```
  </Tab>

  <Tab title="Obter conteúdo original">
    Recupere a versão original de um post editado:

    ```python theme={null}
    original_id = post["edit_history_tweet_ids"][0]
    original = api.get_tweet(original_id)
    ```
  </Tab>
</Tabs>

***

## Próximos passos

<CardGroup cols={2}>
  <Card title="Consulta de posts" icon="https://mintcdn.com/x-preview/cfyQtgCdwk8p69aa/icons/xds/icon-search.svg?fit=max&auto=format&n=cfyQtgCdwk8p69aa&q=85&s=8c11ad89387b7c09ced1553d5c232834" href="/x-api/posts/lookup/introduction" width="24" height="24" data-path="icons/xds/icon-search.svg">
    Recupere posts com histórico de edições.
  </Card>

  <Card title="Dicionário de dados" icon="https://mintcdn.com/x-preview/Vn2KEkZaPF9LiPi3/icons/xds/icon-book.svg?fit=max&auto=format&n=Vn2KEkZaPF9LiPi3&q=85&s=22ac564792481d14ae36a941546039c8" href="/x-api/fundamentals/data-dictionary" width="24" height="24" data-path="icons/xds/icon-book.svg">
    Referência completa do objeto post.
  </Card>
</CardGroup>
