hosting

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

Scan a site for malware now.

Все эндпоинты hosting

Вся документация для разработчиков

Аутентификация

Передайте API-ключ в качестве маркера носителя (bearer token). Эта конечная точка не указывает конкретное разрешение в спецификации, поэтому предоставьте своему ключу минимум необходимых прав и проверьте ответ, вместо того чтобы делать предположения.

Этот эндпоинт не принимает идентификатор организации. Ваш ключ уже определяет организацию, к которой он принадлежит, и ответ ограничивается ее рамками.

Попробовать

Замените всё в угловых скобках на собственные значения, а плейсхолдер ключа — на ключ из вашей панели управления.

curl -X POST https://api.zinndigital.com/v1/sites/{siteId}/security/scan \
  -H "Authorization: Bearer zdk_live_…"

Вошли в систему? Консоль API в вашей панели управления автоматически подставляет реальный идентификатор вашей организации и ваш собственный ключ, а также выполняет запрос к работающему API, чтобы вы могли увидеть актуальный ответ. Откройте эту конечную точку в API-консоли

Подробнее

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.

Параметры

ИмяТипОбязательноЧто это
siteId (path)UuidДаSite ID (UUIDv7).

Ответ

ИмяТипОбязательноЧто это
statusMalwareStatusДаA 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…
last_scan_atobjectДаWhen 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[]Да
recent_resolutionsResolvedMalwareDetection[]ДаFindings 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
can_rescanbooleanДаWhether 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>ДаWhy 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 scan…
unavailable_reasonstringДаWhy 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…
runtimeSiteRuntimeSecurityДаWhat 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 —…

Ошибки, которые может возвращать этот эндпоинт

401 · 403 · 404 · 422 · 429 · 503