Enterprise
Open source
Alerting provisioning API
Version
1.1.0
Content negotiation
Consumes
Produces
- application/json
- text/yaml
- application/yaml
All endpoints
Alert rules
Notification policies
Mute timings
Templates
Paths
Delete a specific alert rule by UID. (RouteDeleteAlertRule)
DELETE /api/v1/provisioning/alert-rules/{UID}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
UID | path | string | string | | ✓ | | Alert rule UID |
All responses
Code | Status | Description | Has headers | Schema |
---|
204 | No Content | The alert rule was deleted successfully. | | schema |
Responses
204 - The alert rule was deleted successfully.
Status: No Content
Schema
DELETE /api/v1/provisioning/contact-points/{UID}
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
UID | path | string | string | | ✓ | | UID is the contact point unique identifier |
All responses
Code | Status | Description | Has headers | Schema |
---|
204 | No Content | The contact point was deleted successfully. | | schema |
Responses
Status: No Content
Delete a mute timing. (RouteDeleteMuteTiming)
DELETE /api/v1/provisioning/mute-timings/{name}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | path | string | string | | ✓ | | Mute timing name |
All responses
Code | Status | Description | Has headers | Schema |
---|
204 | No Content | The mute timing was deleted successfully. | | schema |
Responses
204 - The mute timing was deleted successfully.
Status: No Content
Schema
Delete a template. (RouteDeleteTemplate)
DELETE /api/v1/provisioning/templates/{name}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | path | string | string | | ✓ | | Template Name |
All responses
Code | Status | Description | Has headers | Schema |
---|
204 | No Content | The template was deleted successfully. | | schema |
Responses
204 - The template was deleted successfully.
Status: No Content
Schema
Get a specific alert rule by UID. (RouteGetAlertRule)
GET /api/v1/provisioning/alert-rules/{UID}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
UID | path | string | string | | ✓ | | Alert rule UID |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | ProvisionedAlertRule | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - ProvisionedAlertRule
Status: OK
Schema
ProvisionedAlertRule
404 - Not found.
Status: Not Found
Schema
GET /api/v1/provisioning/alert-rules/{UID}/export
Produces
- application/json
- application/yaml
- text/yaml
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
UID | path | string | string | | ✓ | | Alert rule UID |
download | query | boolean | bool | | | | Whether to initiate a download of the file or not. |
format | query | string | string | | | "yaml" | Format of the downloaded file, either yaml or json. Accept header can also be used, but the query parameter will take precedence. |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | AlertingFileExport | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - AlertingFileExport
Status: OK
Schema
AlertingFileExport
404 - Not found.
Status: Not Found
Schema
Get a rule group. (RouteGetAlertRuleGroup)
GET /api/v1/provisioning/folder/{FolderUID}/rule-groups/{Group}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
FolderUID | path | string | string | | ✓ | | |
Group | path | string | string | | ✓ | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | AlertRuleGroup | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - AlertRuleGroup
Status: OK
Schema
AlertRuleGroup
404 - Not found.
Status: Not Found
Schema
GET /api/v1/provisioning/folder/{FolderUID}/rule-groups/{Group}/export
Produces
- application/json
- application/yaml
- text/yaml
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
FolderUID | path | string | string | | ✓ | | |
Group | path | string | string | | ✓ | | |
download | query | boolean | bool | | | | Whether to initiate a download of the file or not. |
format | query | string | string | | | "yaml" | Format of the downloaded file, either yaml or json. Accept header can also be used, but the query parameter will take precedence. |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | AlertingFileExport | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - AlertingFileExport
Status: OK
Schema
AlertingFileExport
404 - Not found.
Status: Not Found
Schema
Get all the alert rules. (RouteGetAlertRules)
GET /api/v1/provisioning/alert-rules
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | ProvisionedAlertRules | | schema |
Responses
200 - ProvisionedAlertRules
Status: OK
Schema
ProvisionedAlertRules
GET /api/v1/provisioning/alert-rules/export
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
download | query | boolean | bool | | | | Whether to initiate a download of the file or not. |
format | query | string | string | | | "yaml" | Format of the downloaded file, either yaml or json. Accept header can also be used, but the query parameter will take precedence. |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | AlertingFileExport | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - AlertingFileExport
Status: OK
Schema
AlertingFileExport
404 - Not found.
Status: Not Found
Schema
GET /api/v1/provisioning/contact-points
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | query | string | string | | | | Filter by name |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | ContactPoints | | schema |
Responses
Status: OK
ContactPoints
Get a mute timing. (RouteGetMuteTiming)
GET /api/v1/provisioning/mute-timings/{name}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | path | string | string | | ✓ | | Mute timing name |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | MuteTimeInterval | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - MuteTimeInterval
Status: OK
Schema
MuteTimeInterval
404 - Not found.
Status: Not Found
Schema
Get all the mute timings. (RouteGetMuteTimings)
GET /api/v1/provisioning/mute-timings
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | MuteTimings | | schema |
Responses
200 - MuteTimings
Status: OK
Schema
MuteTimings
Get the notification policy tree. (RouteGetPolicyTree)
GET /api/v1/provisioning/policies
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | Route | | schema |
Responses
200 - Route
Status: OK
Schema
Route
Get a notification template. (RouteGetTemplate)
GET /api/v1/provisioning/templates/{name}
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | path | string | string | | ✓ | | Template Name |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | NotificationTemplate | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - NotificationTemplate
Status: OK
Schema
NotificationTemplate
404 - Not found.
Status: Not Found
Schema
Get all notification templates. (RouteGetTemplates)
GET /api/v1/provisioning/templates
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | NotificationTemplates | | schema |
404 | Not Found | Not found. | | schema |
Responses
200 - NotificationTemplates
Status: OK
Schema
NotificationTemplates
404 - Not found.
Status: Not Found
Schema
Create a new alert rule. (RoutePostAlertRule)
POST /api/v1/provisioning/alert-rules
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
X-Disable-Provenance | header | string | string | | | | |
Body | body | ProvisionedAlertRule | models.ProvisionedAlertRule | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
201 | Created | ProvisionedAlertRule | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
201 - ProvisionedAlertRule
Status: Created
Schema
ProvisionedAlertRule
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Create a contact point. (RoutePostContactpoints)
POST /api/v1/provisioning/contact-points
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
Body | body | EmbeddedContactPoint | models.EmbeddedContactPoint | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
202 | Accepted | EmbeddedContactPoint | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
202 - EmbeddedContactPoint
Status: Accepted
Schema
EmbeddedContactPoint
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Create a new mute timing. (RoutePostMuteTiming)
POST /api/v1/provisioning/mute-timings
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
Body | body | MuteTimeInterval | models.MuteTimeInterval | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
201 | Created | MuteTimeInterval | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
201 - MuteTimeInterval
Status: Created
Schema
MuteTimeInterval
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Update an existing alert rule. (RoutePutAlertRule)
PUT /api/v1/provisioning/alert-rules/{UID}
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
UID | path | string | string | | ✓ | | Alert rule UID |
X-Disable-Provenance | header | string | string | | | | |
Body | body | ProvisionedAlertRule | models.ProvisionedAlertRule | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | ProvisionedAlertRule | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
200 - ProvisionedAlertRule
Status: OK
Schema
ProvisionedAlertRule
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Update the interval of a rule group. (RoutePutAlertRuleGroup)
PUT /api/v1/provisioning/folder/{FolderUID}/rule-groups/{Group}
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
FolderUID | path | string | string | | ✓ | | |
Group | path | string | string | | ✓ | | |
Body | body | AlertRuleGroup | models.AlertRuleGroup | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | AlertRuleGroup | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
200 - AlertRuleGroup
Status: OK
Schema
AlertRuleGroup
400 - ValidationError
Status: Bad Request
Schema
ValidationError
PUT /api/v1/provisioning/contact-points/{UID}
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
UID | path | string | string | | ✓ | | UID is the contact point unique identifier |
Body | body | EmbeddedContactPoint | models.EmbeddedContactPoint | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
202 | Accepted | Ack | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
Status: Accepted
Ack
Status: Bad Request
ValidationError
Replace an existing mute timing. (RoutePutMuteTiming)
PUT /api/v1/provisioning/mute-timings/{name}
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | path | string | string | | ✓ | | Mute timing name |
Body | body | MuteTimeInterval | models.MuteTimeInterval | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
200 | OK | MuteTimeInterval | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
200 - MuteTimeInterval
Status: OK
Schema
MuteTimeInterval
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Sets the notification policy tree. (RoutePutPolicyTree)
PUT /api/v1/provisioning/policies
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
Body | body | Route | models.Route | | | | The new notification routing tree to use |
All responses
Code | Status | Description | Has headers | Schema |
---|
202 | Accepted | Ack | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
202 - Ack
Status: Accepted
Schema
Ack
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Updates an existing notification template. (RoutePutTemplate)
PUT /api/v1/provisioning/templates/{name}
Consumes
Parameters
Name | Source | Type | Go type | Separator | Required | Default | Description |
---|
name | path | string | string | | ✓ | | Template Name |
Body | body | NotificationTemplateContent | models.NotificationTemplateContent | | | | |
All responses
Code | Status | Description | Has headers | Schema |
---|
202 | Accepted | NotificationTemplate | | schema |
400 | Bad Request | ValidationError | | schema |
Responses
202 - NotificationTemplate
Status: Accepted
Schema
NotificationTemplate
400 - ValidationError
Status: Bad Request
Schema
ValidationError
Clears the notification policy tree. (RouteResetPolicyTree)
DELETE /api/v1/provisioning/policies
Consumes
All responses
Code | Status | Description | Has headers | Schema |
---|
202 | Accepted | Ack | | schema |
Responses
202 - Ack
Status: Accepted
Schema
Ack
Models
Ack
interface{}
AlertQuery
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
datasourceUid | string | string | | | Grafana data source unique identifier; it should be ‘expr’ for a Server Side Expression operation. | |
model | interface{} | interface{} | | | JSON is the raw JSON query and includes the above properties as well as custom properties. | |
queryType | string | string | | | QueryType is an optional identifier for the type of query. | |
It can be used to distinguish different types of queries. | | | | | | |
refId | string | string | | | RefID is the unique identifier of the query, set by the frontend call. | |
relativeTimeRange | RelativeTimeRange | RelativeTimeRange | | | | |
AlertQueryExport
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
datasourceUid | string | string | | | | |
model | interface{} | interface{} | | | | |
queryType | string | string | | | | |
refId | string | string | | | | |
relativeTimeRange | RelativeTimeRange | RelativeTimeRange | | | | |
AlertRuleExport
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
annotations | map of string | map[string]string | | | | |
condition | string | string | | | | |
dasboardUid | string | string | | | | |
data | []alertqueryexport | []*AlertQueryExport | | | | |
execErrState | string | string | | | | |
for | Duration | Duration | | | | |
labels | map of string | map[string]string | | | | |
noDataState | string | string | | | | |
panelId | int64 (formatted integer) | int64 | | | | |
title | string | string | | | | |
uid | string | string | | | | |
AlertRuleGroup
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
folderUid | string | string | | | | |
interval | int64 (formatted integer) | int64 | | | | |
rules | []provisionedalertrule | []*ProvisionedAlertRule | | | | |
title | string | string | | | | |
AlertRuleGroupExport
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
folder | string | string | | | | |
interval | Duration | Duration | | | | |
name | string | string | | | | |
orgId | int64 (formatted integer) | int64 | | | | |
rules | []alertruleexport | []*AlertRuleExport | | | | |
AlertingFileExport
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
apiVersion | int64 (formatted integer) | int64 | | | | |
groups | []alertrulegroupexport | []*AlertRuleGroupExport | | | | |
[]embeddedcontactpoint
Duration
Name | Type | Go type | Default | Description | Example |
---|
Duration | int64 (formatted integer) | int64 | | | |
EmbeddedContactPoint is the contact point type that is used
by grafanas embedded alertmanager implementation.
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
disableResolveMessage | boolean | bool | | | | false |
name | string | string | | | Name is used as grouping key in the UI. Contact points with the | |
same name will be grouped in the UI. | webhook_1 | | | | | |
provenance | string | string | | | | |
settings | JSON | JSON | ✓ | | | |
type | string | string | ✓ | | | webhook |
uid | string | string | | | UID is the unique identifier of the contact point. The UID can be | |
set by the user. | my_external_reference | | | | | |
Json
interface{}
MatchRegexps
MatchRegexps
MatchType
Name | Type | Go type | Default | Description | Example |
---|
MatchType | int64 (formatted integer) | int64 | | | |
Matcher
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
Name | string | string | | | | |
Type | MatchType | MatchType | | | | |
Value | string | string | | | | |
Matchers is a slice of Matchers that is sortable, implements Stringer, and
provides a Matches method to match a LabelSet against all Matchers in the
slice. Note that some users of Matchers might require it to be sorted.
[]matcher
MuteTimeInterval
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
name | string | string | | | | |
time_intervals | []timeinterval | []*TimeInterval | | | | |
MuteTimings
[]mutetimeinterval
NotificationTemplate
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
name | string | string | | | | |
provenance | Provenance | Provenance | | | | |
template | string | string | | | | |
NotificationTemplateContent
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
template | string | string | | | | |
NotificationTemplates
[]notificationtemplate
Matchers
Inlined models
Provenance
Name | Type | Go type | Default | Description | Example |
---|
Provenance | string | string | | | |
ProvisionedAlertRule
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
annotations | map of string | map[string]string | | | | {"runbook_url":"https://supercoolrunbook.com/page/13"} |
condition | string | string | ✓ | | | A |
data | []alertquery | []*AlertQuery | ✓ | | | [{"datasourceUid":"__expr__","model":{"conditions":[{"evaluator":{"params":[0,0],"type":"gt"},"operator":{"type":"and"},"query":{"params":[]},"reducer":{"params":[],"type":"avg"},"type":"query"}],"datasource":{"type":"__expr__","uid":"__expr__"},"expression":"1 == 1","hide":false,"intervalMs":1000,"maxDataPoints":43200,"refId":"A","type":"math"},"queryType":"","refId":"A","relativeTimeRange":{"from":0,"to":0}}] |
execErrState | string | string | ✓ | | | |
folderUID | string | string | ✓ | | | project_x |
for | Duration | Duration | ✓ | | | |
id | int64 (formatted integer) | int64 | | | | |
labels | map of string | map[string]string | | | | {"team":"sre-team-1"} |
noDataState | string | string | ✓ | | | |
orgID | int64 (formatted integer) | int64 | ✓ | | | |
provenance | Provenance | Provenance | | | | |
ruleGroup | string | string | ✓ | | | eval_group_1 |
title | string | string | ✓ | | | Always firing |
uid | string | string | | | | |
updated | date-time (formatted string) | strfmt.DateTime | | | | |
ProvisionedAlertRules
[]provisionedalertrule
Regexp
A Regexp is safe for concurrent use by multiple goroutines,
except for configuration methods, such as Longest.
interface{}
RelativeTimeRange
RelativeTimeRange is the per query start and end time
for requests.
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
from | Duration | Duration | | | | |
to | Duration | Duration | | | | |
Route
A Route is a node that contains definitions of how to handle alerts. This is modified
from the upstream alertmanager in that it adds the ObjectMatchers property.
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
continue | boolean | bool | | | | |
group_by | []string | []string | | | | |
group_interval | string | string | | | | |
group_wait | string | string | | | | |
match | map of string | map[string]string | | | Deprecated. Remove before v1.0 release. | |
match_re | MatchRegexps | MatchRegexps | | | | |
matchers | Matchers | Matchers | | | | |
mute_time_intervals | []string | []string | | | | |
object_matchers | ObjectMatchers | ObjectMatchers | | | | |
provenance | Provenance | Provenance | | | | |
receiver | string | string | | | | |
repeat_interval | string | string | | | | |
routes | []route | []*Route | | | | |
TimeInterval
TimeInterval describes intervals of time. ContainsTime will tell you if a golang time is contained
within the interval.
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
days_of_month | []string | []string | | | | |
location | string | string | | | | |
months | []string | []string | | | | |
times | []timerange | []*TimeRange | | | | |
weekdays | []string | []string | | | | |
years | []string | []string | | | | |
TimeRange
For example, 4:00PM to End of the day would Begin at 1020 and End at 1440.
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
EndMinute | int64 (formatted integer) | int64 | | | | |
StartMinute | int64 (formatted integer) | int64 | | | | |
ValidationError
Properties
Name | Type | Go type | Required | Default | Description | Example |
---|
msg | string | string | | | | error message |