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

# CDN in CI/CD e ripristino della cache

> Pubblicazione dei rilasci e pulizia spot di della cache di Cloudflare e della CDN.

Ordine di rilascio: crea con il nuovo RELEASE\_ID, scarica i file in sequenza, controlla SHA-256 e HTTP, quindi cambia HTML nella nuova build. Salva i vecchi blocchi per le schede aperte. Archiviare le chiavi solo nei segreti CI/CD.

## Dominio personalizzato verificato

Passa percorsi di file esatti in percorsi JSON, massimo 100. Non utilizzare il prefisso della query: questo percorso non lo supporta. Per percorsi mancanti o vuoti si intende l'intero dominio.

```bash theme={null}
curl -X POST "$API_BASE/v3/cdn/webhook/purge" \
  -H "erlcrussia-api-cdn-token: $CDN_DEPLOY_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"paths":["releases/RELEASE_ID/logo.png"]}'
```

Con una chiave personalizzata, lo stesso JSON viene inviato a `POST /v3/cdn/custom-domains/{id}/purge` tramite l'intestazione erlcrussia-api-key.

La risposta contiene successo, dominio, cloudflarePurged, edgePurged e timestamp. HTTP 200 non garantisce il successo: success=false significa un errore a uno o entrambi i livelli. Controlla ogni bandiera. La cache del browser non viene cancellata da questa richiesta.

## Spazio dei nomi e gruppi di file regolari

`POST /v3/cdn/assets/purge?domain=YOUR_TEAM_SLUG&prefix=releases/RELEASE_ID/` accetta il prefisso e pianifica lo svuotamento della cache della CDN. Questo è un contratto diverso. Senza ID/percorso/prefisso, viene selezionato l'intero spazio dei nomi. il successo significa l'accettazione dell'operazione; verificare la consegna successiva.

Il nuovo URL di rilascio è più affidabile rispetto alla sostituzione del vecchio file immutabile. HTTP 429 richiede l'attesa Retry-After; HTTP 409 indica un oggetto esistente, non un download riuscito.

Senza ids/path/prefix, lo svuotamento dell’intero namespace avviene in background: HTTP 202, status=queued e acceptedCount conta gli oggetti selezionati, non il lavoro completato. Una richiesta al minuto per team e namespace; rispetta Retry-After con 429. Il risultato viene registrato nell’audit del API. Lo svuotamento mirato mantiene HTTP 200 e purgedCount. Un URL di versione nuovo e unico normalmente non richiede purge subito dopo il caricamento: questo elimina la cache preriscaldata.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.