hosting
GET /v1/sites/{siteId}/protection
Get every protection control for a site.
Autenticação
Envie uma chave de API como um token de portador. A chave deve ter a permissão sites.view; uma chave sem ela é recusada com 403, e não 404.
Este endpoint não requer um ID de organização. Sua chave já identifica a organização à qual pertence, e a resposta é delimitada a ela.
Experimente
Substitua qualquer item entre colchetes por seus próprios valores e o espaço reservado para a chave por uma chave do seu painel.
curl -X GET https://api.zinndigital.com/v1/sites/{siteId}/protection \
-H "Authorization: Bearer zdk_live_…"Conectado? O console da API no seu painel preenche o ID da sua organização real e a sua própria chave, e executa a requisição contra a API de produção para que você possa ver a resposta real. Abra este endpoint no console da API
Detalhes
Blocked countries, blocked addresses, hotlink rules and password-protected folders, in **one** read. One endpoint rather than four, deliberately: each vendor read costs a driver build and an HTTP transport, the card renders all four together, and four endpoints would be four transports and four package lookups per render on an API that rate-limits per source IP (§2.16). The `*_permitted` flags travel with the state so a screen never offers a control whose request is already known to be refused. `hotlink_allow_direct` is **null** when the vendor did not state it — distinct from `false`, because a toggle rendered from an unknown lies about the customer's site. `404` for a site with no vendor hosting package. Requires `sites.view`.
Parâmetros
| Nome | Tipo | Obrigatório | O que é |
|---|---|---|---|
siteId (path) | Uuid | Sim | Site ID (UUIDv7). |
Resposta
| Nome | Tipo | Obrigatório | O que é |
|---|---|---|---|
countries | string[] | Sim | The countries in the rule, as ISO 3166-1 alpha-2 codes. |
countries_allow_only | boolean | Sim | ⛔ `true` means `countries` is an **allow**-list: only those countries reach the site. Its own field rather than a mode string, because inverting it inverts who can reach the cus… |
blocked_addresses | string[] | Sim | The blocked addresses and CIDR ranges, canonicalised — what is here is what is in force, not what was typed. |
visitor_blocking_permitted | boolean | Sim | Whether the package type permits blocking visitors at all. One flag governs both lists. |
hotlink_configured | boolean | Sim | Whether any hotlink rule exists. ⛔ `false` means *no rules have been set up* — **not** "protection is on with no allowed hosts", which would read as a site blocking everybody. |
hotlink_allow_direct | boolean | Sim | Whether a request with no referrer is allowed through. **Null** when the vendor did not state it — distinct from `false`, because a toggle rendered from an unknown lies about th… |
hotlink_allowed_hostnames | string[] | Sim | The sites permitted to embed these files. |
hotlink_redirect_url | string | Sim | Where a refused request is sent instead, or `""` when it is simply refused. |
hotlink_extensions | string[] | Sim | The file extensions the rule covers, normalised without a leading dot. |
hotlink_permitted | boolean | Sim | Whether the package type includes hotlink protection. |
directories | SiteProtectedDirectory[] | Sim | The password-protected folders. ⛔ Read from a vendor field that documents `null` as *"the request could not complete"* — the opposite of "nothing is protected" — so an unreadabl… |
password_protection_permitted | boolean | Sim | Whether the package type includes password-protected directories. |
malware_scan_permitted | boolean | Sim | Whether the package type includes the vendor's malware scan — the capability behind `scanSite` on this deploy target. |
Erros que este endpoint pode retornar
401 · 403 · 404 · 429 · 503