---
title: "Suspend or restore the site of an audit finding"
method: PATCH
path: "/stats/audits/findings/{findingId}/site-suspension"
tags: ["Stats"]
---

# Suspend or restore the site of an audit finding

`PATCH /stats/audits/findings/{findingId}/site-suspension`

## Request

- Base URL: `https://api.nippy.host`
- URL: `https://api.nippy.host/stats/audits/findings/{findingId}/site-suspension`
- Auth: `bearer` (a scheme the document does not define)

Admin-only. The same abuse suspension as the admin site page: 451 at the edge and a site.suspended / site.restored activity. A suspension marks the finding and the site’s other open findings in the report actioned. Refused while the owner has a suspected-CSAM finding and no evidence case.

## Path parameters

- `findingId` string, required

## Request body

- SuspendAuditSiteDto
  - `suspended` boolean, required: `true` suspends the site for abuse; `false` lifts an abuse suspension.

## Response `200`

- APIAuditSiteSuspensionResult
  - `findings` APIAuditFinding[], required: Every finding in the report on that site, read again: after a suspension the open ones are actioned.
    - `id` string, required
    - `reportId` string, required
    - `subdomain` string, required
    - `siteId` string, nullable, required: Null when the site was deleted after the audit.
    - `siteStatus` string, nullable, required: The site status now, e.g. `live` or `suspended`.
    - `siteSuspendedReason` string, nullable, required
    - `accountId` string, nullable, required
    - `ownerUserId` string, nullable, required
    - `ownerEmail` string, nullable, required: The owner’s address at publish time.
    - `ownerBanned` boolean, required: The owner is banned now.
    - `ownerEvidenceCases` number, required: Evidence cases (ADR 0061) opened on the owner. A ban from the audit needs one when the owner has a suspected-CSAM finding.
    - `category` 'csam' | 'phishing' | 'malware' | 'illegal' | 'scam' | 'spam' | 'suspicious' | 'privacy', required
    - `confidence` 'high' | 'medium' | 'low', required
    - `summary` string, required
    - `evidence` string, nullable, required
    - `tier` 'A' | 'B' | 'C' | 'D', required: Null for findings with no tier.
    - `recommendedAction` 'ban_owner' | 'suspend_site' | 'email_owner' | 'dismiss', required: Null for open findings with no recommendation.
    - `recommendationReason` string, nullable, required: Why that tier and that action.
    - `status` 'open' | 'actioned' | 'dismissed', required
    - `reviewNote` string, nullable, required
    - `reviewedAt` string, nullable, required
    - `reviewedByName` string, nullable, required
    - `createdAt` string, required

## Other responses

- `400`: The site was deleted after the audit
- `403`: Admin access required
- `404`: Finding or site not found
- `409`: The site is in a state the action does not apply to, or a CSAM finding with no evidence case

---

[API](https://skmtc.dev/nippy/apis/nippy-backend-api.md) · [All operations](https://skmtc.dev/nippy/apis/nippy-backend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/nippy/apis/nippy-backend-api/revisions/7ab23f040a55?raw)
