The policiesSearch query allows you to paginate through all of your alert policies per account. It also allows some filtering functionality on the account policies.
Here's an example:
{
actor {
account(id: YOUR_ACCOUNT_ID) {
alerts {
policiesSearch {
policies {
id
name
incidentPreference
}
}
}
}
}
}
In order to paginate through your policies, you must request the nextCursor field on your initial query.
With cursor pagination, you continue to make a request through the result set until the nextCursor that is returned from the response comes back empty. This signifies that you reached the end of your results.
Here's an example:
{
actor {
account(id: YOUR_ACCOUNT_ID) {
alerts {
policiesSearch {
nextCursor
policies {
id
name
incidentPreference
}
totalCount
}
}
}
}
}
The code above returns a set of results like this:
The API allows policy queries by a sub-select of ids. This will only return the information for these policies that you provide.
{
actor {
account(id: YOUR_ACCOUNT_ID) {
alerts {
policiesSearch(searchCriteria: {
ids: [A_POLICY_ID, ANOTHER_POLICY_ID]
}) {
policies {
id
name
incidentPreference
}
}
}
}
}
}
The API allows policy queries by name. Use name for matching by exact names or nameLike for a partial match. Both search criteria are case insensitive. This will only return the information for the policies that match the name supplied.
In this example, we want to find policies with "DevOps" in the name:
{
actor {
account(id: YOUR_ACCOUNT_ID) {
alerts {
policiesSearch(searchCriteria: {
nameLike: "DevOps"
}) {
policies {
id
name
}
}
}
}
}
}
The API lets you query by policy id:
{
actor {
account(id: YOUR_ACCOUNT_ID) {
alerts {
policy(id: YOUR_POLICY_ID) {
id
name
incidentPreference
}
}
}
}
}
Create a policy
In order to create a policy, supply a name and an incidentPreference.
The incident preference will configure how incidents get created for each condition created in the policy. For more information, refer to the documentation about choosing your incident preference.
When you update a policy, note that you don't need to supply all of the attributes on the policy. For example, you only need to supply the name if you only intend to update the name: