Creates an Alertmanager silence for a specific active alert on the target system.
The request identifies the live alert by fingerprint. The backend resolves the alert,
builds the silence matchers server-side, and always uses the system's authoritative
system_key.
If end_at is provided it takes precedence over duration_minutes.
Requires manage:systems permission.
Body
Required
-
Fingerprint of the active alert to silence
-
Optional silence comment. Defaults to a system-generated value when empty.
-
Optional silence 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.
Responses
-
Alert silence created successfully
-
Validation failed.
data.typeis alwaysvalidation_error.data.errors[]lists per-field failures with stablemessagecodes the UI consumes for i18n:required(missing field),invalid_format(bad fingerprint regex or non-RFC3339 end_at),must_be_future(end_at in the past),max/min(out of range duration_minutes). -
Unauthorized - invalid or missing token
-
Forbidden - insufficient permissions
-
Resource not found
curl \
--request POST 'https://collect.your-domain.com/api/systems/sys_123456789/alerts/silences' \
--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": "fingerprint",
"message": "required"
}
]
}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "fingerprint",
"message": "invalid_format",
"value": "bad!fingerprint"
}
]
}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "end_at",
"message": "invalid_format",
"value": "not-a-date"
}
]
}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "end_at",
"message": "must_be_future",
"value": "2020-01-01T00:00:00Z"
}
]
}
}
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "duration_minutes",
"message": "max",
"value": "999999"
}
]
}
}
{
"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"
}
]
}
}