Show Patch & Protect

View as MarkdownOpen in Claude
One website's Patch & Protect, addressed by the row id its protection carries. `status` says whether the protection is on, `connection_status` how it is doing against the security provider (`connected`, `sync_error`, `disconnected`, `site_not_found`, `api_unreachable`, `site_not_linked`, or `unknown` before the first health check), and `last_stats_at` when its attack figures were last read. `configuration` is the website's settings, read-only here: editing them stays in the dashboard, where a per-website edit forks the shared configuration. Two values never leave the server: the CAPTCHA secret keys, which are credentials of the customer's provider account, and the custom login slug, because a hidden login URL that is handed out is not hidden. `custom_login_enabled` does travel, so a reader knows the login was moved without learning where. A website with no protection has no row at all: read `has_patchstack` and `filter[patchstack]` on `/sites` instead. Switching the protection on is `POST /patchstack-services/bulk`.

Authentication

AuthorizationBearer

Personal access token created in the Modular DS dashboard; read-only tokens can only call GET endpoints.

Path parameters

site_preset_patchstackstringRequired

Response

200 - A protected website

dataobjectOptional
jsonapiobjectOptional