Doğrulama
API açarını bearer token kimi göndərin. Açar hosting.cdn.manage icazəsinə malik olmalıdır; bu icazəsi olmayan açar 404 deyil, 403 xətası ilə rədd edilir.
Bu endpoint heç bir təşkilat ID-si tələb etmir. Sizin açarınız artıq aid olduğu təşkilatı müəyyən edir və cavab həmin təşkilat üçün məhdudlaşdırılır.
Sınaqdan keçir
Bucaqlı mötərizələrdə olan hór şeyi öz qiymətlərinizlə, açar yertutucusunu isə idarə panelinizdən bir açarla əvəz edin.
curl -X PUT https://api.zinndigital.com/v1/sites/{siteId}/cdn/settings \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ }'Sistemə daxil olmusunuz? İdarə panelinizdəki API konsolu real təşkilatınızın identifikatorunu və öz açarınızı avtomatik doldurur, sorğunu canlı API-yə qarşı icra edir ki, siz faktiki cavabı görə biləsiniz. Bu son nöqtəni API konsolunda açın
Təfərrüatlar
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`.
Parametrlər
| Ad | Tip | Tələb olunur | Nədir |
|---|---|---|---|
siteId (path) | Uuid | Bəli | Site ID (UUIDv7). |
Sorğu gövdəsi
| Ad | Tip | Tələb olunur | Nədir |
|---|---|---|---|
cache_level | CdnCacheLevel | Xeyr | 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 | Xeyr | — |
always_online | boolean | Xeyr | — |
ssl_mode | CdnSslMode | Xeyr | 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 | Xeyr | — |
Cavab
| Ad | Tip | Tələb olunur | Nədir |
|---|---|---|---|
site_id | Uuid | Bəli | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
supported | boolean | Bəli | 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 | Bəli | 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[] | Xeyr | 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 | Bəli | 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 | Bəli | Bypass the cache entirely so edits are visible immediately. The provider expires this automatically — see `development_mode_seconds_remaining`. |
development_mode_seconds_remaining | integer | Bəli | 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 | Bəli | Serve an archived copy of the page when the origin is unreachable. |
ssl_mode | CdnSslMode | Bəli | 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 | Bəli | Serve Brotli-compressed responses to clients that accept them. |
Bu son nöqtənin qaytara biləcəyi xətalar
401 · 403 · 404 · 422 · 429 · 503