List
List all alerts for your account.
This endpoint supports a number of filters, which can help find alerts matching certain criteria. These filters work similarly to the filters on the incidents endpoint, where a field is specified alongside a comparison operator in the query string.
Note that:
- Filters may be used together, and the result will be alerts that match all filters.
- All query parameters must be URI encoded.
By deduplication_key
Find all alerts with deduplication_key ABC:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'deduplication_key[is]=ABC'
By status
Find all alerts in a firing state:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'status[one_of]=firing'
By alert_source
Find all alerts from a specific alert source (by alert source ID):
curl --get 'https://api.incident.io/v2/alerts' \
--data 'alert_source[one_of]=01GBSQF3FHF7FWZQNWGHAVQ804'
Find all alerts not from a specific alert source:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'alert_source[not_in]=01GBSQF3FHF7FWZQNWGHAVQ804'
By alert_group_id
Find all alerts in a specific alert group:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'alert_group_id[one_of]=01GBSQF3FHF7FWZQNWGHAVQ804'
By created_at
Find all alerts that follow specified date parameters for created_at field. Possible values are “gte” (greater than or equal to), “lte” (less than or equal to), and “date_range” (between two dates). The following example finds all alerts created after 2025-01-01:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'created_at[gte]=2025-01-01'
To find alerts created within a specific date range, use the date_range option with tilde-separated dates:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'created_at[date_range]=2024-12-02~2024-12-08'
By has_notes
Find all alerts that have notes attached:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'has_notes[is]=true'
Find all alerts that have no notes attached:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'has_notes[is]=false'
By attributes
Alerts can be filtered by their attribute values. Each filter is keyed by the alert attribute ID, followed by an operator and the values to match. The accepted operators depend on the attribute’s type.
Find all alerts where attribute 01GBSQF3FHF7FWZQNWGHAVQ804 is one of two catalog entries:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'attributes[01GBSQF3FHF7FWZQNWGHAVQ804][one_of]=01GBSQF3FHF7FWZQNWGHAVQ804' \
--data 'attributes[01GBSQF3FHF7FWZQNWGHAVQ804][one_of]=01ET65M7ZARSFZ6TFDFVQDN9AA'
You can filter on multiple attributes at once, and the result will be alerts that match all of them.
Maintenance windows
By default, all alerts are returned including those held by a maintenance window. To exclude alerts that are held by a maintenance window:
curl --get 'https://api.incident.io/v2/alerts' \
--data 'include_maintenance_window[is]=false'
alerts.view scope.Authorizations
API key from your incident.io dashboard (Settings → API keys)
Query Parameters
Number of alerts to return per page
1 <= x <= 5025
If provided, pass this as the 'after' param to load the next page
"01FCNDV6P870EA6S7TK1DSYDG0"
Filter on alert deduplication key. The accepted operator is 'is'.
Filter on alert status. The accepted operators are 'one_of', or 'not_in'.
Filter on alert source by ID. The accepted operators are 'one_of', or 'not_in'.
Filter on alert group ID. Returns alerts that belong to any of the specified groups. The accepted operator is 'one_of'.
Filter on alert created at timestamp. Accepted operators are 'gte', 'lte' and 'date_range'.
Filter on an alerts attributes. Alert attribute ID should be sent, followed by the operator and values. Accepted operator will depend on the attribute type.
Filter on whether an alert has notes. The accepted operator is 'is'.
Filter on whether to include maintenance window alerts. The accepted operator is 'is'.