---
name: azion-purgue-conteudo-em-cache
description: >-
  Remova um objeto em cache antes do fim do seu TTL, por URL, por cache key ou por wildcard, pelo Azion Console, pela Azion API ou pela Azion CLI.
---

# Purgue conteúdo em cache

Você remove um objeto em cache antes do fim do seu TTL pelo Azion Console, pela Azion API v4 ou pela Azion CLI, nomeando-o por URL, por cache key ou por uma expressão com wildcard, na camada do Cache ou na do Tiered Cache.

Depois de um purge, a requisição seguinte pelo objeto vai à origem e carrega `x-cache: MISS`. Para o que cada tipo de purge alcança, consulte [Real-Time Purge](/pt-br/documentacao/plataforma/applications/cache/real-time-purge/).

---

## Pré-requisitos

- A URL do objeto a purgar, ou a sua cache key. Para ler a key, consulte [Verifique o status de cache de uma resposta](/pt-br/documentacao/guias/performance-e-confiabilidade/cache-e-purge/verificar-tempo-de-cache-da-pagina/).
- Um domínio que pertença à sua conta. Um purge de qualquer outro domínio é rejeitado.
- Acesso ao Azion Console, para o procedimento pelo Console. Consulte [Como acessar o Azion Console](/pt-br/documentacao/guias/plataforma/conta-e-billing/como-acessar-o-azion-console/).
- Um [personal token](/pt-br/documentacao/guias/plataforma/conta-e-billing/personal-tokens/), para o procedimento pela API.
- A [Azion CLI](/pt-br/documentacao/devtools/cli/) instalada e autorizada, para o procedimento pela CLI.

---

## Escolha o tipo de purge

| Para purgar                        | Use                 | Argumento                                                                 |
| ---------------------------------- | ------------------- | ------------------------------------------------------------------------- |
| Um ou mais objetos exatos          | Purge por URL       | Até 50 URLs por requisição                                                |
| Variações específicas de um objeto | Purge por cache key | Até 50 cache keys por requisição; o único tipo que alcança o Tiered Cache |
| Cada objeto que casa com um padrão | Purge por wildcard  | Uma expressão com `*` por requisição                                      |

Para remover um objeto mantido nas duas camadas, purgue primeiro o Tiered Cache e depois o Cache, para que a primeira camada não seja reabastecida por uma cópia desatualizada da segunda.

---

## Purgue pelo Azion Console

Para enviar um purge pelo Console:

1. **Abra o Real-Time Purge**

   Acesse [Azion Console](https://console.azion.com/) > **Products Menu** > **Real-Time Purge**.

2. **Selecione New Purge**

3. **Escolha o tipo de purge e a camada**

   Selecione o tipo de purge que corresponde ao seu argumento e a camada a limpar: Cache, ou Tiered Cache para um purge por cache key.

4. **Insira os argumentos**

   Insira um objeto por item em um purge por URL ou por cache key, ou a expressão única em um purge por wildcard.

5. **Selecione Purge**

Uma mensagem confirma a criação. A Azion coloca o purge em fila, e ele aparece no histórico de purges quando termina.

---

## Purgue pela API

Cada tipo de purge é um path próprio no endpoint de purge. Para enviar um:

1. **Envie um purge por URL**

   ```bash
   curl --location --request POST 'https://api.azion.com/v4/workspace/purge/url' \
   --header 'Accept: application/json' \
   --header 'Content-Type: application/json' \
   --header 'Authorization: Token [TOKEN VALUE]' \
   --data '{"items":["https://www.example.com/include/site.js"],"layer":"cache"}'
   ```

2. **Leia a resposta**

   A API responde com HTTP `201`, `state` igual a `executed` e os itens que purgou:

   ```json
   {"state":"executed","data":{"items":["https://www.example.com/include/site.js"],"layer":"cache"}}
   ```

3. **Envie um purge por cache key**

   O path `cachekey` é o que aceita `tiered_cache` como camada:

   ```bash
   curl --location --request POST 'https://api.azion.com/v4/workspace/purge/cachekey' \
   --header 'Accept: application/json' \
   --header 'Content-Type: application/json' \
   --header 'Authorization: Token [TOKEN VALUE]' \
   --data '{"items":["httpswww.example.com/include/site.js"],"layer":"tiered_cache"}'
   ```

4. **Envie um purge por wildcard**

   ```bash
   curl --location --request POST 'https://api.azion.com/v4/workspace/purge/wildcard' \
   --header 'Accept: application/json' \
   --header 'Content-Type: application/json' \
   --header 'Authorization: Token [TOKEN VALUE]' \
   --data '{"items":["www.example.com/include/*.css"]}'
   ```

Cada requisição responde da mesma forma, com os seus próprios itens e a sua camada em `data`. Sem `layer`, a API purga o `cache`.

> **nota**
>
> Uma requisição carrega até 50 itens nos paths `url` e `cachekey`, e exatamente uma expressão no path `wildcard`. Além de qualquer um dos dois limites, a API responde com HTTP `400` e o erro `10065`. Para os outros limites de purge, consulte [Limites de Applications](/pt-br/documentacao/plataforma/applications/limites/#cache).

---

## Purgue pela Azion CLI

Um comando envia cada tipo de purge. Para enviá-los:

1. **Purgue por URL**

   ```bash
   azion purge --urls "https://www.example.com/include/site.js"
   ```

   O comando imprime uma linha:

   ```text
   Purge carried out successfully
   ```

2. **Purgue por cache key**

   A flag `--layer` aceita `cache` ou `tiered_cache`, e o padrão é `cache`:

   ```bash
   azion purge --cachekey "httpswww.example.com/include/site.js" --layer tiered_cache
   ```

3. **Purgue por wildcard**

   ```bash
   azion purge --wildcard "www.example.com/include/*.css"
   ```

Cada comando imprime a mesma linha de confirmação. Um purge rejeitado imprime a mensagem da API no lugar, então execute o comando sem `--format json` para lê-la.

---

## Verifique o purge

Para confirmar que a cópia saiu:

1. **Requisite o objeto com o header de debug**

   ```bash
   curl -sI -H "Pragma: azion-debug-cache" https://www.example.com/include/site.js
   ```

2. **Leia o status de cache**

   A resposta carrega `MISS`, porque a Azion buscou o objeto na origem novamente:

   ```http
   x-cache: MISS from 192.0.2.10 with HTTP/2.0
   ```

Uma resposta que chega à origem depois de um purge confirma que a cópia saiu do cache.

---

## Purgue um objeto que varia

Um purge por URL converte cada URL em uma cache key e ignora a variação de conteúdo, então uma cópia que varia por cookie, device group ou formato de imagem sobrevive a ele. Purgue essas variações listando cada key em um purge por cache key, ou com um wildcard terminado em `@@*` para as variações por cookie, dispositivo e método, ou `?*` para as variações por query string.

A variação por query string é a exceção que um purge por URL alcança, desde que os argumentos estejam na ordem que a key contém, ou em ordem alfabética quando o **Sort** está ativo no cache setting. Para as keys que cada variação gera, consulte [Cache keys](/pt-br/documentacao/plataforma/applications/cache/cache-keys/) e, para o que cada tipo de purge alcança, [Real-Time Purge](/pt-br/documentacao/plataforma/applications/cache/real-time-purge/).

---

## Próximos passos

- [Real-Time Purge](/pt-br/documentacao/plataforma/applications/cache/real-time-purge.md): Cada tipo de purge, as duas camadas, os corpos de requisição e os erros que um purge retorna.
- [Cache keys](/pt-br/documentacao/plataforma/applications/cache/cache-keys.md): A key que um purge por cache key recebe, e o que cada variação acrescenta a ela.
- [Boas práticas de Applications](/pt-br/documentacao/plataforma/applications/boas-praticas.md#cache): Nomes de objeto versionados, a alternativa que dispensa o purge.
- [Azion CLI purge](/pt-br/documentacao/devtools/cli/purge.md): Todas as flags do comando azion purge.
