Skip to content

Restore an archived (dismissed) security alert

PATCH/api/public/v1/alerts/{alert_id}/restore

Clears `dismissed_at so the row re-enters the active triage queue. Idempotent on already-active rows. Returns 409 when a fresh active alert already exists for the same (organization_id, event_id)` — the dedup unique index would reject the restore. Cross-tenant returns 404.

Terminal window
curl --fail-with-body -X PATCH 'https://app.openlatch.ai/api/public/v1/alerts/<alert_id>/restore' \
-H "Authorization: Bearer $OPENLATCH_API_KEY"
Role in the organizationThis endpoint
ownerAllowed
adminAllowed
editorAllowed
viewerNot allowed

A key carries the role its owner holds in the organization. See Authentication.

API key scope: alerts:write

ParameterTypeDescription
alert_idstring (uuid)Required.
ParameterTypeDescription
Idempotency-Keystring or nullOptional. Makes the request safe to retry: the same key and the same request, within 24 hours, returns the stored response with Idempotent-Replayed: true and runs once.
FieldTypeDescription
dismissed_atstring (date-time) or nullRequired.
idstring (uuid)Required.
read_atstring (date-time) or nullRequired.
statusstring — one of unread, read, dismissedRequired.
{
"dismissed_at": "2026-01-15T14:32:05Z",
"id": "3f6c1a2e-8b4d-4c1f-9a7e-0d5b2c8e4f10",
"read_at": "2026-01-15T14:32:05Z",
"status": "unread"
}