Cross-system parallel of POST /systems/{id}/alerts/silences. Mutes
an active alert identified by fingerprint inside a single tenant
(?organization_id=). The backend looks up the alert in Mimir,
extracts system_key from its labels, builds the matchers
server-side, and delegates to the same silence-creation path used by
the per-system endpoint — so the silence object stored in Mimir is
byte-identical regardless of which route created it.
If end_at is set it takes precedence over duration_minutes.
Requires manage:systems permission.
Query parameters
-
Tenant that owns the alert. Mandatory for every role except Customer (where it is ignored — they're always pinned to their own organization). Owners can address any tenant in the system.
Body
Required
-
Fingerprint of the active alert to silence.
-
Optional silence comment. Defaults to a system-generated value when empty.
-
Optional duration in minutes. Defaults to 60 when omitted. Ignored when end_at is set.
Minimum value is
1, maximum value is10080. -
Optional explicit end time (RFC3339). Takes precedence over duration_minutes.
curl \
--request POST 'https://api.your-domain.com/api/alerts/silences?organization_id=m4m3mdjdiizs' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"fingerprint":"0a9d04bb6eed523f","comment":"silenced during maintenance window","end_at":"2026-05-12T09:16:36Z"}'
{
"fingerprint": "0a9d04bb6eed523f",
"comment": "silenced during maintenance window",
"end_at": "2026-05-12T09:16:36Z"
}
{
"fingerprint": "0a9d04bb6eed523f",
"comment": "investigating",
"duration_minutes": 60
}
{
"code": 200,
"message": "alert silenced successfully",
"data": {
"silence_id": "d9f91c6e-1b33-484e-befa-bfb41020e178"
}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "username",
"message": "required",
"value": "string"
}
]
}
}
{
"code": 401,
"message": "invalid token",
"data": {}
}
{
"code": 403,
"message": "insufficient permissions",
"data": {}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "username",
"message": "required",
"value": "string"
}
]
}
}