Pyrae::Integration::ViolationTriggerRule Reference
Quick Type Reference
export interface PyraeIntegrationViolationTriggerRule {
Name?: string;
IntegrationUrn: string;
MatchResourceUrn?: string;
MatchTeamUrn?: string;
MatchSubteamUrns?: boolean;
MatchPolicyUrn?: string;
UseExprPreset?: string;
ExprType?: string;
ExprString?: string;
}
PyraeIntegrationViolationTriggerRule
A rule that determines, given a specific Violation being opened or closed, should the associated IntegrationUrn be executed
Name
Description: The resourceName of the URN. By default, one will be generated based on the logical ID with randomness appended to the end
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.Name
Type:
export type Name = string;
IntegrationUrn
Description: The URN of the integration which is conditionally ran based on the rules outlined in the Match fields of this resource.
Required: Yes
Location:
$.PyraeIntegrationViolationTriggerRule.IntegrationUrn
Type:
export type IntegrationUrn = string;
MatchResourceUrn
Description: An exact match on a specific resource URN. This rule can be omitted to match all resources.
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.MatchResourceUrn
Type:
export type MatchResourceUrn = string;
MatchTeamUrn
Description: An exact match on a Team URN. This rule can be omitted to match all teams.
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.MatchTeamUrn
Type:
export type MatchTeamUrn = string;
MatchSubteamUrns
Description: If the MatchTeamUrn field is provided, setting this field to true will trigger integrations for all subteams of the specified team (Good for managers looking to monitor many teams at once). If MatchTeamUrn is unspecified, this field does nothing.
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.MatchSubteamUrns
Type:
/** If the MatchTeamUrn field is provided, setting this field to true will trigger integrations for all subteams of the specified team (Good for managers looking to monitor many teams at once). If MatchTeamUrn is unspecified, this field does nothing. */
export type MatchSubteamUrns = boolean;
MatchPolicyUrn
Description: An exact match on a specific Policy URN. This rule can be omitted to match all policies. (Useful for tiger teams that are rolling out a new policy and want to keep a tight watch on it)
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.MatchPolicyUrn
Type:
export type MatchPolicyUrn = string;
UseExprPreset
Description: This field determines how to map the result of the open/close violation into the downstream integration. Typically, this should line up with the Integration's IntegrationType. Valid values are
SLACK_SEND_MESSAGE_TO_CHANNEL
,SNS_PUBLISH_TO_TOPIC
,OPSGENIE_ALERT_TEAM
,EMAIL_SEND_TO_ADDR
,JIRA_MIRROR_TO_STORY
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.UseExprPreset
Type:
export type UseExprPreset = string;
ExprType
Description: This field is currently unsupported. It can be safely left blank. It will later be used so that customers can specify custom expressions to change how the integrations are triggered.
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.ExprType
Type:
export type ExprType = string;
ExprString
Description: This field is currently unsupported. It can be safely left blank. It will later be used so that customers can specify custom expressions to change how the integrations are triggered.
Required: No
Location:
$.PyraeIntegrationViolationTriggerRule.ExprString
Type:
export type ExprString = string;
JSON Schema
{
"$ref": "#/definitions/PyraeIntegrationViolationTriggerRule",
"definitions": {
"PyraeIntegrationViolationTriggerRule": {
"type": "object",
"properties": {
"Name": {
"anyOf": [
{
"type": "string"
}
],
"description": "The resourceName of the URN. By default, one will be generated based on the logical ID with randomness appended to the end"
},
"IntegrationUrn": {
"anyOf": [
{
"type": "string"
}
],
"description": "The URN of the integration which is conditionally ran based on the rules outlined in the Match fields of this resource."
},
"MatchResourceUrn": {
"anyOf": [
{
"type": "string"
}
],
"description": "An exact match on a specific resource URN. This rule can be omitted to match all resources."
},
"MatchTeamUrn": {
"anyOf": [
{
"type": "string"
}
],
"description": "An exact match on a Team URN. This rule can be omitted to match all teams."
},
"MatchSubteamUrns": {
"type": "boolean",
"description": "If the MatchTeamUrn field is provided, setting this field to true will trigger integrations for all subteams of the specified team (Good for managers looking to monitor many teams at once). If MatchTeamUrn is unspecified, this field does nothing."
},
"MatchPolicyUrn": {
"anyOf": [
{
"type": "string"
}
],
"description": "An exact match on a specific Policy URN. This rule can be omitted to match all policies. (Useful for tiger teams that are rolling out a new policy and want to keep a tight watch on it)"
},
"UseExprPreset": {
"anyOf": [
{
"type": "string"
}
],
"description": "This field determines how to map the result of the open/close violation into the downstream integration. Typically, this should line up with the Integration's IntegrationType. Valid values are `SLACK_SEND_MESSAGE_TO_CHANNEL`, `SNS_PUBLISH_TO_TOPIC`, `OPSGENIE_ALERT_TEAM`, `EMAIL_SEND_TO_ADDR`, `JIRA_MIRROR_TO_STORY`"
},
"ExprType": {
"anyOf": [
{
"type": "string"
}
],
"description": "This field is currently unsupported. It can be safely left blank. It will later be used so that customers can specify custom expressions to change how the integrations are triggered."
},
"ExprString": {
"anyOf": [
{
"type": "string"
}
],
"description": "This field is currently unsupported. It can be safely left blank. It will later be used so that customers can specify custom expressions to change how the integrations are triggered."
}
},
"required": [
"IntegrationUrn"
],
"additionalProperties": false,
"description": "A rule that determines, given a specific Violation being opened or closed, should the associated IntegrationUrn be executed"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}