hosting

POST /v1/sites/{siteId}/security/scan

Scan a site for malware now.

Bütün hosting nöqtələri

Doğrulama

API açarını bearer token kimi göndərin. Bu səhifə spresifikasiyada xüsusi icazə tələb etmir, buna görə də açarınıza ehtiyac duyduğu minimum səviyyədə icazə verin və güman etmək əvəzinə cavabı yoxlayın.

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 POST https://api.zinndigital.com/v1/sites/{siteId}/security/scan \
  -H "Authorization: Bearer zdk_live_…"

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

Queues an on-demand scan and answers `202` with the site's state, which will read `scanning` once the workflow starts. Gated on `sites.view`, not on a write key: asking for a fresh scan of your own site changes nothing about it, and it is the first thing a worried customer does. **Concurrency is bounded by the workflow id, which is per site.** A second request while a scan is running is still a `202` — a scan of this site *is* in progress, which is what was asked for — and no second scan of the same document root starts. `422` when the site is not running (a suspended or still-provisioning site has no document root to scan). `503` when the durable-execution service is unreachable: answering `202` there would flip the card to *scanning…* for a scan that was never started, and the customer would watch a spinner for hours.

Parametrlər

AdTipTələb olunurNədir
siteId (path)UuidBəliSite ID (UUIDv7).

Cavab

AdTipTələb olunurNədir
statusMalwareStatusBəliA site's scan verdict. There is deliberately **no** `unscanned` member: a site nothing has looked at yet is `clean` with `last_scan_at: null`, which is one nullable timestamp ra…
last_scan_atobjectBəliWhen a scan last **completed**. `null` = never scanned. A scan that failed does not stamp this, so a stale success can never be mistaken for a fresh one.
detectionsMalwareDetection[]Bəli
recent_resolutionsResolvedMalwareDetection[]BəliFindings that were present and are not any more, most recently cleared first — the record of the protection having worked, which an all-clear alone cannot show. `resolved_at` al…
can_rescanbooleanBəliWhether `rescanSite` will accept a request for this site: false while a scan is already running, false for a site that is not running at all (there is no document root to scan),…
last_scan_error_codestring<, scan_conflict, scanner_unreachable, scanner_missing, scan_failed>BəliWhy a scan that **ran** could not finish; empty when none has failed. Non-empty means an attempt was made against this site and broke — an unreachable host, a vendor error, a sc…
unavailable_reasonstringBəliWhy **no scan was attempted**; empty when one was. A stable machine identifier for the client to localise, never a sentence and never a vendor name. `vendor_unsupported` — the h…
runtimeSiteRuntimeSecurityBəliWhat our runtime sensor saw **happen** on this site, and whether anything was watching it at all. The malware fields above are a verdict on files at rest; this is the other half…

Bu son nöqtənin qaytara biləcəyi xətalar

401 · 403 · 404 · 422 · 429 · 503