Аутентификация
Отправьте ключ API в качестве токена носителя (bearer token). Ключ должен иметь разрешение hosting.cdn.manage; ключ без него отклоняется с кодом 403, а не 404.
Этот эндпоинт не принимает идентификатор организации. Ваш ключ уже определяет организацию, к которой он принадлежит, и ответ ограничивается ее рамками.
Попробовать
Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.
curl -X PUT https://api.zinndigital.com/v1/sites/{siteId}/cdn/settings \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ }'Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли
Подробнее
A **merge**: only the fields present in the body are changed and an absent field is left alone — never reset to a default. A client written before a setting existed must not switch it off on every save. The body carries settings and nothing else. `additionalProperties: false` is load-bearing rather than tidy: these are pooled CDN accounts holding other customers' zones and a Cloudflare zone resolves **by name alone**, so a body key named `domain` or `zone_id` must be refused rather than silently discarded. The hostname is always read off the site row. `ssl_mode` deliberately does not accept Cloudflare's `flexible`, which leaves the edge-to-origin leg in plaintext. An empty body is a `422`, not a no-op success. A provider without these controls is a `422` with code `UNSUPPORTED_BY_PROVIDER` — a save that reported success having changed nothing would be worse than a refusal. Requires `hosting.cdn.manage`.
Параметры
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
siteId (path) | Uuid | Да | Site ID (UUIDv7). |
Тело запроса
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
cache_level | CdnCacheLevel | Нет | How aggressively the edge treats query strings as distinct cached objects, least to most. Cloudflare's `bypass` is deliberately not offered: it is an emergency operator state, a… |
development_mode | boolean | Нет | — |
always_online | boolean | Нет | — |
ssl_mode | CdnSslMode | Нет | The TLS leg between the edge and the origin. Cloudflare's `flexible` is deliberately absent — it leaves that leg in plaintext, and the platform's Cloudflare adapter refuses to b… |
brotli | boolean | Нет | — |
Ответ
| Имя | Тип | Обязательно | Что это |
|---|---|---|---|
site_id | Uuid | Да | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
supported | boolean | Да | Whether the CDN serving this site can express these settings at all. `false` for a pull-zone provider with no equivalent vocabulary; the other fields then carry defaults and a c… |
supported_values | object | Да | For an **enumerated** supported field, which values this provider can be set to. A field absent from this map takes every value in its own vocabulary — the common case, so the p… |
supported_fields | string[] | Нет | Which of the five settings this site's CDN can actually express. ⛔ Sent always and **empty rather than omitted** when there are none — a client reading absence as "all of them"… |
cache_level | CdnCacheLevelReported | Да | What a provider may REPORT for `cache_level` — the writable vocabulary plus the read-only states. `by_parameters` means the edge caches by a **named list of query parameters** c… |
development_mode | boolean | Да | Bypass the cache entirely so edits are visible immediately. The provider expires this automatically — see `development_mode_seconds_remaining`. |
development_mode_seconds_remaining | integer | Да | Seconds until the provider switches development mode off again, as reported by the provider rather than derived from when we set it. `0` when it is off. It is a countdown and no… |
always_online | boolean | Да | Serve an archived copy of the page when the origin is unreachable. |
ssl_mode | CdnSslMode | Да | The TLS leg between the edge and the origin. Cloudflare's `flexible` is deliberately absent — it leaves that leg in plaintext, and the platform's Cloudflare adapter refuses to b… |
brotli | boolean | Да | Serve Brotli-compressed responses to clients that accept them. |
Ошибки, которые может возвращать этот эндпоинт
401 · 403 · 404 · 422 · 429 · 503