> ## 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 в CI/CD и сброс кэша

> Публикация релиза и точечная очистка кэша Cloudflare и CDN.

Порядок релиза: сборка с новым RELEASE\_ID, последовательная загрузка файлов, проверка SHA-256 и HTTP, затем переключение HTML на новую сборку. Старые чанки сохраняйте для открытых вкладок. Ключи храните только в секретах CI/CD.

## Подтверждённый кастомный домен

Передайте точные пути файлов в JSON paths, максимум 100. Не используйте query prefix: этот маршрут его не поддерживает. Отсутствующий или пустой paths означает весь домен.

```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"]}'
```

С пользовательским ключом тот же JSON отправляется в `POST /v3/cdn/custom-domains/{id}/purge` через заголовок erlcrussia-api-key.

Ответ содержит success, domain, cloudflarePurged, edgePurged и timestamp. HTTP 200 не гарантирует успех: success=false означает ошибку одного или обоих уровней. Проверяйте каждый флаг. Браузерный кэш этим запросом не очищается.

## Обычный namespace и группы файлов

`POST /v3/cdn/assets/purge?domain=YOUR_TEAM_SLUG&prefix=releases/RELEASE_ID/` принимает prefix и планирует очистку кэша CDN. Это другой контракт. Без ids/path/prefix выбирается весь namespace. success означает принятие операции; проверяйте последующую доставку.

Новый URL релиза надёжнее замены старого immutable-файла. HTTP 429 требует ожидания Retry-After; HTTP 409 означает существующий объект, а не успешную загрузку.

Без ids/path/prefix сброс всего namespace выполняется в фоне: HTTP 202, status=queued, acceptedCount — число выбранных объектов, а не подтверждение завершения. Не чаще одного запроса в минуту на команду и namespace; при 429 учитывайте Retry-After. Результат выполнения записывается в аудит API. Точечный сброс сохраняет HTTP 200 и purgedCount. Новый уникальный URL релиза обычно не требует purge сразу после загрузки: это удаляет прогретый кэш.


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