UniversalTargetProps

class aws_cdk.aws_scheduler_targets.UniversalTargetProps(*, dead_letter_queue=None, input=None, max_event_age=None, retry_attempts=None, role=None, action, service, policy_statements=None)

Bases: ScheduleTargetBaseProps

Properties for a Universal Target.

Parameters:
  • dead_letter_queue (Optional[IQueue]) – The SQS queue to be used as deadLetterQueue. The events not successfully delivered are automatically retried for a specified period of time, depending on the retry policy of the target. If an event is not delivered before all retry attempts are exhausted, it will be sent to the dead letter queue. Default: - no dead-letter queue

  • input (Optional[ScheduleTargetInput]) – Input passed to the target. Default: - no input.

  • max_event_age (Optional[Duration]) – The maximum age of a request that Scheduler sends to a target for processing. Minimum value of 60. Maximum value of 86400. Default: Duration.hours(24)

  • retry_attempts (Union[int, float, None]) – The maximum number of times to retry when the target returns an error. Minimum value of 0. Maximum value of 185. Default: 185

  • role (Optional[IRole]) – An execution role is an IAM role that EventBridge Scheduler assumes in order to interact with other AWS services on your behalf. If none provided templates target will automatically create an IAM role with all the minimum necessary permissions to interact with the templated target. If you wish you may specify your own IAM role, then the templated targets will grant minimal required permissions. Default: - created by target

  • action (str) – The API action to call. Must be camelCase. You cannot use read-only API actions such as common GET operations.

  • service (str) – The AWS service to call. This must be in lowercase.

  • policy_statements (Optional[Sequence[PolicyStatement]]) – The IAM policy statements needed to invoke the target. These statements are attached to the Scheduler’s role. Note that the default may not be the correct actions as not all AWS services follows the same IAM action pattern, or there may be more actions needed to invoke the target. Default: - Policy with service:action action only.

ExampleMetadata:

infused

Example:

Schedule(self, "Schedule",
    schedule=ScheduleExpression.cron(
        minute="0",
        hour="0"
    ),
    target=targets.Universal(
        service="rds",
        action="stopDBCluster",
        input=ScheduleTargetInput.from_object({
            "DbClusterIdentifier": "my-db"
        })
    )
)

Attributes

action

The API action to call. Must be camelCase.

You cannot use read-only API actions such as common GET operations.

See:

https://docs.aws.amazon.com/scheduler/latest/UserGuide/managing-targets-universal.html#unsupported-api-actions

dead_letter_queue

The SQS queue to be used as deadLetterQueue.

The events not successfully delivered are automatically retried for a specified period of time, depending on the retry policy of the target. If an event is not delivered before all retry attempts are exhausted, it will be sent to the dead letter queue.

Default:
  • no dead-letter queue

input

Input passed to the target.

Default:
  • no input.

max_event_age

The maximum age of a request that Scheduler sends to a target for processing.

Minimum value of 60. Maximum value of 86400.

Default:

Duration.hours(24)

policy_statements

The IAM policy statements needed to invoke the target. These statements are attached to the Scheduler’s role.

Note that the default may not be the correct actions as not all AWS services follows the same IAM action pattern, or there may be more actions needed to invoke the target.

Default:
  • Policy with service:action action only.

retry_attempts

The maximum number of times to retry when the target returns an error.

Minimum value of 0. Maximum value of 185.

Default:

185

role

An execution role is an IAM role that EventBridge Scheduler assumes in order to interact with other AWS services on your behalf.

If none provided templates target will automatically create an IAM role with all the minimum necessary permissions to interact with the templated target. If you wish you may specify your own IAM role, then the templated targets will grant minimal required permissions.

Default:
  • created by target

service

The AWS service to call.

This must be in lowercase.