Skip to main content

rules

Creates, updates, deletes or gets a rule resource or lists rules in a region

Overview

Namerules
TypeResource
DescriptionResource Type definition for AWS::Events::Rule
Idaws.events.rules

Fields

NameDatatypeDescription
event_bus_namestringThe name or ARN of the event bus associated with the rule. If you omit this, the default event bus is used.
event_patternobjectThe event pattern of the rule. For more information, see Events and Event Patterns in the Amazon EventBridge User Guide.
schedule_expressionstringThe scheduling expression. For example, "cron(0 20 * * ? *)", "rate(5 minutes)". For more information, see Creating an Amazon EventBridge rule that runs on a schedule.
descriptionstringThe description of the rule.
statestringThe state of the rule.
targetsarrayAdds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.
Targets are the resources that are invoked when a rule is triggered.
arnstringThe ARN of the rule, such as arn:aws:events:us-east-2:123456789012:rule/example.
role_arnstringThe Amazon Resource Name (ARN) of the role that is used for target invocation.
namestringThe name of the rule.
regionstringAWS region.

Methods

NameAccessible byRequired Params
create_resourceINSERTregion
delete_resourceDELETEdata__Identifier, region
update_resourceUPDATEdata__Identifier, data__PatchDocument, region
list_resourcesSELECTregion
get_resourceSELECTdata__Identifier, region

SELECT examples

Gets all rules in a region.

SELECT
region,
event_bus_name,
event_pattern,
schedule_expression,
description,
state,
targets,
arn,
role_arn,
name
FROM aws.events.rules
WHERE region = 'us-east-1';

Gets all properties from an individual rule.

SELECT
region,
event_bus_name,
event_pattern,
schedule_expression,
description,
state,
targets,
arn,
role_arn,
name
FROM aws.events.rules
WHERE region = 'us-east-1' AND data__Identifier = '<Arn>';

INSERT example

Use the following StackQL query and manifest file to create a new rule resource, using stack-deploy.

/*+ create */
INSERT INTO aws.events.rules (
EventBusName,
EventPattern,
ScheduleExpression,
Description,
State,
Targets,
RoleArn,
Name,
region
)
SELECT
'{{ EventBusName }}',
'{{ EventPattern }}',
'{{ ScheduleExpression }}',
'{{ Description }}',
'{{ State }}',
'{{ Targets }}',
'{{ RoleArn }}',
'{{ Name }}',
'{{ region }}';

DELETE example

/*+ delete */
DELETE FROM aws.events.rules
WHERE data__Identifier = '<Arn>'
AND region = 'us-east-1';

Permissions

To operate on the rules resource, the following permissions are required:

Read

iam:PassRole,
events:DescribeRule,
events:ListTargetsByRule

Create

iam:PassRole,
events:DescribeRule,
events:PutRule,
events:PutTargets

Update

iam:PassRole,
events:DescribeRule,
events:PutRule,
events:RemoveTargets,
events:PutTargets

List

events:ListRules

Delete

iam:PassRole,
events:DescribeRule,
events:DeleteRule,
events:RemoveTargets,
events:ListTargetsByRule