SDK for PHP 3.x

Client: Aws\Scheduler\SchedulerClient
Service ID: scheduler
Version: 2021-06-30

This page describes the parameters and results for the operations of the Amazon EventBridge Scheduler (2021-06-30), and shows how to use the Aws\Scheduler\SchedulerClient object to call the described operations. This documentation is specific to the 2021-06-30 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

CreateSchedule ( array $params = [] )
Creates the specified schedule.
CreateScheduleGroup ( array $params = [] )
Creates the specified schedule group.
DeleteSchedule ( array $params = [] )
Deletes the specified schedule.
DeleteScheduleGroup ( array $params = [] )
Deletes the specified schedule group.
GetSchedule ( array $params = [] )
Retrieves the specified schedule.
GetScheduleGroup ( array $params = [] )
Retrieves the specified schedule group.
ListScheduleGroups ( array $params = [] )
Returns a paginated list of your schedule groups.
ListSchedules ( array $params = [] )
Returns a paginated list of your EventBridge Scheduler schedules.
ListTagsForResource ( array $params = [] )
Lists the tags associated with the Scheduler resource.
TagResource ( array $params = [] )
Assigns one or more tags (key-value pairs) to the specified EventBridge Scheduler resource.
UntagResource ( array $params = [] )
Removes one or more tags from the specified EventBridge Scheduler schedule group.
UpdateSchedule ( array $params = [] )
Updates the specified schedule.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListScheduleGroups
ListSchedules

Operations

CreateSchedule

$result = $client->createSchedule([/* ... */]);
$promise = $client->createScheduleAsync([/* ... */]);

Creates the specified schedule.

Parameter Syntax

$result = $client->createSchedule([
    'ActionAfterCompletion' => 'NONE|DELETE',
    'ClientToken' => '<string>',
    'Description' => '<string>',
    'EndDate' => <integer || string || DateTime>,
    'FlexibleTimeWindow' => [ // REQUIRED
        'MaximumWindowInMinutes' => <integer>,
        'Mode' => 'OFF|FLEXIBLE', // REQUIRED
    ],
    'GroupName' => '<string>',
    'KmsKeyArn' => '<string>',
    'Name' => '<string>', // REQUIRED
    'ScheduleExpression' => '<string>', // REQUIRED
    'ScheduleExpressionTimezone' => '<string>',
    'StartDate' => <integer || string || DateTime>,
    'State' => 'ENABLED|DISABLED',
    'Target' => [ // REQUIRED
        'Arn' => '<string>', // REQUIRED
        'DeadLetterConfig' => [
            'Arn' => '<string>',
        ],
        'EcsParameters' => [
            'CapacityProviderStrategy' => [
                [
                    'base' => <integer>,
                    'capacityProvider' => '<string>', // REQUIRED
                    'weight' => <integer>,
                ],
                // ...
            ],
            'EnableECSManagedTags' => true || false,
            'EnableExecuteCommand' => true || false,
            'Group' => '<string>',
            'LaunchType' => 'EC2|FARGATE|EXTERNAL',
            'NetworkConfiguration' => [
                'awsvpcConfiguration' => [
                    'AssignPublicIp' => 'ENABLED|DISABLED',
                    'SecurityGroups' => ['<string>', ...],
                    'Subnets' => ['<string>', ...], // REQUIRED
                ],
            ],
            'PlacementConstraints' => [
                [
                    'expression' => '<string>',
                    'type' => 'distinctInstance|memberOf',
                ],
                // ...
            ],
            'PlacementStrategy' => [
                [
                    'field' => '<string>',
                    'type' => 'random|spread|binpack',
                ],
                // ...
            ],
            'PlatformVersion' => '<string>',
            'PropagateTags' => 'TASK_DEFINITION',
            'ReferenceId' => '<string>',
            'Tags' => [
                ['<string>', ...],
                // ...
            ],
            'TaskCount' => <integer>,
            'TaskDefinitionArn' => '<string>', // REQUIRED
        ],
        'EventBridgeParameters' => [
            'DetailType' => '<string>', // REQUIRED
            'Source' => '<string>', // REQUIRED
        ],
        'Input' => '<string>',
        'KinesisParameters' => [
            'PartitionKey' => '<string>', // REQUIRED
        ],
        'RetryPolicy' => [
            'MaximumEventAgeInSeconds' => <integer>,
            'MaximumRetryAttempts' => <integer>,
        ],
        'RoleArn' => '<string>', // REQUIRED
        'SageMakerPipelineParameters' => [
            'PipelineParameterList' => [
                [
                    'Name' => '<string>', // REQUIRED
                    'Value' => '<string>', // REQUIRED
                ],
                // ...
            ],
        ],
        'SqsParameters' => [
            'MessageGroupId' => '<string>',
        ],
    ],
]);

Parameter Details

Members
ActionAfterCompletion
Type: string

Specifies the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.

ClientToken
Type: string

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, EventBridge Scheduler uses a randomly generated token for the request to ensure idempotency.

Description
Type: string

The description you specify for the schedule.

EndDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the EndDate you specify. EventBridge Scheduler ignores EndDate for one-time schedules.

FlexibleTimeWindow
Required: Yes
Type: FlexibleTimeWindow structure

Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.

GroupName
Type: string

The name of the schedule group to associate with this schedule. If you omit this, the default schedule group is used.

KmsKeyArn
Type: string

The Amazon Resource Name (ARN) for the customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt your data.

Name
Required: Yes
Type: string

The name of the schedule that you are creating.

ScheduleExpression
Required: Yes
Type: string

The expression that defines when the schedule runs. The following formats are supported.

  • at expression - at(yyyy-mm-ddThh:mm:ss)

  • rate expression - rate(value unit)

  • cron expression - cron(fields)

You can use at expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use rate and cron expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.

A cron expression consists of six fields separated by white spaces: (minutes hours day_of_month month day_of_week year).

A rate expression consists of a value as a positive integer, and a unit with the following options: minute | minutes | hour | hours | day | days

For more information and examples, see Schedule types on EventBridge Scheduler in the EventBridge Scheduler User Guide.

ScheduleExpressionTimezone
Type: string

The timezone in which the scheduling expression is evaluated.

StartDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the StartDate you specify. EventBridge Scheduler ignores StartDate for one-time schedules.

State
Type: string

Specifies whether the schedule is enabled or disabled.

Target
Required: Yes
Type: Target structure

The schedule's target.

Result Syntax

[
    'ScheduleArn' => '<string>',
]

Result Details

Members
ScheduleArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the schedule.

Errors

ServiceQuotaExceededException:

The request exceeds a service quota.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

CreateScheduleGroup

$result = $client->createScheduleGroup([/* ... */]);
$promise = $client->createScheduleGroupAsync([/* ... */]);

Creates the specified schedule group.

Parameter Syntax

$result = $client->createScheduleGroup([
    'ClientToken' => '<string>',
    'Name' => '<string>', // REQUIRED
    'Tags' => [
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, EventBridge Scheduler uses a randomly generated token for the request to ensure idempotency.

Name
Required: Yes
Type: string

The name of the schedule group that you are creating.

Tags
Type: Array of Tag structures

The list of tags to associate with the schedule group.

Result Syntax

[
    'ScheduleGroupArn' => '<string>',
]

Result Details

Members
ScheduleGroupArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the schedule group.

Errors

ServiceQuotaExceededException:

The request exceeds a service quota.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ThrottlingException:

The request was denied due to request throttling.

DeleteSchedule

$result = $client->deleteSchedule([/* ... */]);
$promise = $client->deleteScheduleAsync([/* ... */]);

Deletes the specified schedule.

Parameter Syntax

$result = $client->deleteSchedule([
    'ClientToken' => '<string>',
    'GroupName' => '<string>',
    'Name' => '<string>', // REQUIRED
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, EventBridge Scheduler uses a randomly generated token for the request to ensure idempotency.

GroupName
Type: string

The name of the schedule group associated with this schedule. If you omit this, the default schedule group is used.

Name
Required: Yes
Type: string

The name of the schedule to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

DeleteScheduleGroup

$result = $client->deleteScheduleGroup([/* ... */]);
$promise = $client->deleteScheduleGroupAsync([/* ... */]);

Deletes the specified schedule group. Deleting a schedule group results in EventBridge Scheduler deleting all schedules associated with the group. When you delete a group, it remains in a DELETING state until all of its associated schedules are deleted. Schedules associated with the group that are set to run while the schedule group is in the process of being deleted might continue to invoke their targets until the schedule group and its associated schedules are deleted.

This operation is eventually consistent.

Parameter Syntax

$result = $client->deleteScheduleGroup([
    'ClientToken' => '<string>',
    'Name' => '<string>', // REQUIRED
]);

Parameter Details

Members
ClientToken
Type: string

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, EventBridge Scheduler uses a randomly generated token for the request to ensure idempotency.

Name
Required: Yes
Type: string

The name of the schedule group to delete.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

GetSchedule

$result = $client->getSchedule([/* ... */]);
$promise = $client->getScheduleAsync([/* ... */]);

Retrieves the specified schedule.

Parameter Syntax

$result = $client->getSchedule([
    'GroupName' => '<string>',
    'Name' => '<string>', // REQUIRED
]);

Parameter Details

Members
GroupName
Type: string

The name of the schedule group associated with this schedule. If you omit this, EventBridge Scheduler assumes that the schedule is associated with the default group.

Name
Required: Yes
Type: string

The name of the schedule to retrieve.

Result Syntax

[
    'ActionAfterCompletion' => 'NONE|DELETE',
    'Arn' => '<string>',
    'CreationDate' => <DateTime>,
    'Description' => '<string>',
    'EndDate' => <DateTime>,
    'FlexibleTimeWindow' => [
        'MaximumWindowInMinutes' => <integer>,
        'Mode' => 'OFF|FLEXIBLE',
    ],
    'GroupName' => '<string>',
    'KmsKeyArn' => '<string>',
    'LastModificationDate' => <DateTime>,
    'Name' => '<string>',
    'ScheduleExpression' => '<string>',
    'ScheduleExpressionTimezone' => '<string>',
    'StartDate' => <DateTime>,
    'State' => 'ENABLED|DISABLED',
    'Target' => [
        'Arn' => '<string>',
        'DeadLetterConfig' => [
            'Arn' => '<string>',
        ],
        'EcsParameters' => [
            'CapacityProviderStrategy' => [
                [
                    'base' => <integer>,
                    'capacityProvider' => '<string>',
                    'weight' => <integer>,
                ],
                // ...
            ],
            'EnableECSManagedTags' => true || false,
            'EnableExecuteCommand' => true || false,
            'Group' => '<string>',
            'LaunchType' => 'EC2|FARGATE|EXTERNAL',
            'NetworkConfiguration' => [
                'awsvpcConfiguration' => [
                    'AssignPublicIp' => 'ENABLED|DISABLED',
                    'SecurityGroups' => ['<string>', ...],
                    'Subnets' => ['<string>', ...],
                ],
            ],
            'PlacementConstraints' => [
                [
                    'expression' => '<string>',
                    'type' => 'distinctInstance|memberOf',
                ],
                // ...
            ],
            'PlacementStrategy' => [
                [
                    'field' => '<string>',
                    'type' => 'random|spread|binpack',
                ],
                // ...
            ],
            'PlatformVersion' => '<string>',
            'PropagateTags' => 'TASK_DEFINITION',
            'ReferenceId' => '<string>',
            'Tags' => [
                ['<string>', ...],
                // ...
            ],
            'TaskCount' => <integer>,
            'TaskDefinitionArn' => '<string>',
        ],
        'EventBridgeParameters' => [
            'DetailType' => '<string>',
            'Source' => '<string>',
        ],
        'Input' => '<string>',
        'KinesisParameters' => [
            'PartitionKey' => '<string>',
        ],
        'RetryPolicy' => [
            'MaximumEventAgeInSeconds' => <integer>,
            'MaximumRetryAttempts' => <integer>,
        ],
        'RoleArn' => '<string>',
        'SageMakerPipelineParameters' => [
            'PipelineParameterList' => [
                [
                    'Name' => '<string>',
                    'Value' => '<string>',
                ],
                // ...
            ],
        ],
        'SqsParameters' => [
            'MessageGroupId' => '<string>',
        ],
    ],
]

Result Details

Members
ActionAfterCompletion
Type: string

Indicates the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.

Arn
Type: string

The Amazon Resource Name (ARN) of the schedule.

CreationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule was created.

Description
Type: string

The description of the schedule.

EndDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the EndDate you specify. EventBridge Scheduler ignores EndDate for one-time schedules.

FlexibleTimeWindow
Type: FlexibleTimeWindow structure

Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.

GroupName
Type: string

The name of the schedule group associated with this schedule.

KmsKeyArn
Type: string

The ARN for a customer managed KMS Key that is be used to encrypt and decrypt your data.

LastModificationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule was last modified.

Name
Type: string

The name of the schedule.

ScheduleExpression
Type: string

The expression that defines when the schedule runs. The following formats are supported.

  • at expression - at(yyyy-mm-ddThh:mm:ss)

  • rate expression - rate(value unit)

  • cron expression - cron(fields)

You can use at expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use rate and cron expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.

A cron expression consists of six fields separated by white spaces: (minutes hours day_of_month month day_of_week year).

A rate expression consists of a value as a positive integer, and a unit with the following options: minute | minutes | hour | hours | day | days

For more information and examples, see Schedule types on EventBridge Scheduler in the EventBridge Scheduler User Guide.

ScheduleExpressionTimezone
Type: string

The timezone in which the scheduling expression is evaluated.

StartDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the StartDate you specify. EventBridge Scheduler ignores StartDate for one-time schedules.

State
Type: string

Specifies whether the schedule is enabled or disabled.

Target
Type: Target structure

The schedule target.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

GetScheduleGroup

$result = $client->getScheduleGroup([/* ... */]);
$promise = $client->getScheduleGroupAsync([/* ... */]);

Retrieves the specified schedule group.

Parameter Syntax

$result = $client->getScheduleGroup([
    'Name' => '<string>', // REQUIRED
]);

Parameter Details

Members
Name
Required: Yes
Type: string

The name of the schedule group to retrieve.

Result Syntax

[
    'Arn' => '<string>',
    'CreationDate' => <DateTime>,
    'LastModificationDate' => <DateTime>,
    'Name' => '<string>',
    'State' => 'ACTIVE|DELETING',
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the schedule group.

CreationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule group was created.

LastModificationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule group was last modified.

Name
Type: string

The name of the schedule group.

State
Type: string

Specifies the state of the schedule group.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

ListScheduleGroups

$result = $client->listScheduleGroups([/* ... */]);
$promise = $client->listScheduleGroupsAsync([/* ... */]);

Returns a paginated list of your schedule groups.

Parameter Syntax

$result = $client->listScheduleGroups([
    'MaxResults' => <integer>,
    'NamePrefix' => '<string>',
    'NextToken' => '<string>',
]);

Parameter Details

Members
MaxResults
Type: int

If specified, limits the number of results returned by this operation. The operation also returns a NextToken which you can use in a subsequent operation to retrieve the next set of results.

NamePrefix
Type: string

The name prefix that you can use to return a filtered list of your schedule groups.

NextToken
Type: string

The token returned by a previous call to retrieve the next set of results.

Result Syntax

[
    'NextToken' => '<string>',
    'ScheduleGroups' => [
        [
            'Arn' => '<string>',
            'CreationDate' => <DateTime>,
            'LastModificationDate' => <DateTime>,
            'Name' => '<string>',
            'State' => 'ACTIVE|DELETING',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

Indicates whether there are additional results to retrieve. If the value is null, there are no more results.

ScheduleGroups
Required: Yes
Type: Array of ScheduleGroupSummary structures

The schedule groups that match the specified criteria.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ThrottlingException:

The request was denied due to request throttling.

ListSchedules

$result = $client->listSchedules([/* ... */]);
$promise = $client->listSchedulesAsync([/* ... */]);

Returns a paginated list of your EventBridge Scheduler schedules.

Parameter Syntax

$result = $client->listSchedules([
    'GroupName' => '<string>',
    'MaxResults' => <integer>,
    'NamePrefix' => '<string>',
    'NextToken' => '<string>',
    'State' => 'ENABLED|DISABLED',
]);

Parameter Details

Members
GroupName
Type: string

If specified, only lists the schedules whose associated schedule group matches the given filter.

MaxResults
Type: int

If specified, limits the number of results returned by this operation. The operation also returns a NextToken which you can use in a subsequent operation to retrieve the next set of results.

NamePrefix
Type: string

Schedule name prefix to return the filtered list of resources.

NextToken
Type: string

The token returned by a previous call to retrieve the next set of results.

State
Type: string

If specified, only lists the schedules whose current state matches the given filter.

Result Syntax

[
    'NextToken' => '<string>',
    'Schedules' => [
        [
            'Arn' => '<string>',
            'CreationDate' => <DateTime>,
            'GroupName' => '<string>',
            'LastModificationDate' => <DateTime>,
            'Name' => '<string>',
            'State' => 'ENABLED|DISABLED',
            'Target' => [
                'Arn' => '<string>',
            ],
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

Indicates whether there are additional results to retrieve. If the value is null, there are no more results.

Schedules
Required: Yes
Type: Array of ScheduleSummary structures

The schedules that match the specified criteria.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

ListTagsForResource

$result = $client->listTagsForResource([/* ... */]);
$promise = $client->listTagsForResourceAsync([/* ... */]);

Lists the tags associated with the Scheduler resource.

Parameter Syntax

$result = $client->listTagsForResource([
    'ResourceArn' => '<string>', // REQUIRED
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The ARN of the EventBridge Scheduler resource for which you want to view tags.

Result Syntax

[
    'Tags' => [
        [
            'Key' => '<string>',
            'Value' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
Tags
Type: Array of Tag structures

The list of tags associated with the specified resource.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

TagResource

$result = $client->tagResource([/* ... */]);
$promise = $client->tagResourceAsync([/* ... */]);

Assigns one or more tags (key-value pairs) to the specified EventBridge Scheduler resource. You can only assign tags to schedule groups.

Parameter Syntax

$result = $client->tagResource([
    'ResourceArn' => '<string>', // REQUIRED
    'Tags' => [ // REQUIRED
        [
            'Key' => '<string>', // REQUIRED
            'Value' => '<string>', // REQUIRED
        ],
        // ...
    ],
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the schedule group that you are adding tags to.

Tags
Required: Yes
Type: Array of Tag structures

The list of tags to associate with the schedule group.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

UntagResource

$result = $client->untagResource([/* ... */]);
$promise = $client->untagResourceAsync([/* ... */]);

Removes one or more tags from the specified EventBridge Scheduler schedule group.

Parameter Syntax

$result = $client->untagResource([
    'ResourceArn' => '<string>', // REQUIRED
    'TagKeys' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
ResourceArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the schedule group from which you are removing tags.

TagKeys
Required: Yes
Type: Array of strings

The list of tag keys to remove from the resource.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

UpdateSchedule

$result = $client->updateSchedule([/* ... */]);
$promise = $client->updateScheduleAsync([/* ... */]);

Updates the specified schedule. When you call UpdateSchedule, EventBridge Scheduler uses all values, including empty values, specified in the request and overrides the existing schedule. This is by design. This means that if you do not set an optional field in your request, that field will be set to its system-default value after the update.

Before calling this operation, we recommend that you call the GetSchedule API operation and make a note of all optional parameters for your UpdateSchedule call.

Parameter Syntax

$result = $client->updateSchedule([
    'ActionAfterCompletion' => 'NONE|DELETE',
    'ClientToken' => '<string>',
    'Description' => '<string>',
    'EndDate' => <integer || string || DateTime>,
    'FlexibleTimeWindow' => [ // REQUIRED
        'MaximumWindowInMinutes' => <integer>,
        'Mode' => 'OFF|FLEXIBLE', // REQUIRED
    ],
    'GroupName' => '<string>',
    'KmsKeyArn' => '<string>',
    'Name' => '<string>', // REQUIRED
    'ScheduleExpression' => '<string>', // REQUIRED
    'ScheduleExpressionTimezone' => '<string>',
    'StartDate' => <integer || string || DateTime>,
    'State' => 'ENABLED|DISABLED',
    'Target' => [ // REQUIRED
        'Arn' => '<string>', // REQUIRED
        'DeadLetterConfig' => [
            'Arn' => '<string>',
        ],
        'EcsParameters' => [
            'CapacityProviderStrategy' => [
                [
                    'base' => <integer>,
                    'capacityProvider' => '<string>', // REQUIRED
                    'weight' => <integer>,
                ],
                // ...
            ],
            'EnableECSManagedTags' => true || false,
            'EnableExecuteCommand' => true || false,
            'Group' => '<string>',
            'LaunchType' => 'EC2|FARGATE|EXTERNAL',
            'NetworkConfiguration' => [
                'awsvpcConfiguration' => [
                    'AssignPublicIp' => 'ENABLED|DISABLED',
                    'SecurityGroups' => ['<string>', ...],
                    'Subnets' => ['<string>', ...], // REQUIRED
                ],
            ],
            'PlacementConstraints' => [
                [
                    'expression' => '<string>',
                    'type' => 'distinctInstance|memberOf',
                ],
                // ...
            ],
            'PlacementStrategy' => [
                [
                    'field' => '<string>',
                    'type' => 'random|spread|binpack',
                ],
                // ...
            ],
            'PlatformVersion' => '<string>',
            'PropagateTags' => 'TASK_DEFINITION',
            'ReferenceId' => '<string>',
            'Tags' => [
                ['<string>', ...],
                // ...
            ],
            'TaskCount' => <integer>,
            'TaskDefinitionArn' => '<string>', // REQUIRED
        ],
        'EventBridgeParameters' => [
            'DetailType' => '<string>', // REQUIRED
            'Source' => '<string>', // REQUIRED
        ],
        'Input' => '<string>',
        'KinesisParameters' => [
            'PartitionKey' => '<string>', // REQUIRED
        ],
        'RetryPolicy' => [
            'MaximumEventAgeInSeconds' => <integer>,
            'MaximumRetryAttempts' => <integer>,
        ],
        'RoleArn' => '<string>', // REQUIRED
        'SageMakerPipelineParameters' => [
            'PipelineParameterList' => [
                [
                    'Name' => '<string>', // REQUIRED
                    'Value' => '<string>', // REQUIRED
                ],
                // ...
            ],
        ],
        'SqsParameters' => [
            'MessageGroupId' => '<string>',
        ],
    ],
]);

Parameter Details

Members
ActionAfterCompletion
Type: string

Specifies the action that EventBridge Scheduler applies to the schedule after the schedule completes invoking the target.

ClientToken
Type: string

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, EventBridge Scheduler uses a randomly generated token for the request to ensure idempotency.

Description
Type: string

The description you specify for the schedule.

EndDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date, in UTC, before which the schedule can invoke its target. Depending on the schedule's recurrence expression, invocations might stop on, or before, the EndDate you specify. EventBridge Scheduler ignores EndDate for one-time schedules.

FlexibleTimeWindow
Required: Yes
Type: FlexibleTimeWindow structure

Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.

GroupName
Type: string

The name of the schedule group with which the schedule is associated. You must provide this value in order for EventBridge Scheduler to find the schedule you want to update. If you omit this value, EventBridge Scheduler assumes the group is associated to the default group.

KmsKeyArn
Type: string

The ARN for the customer managed KMS key that that you want EventBridge Scheduler to use to encrypt and decrypt your data.

Name
Required: Yes
Type: string

The name of the schedule that you are updating.

ScheduleExpression
Required: Yes
Type: string

The expression that defines when the schedule runs. The following formats are supported.

  • at expression - at(yyyy-mm-ddThh:mm:ss)

  • rate expression - rate(value unit)

  • cron expression - cron(fields)

You can use at expressions to create one-time schedules that invoke a target once, at the time and in the time zone, that you specify. You can use rate and cron expressions to create recurring schedules. Rate-based schedules are useful when you want to invoke a target at regular intervals, such as every 15 minutes or every five days. Cron-based schedules are useful when you want to invoke a target periodically at a specific time, such as at 8:00 am (UTC+0) every 1st day of the month.

A cron expression consists of six fields separated by white spaces: (minutes hours day_of_month month day_of_week year).

A rate expression consists of a value as a positive integer, and a unit with the following options: minute | minutes | hour | hours | day | days

For more information and examples, see Schedule types on EventBridge Scheduler in the EventBridge Scheduler User Guide.

ScheduleExpressionTimezone
Type: string

The timezone in which the scheduling expression is evaluated.

StartDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date, in UTC, after which the schedule can begin invoking its target. Depending on the schedule's recurrence expression, invocations might occur on, or after, the StartDate you specify. EventBridge Scheduler ignores StartDate for one-time schedules.

State
Type: string

Specifies whether the schedule is enabled or disabled.

Target
Required: Yes
Type: Target structure

The schedule target. You can use this operation to change the target that your schedule invokes.

Result Syntax

[
    'ScheduleArn' => '<string>',
]

Result Details

Members
ScheduleArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the schedule that you updated.

Errors

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

InternalServerException:

Unexpected error encountered while processing the request.

ConflictException:

Updating or deleting the resource can cause an inconsistent state.

ResourceNotFoundException:

The request references a resource which does not exist.

ThrottlingException:

The request was denied due to request throttling.

Shapes

AwsVpcConfiguration

Description

This structure specifies the VPC subnets and security groups for the task, and whether a public IP address is to be used. This structure is relevant only for ECS tasks that use the awsvpc network mode.

Members
AssignPublicIp
Type: string

Specifies whether the task's elastic network interface receives a public IP address. You can specify ENABLED only when LaunchType in EcsParameters is set to FARGATE.

SecurityGroups
Type: Array of strings

Specifies the security groups associated with the task. These security groups must all be in the same VPC. You can specify as many as five security groups. If you do not specify a security group, the default security group for the VPC is used.

Subnets
Required: Yes
Type: Array of strings

Specifies the subnets associated with the task. These subnets must all be in the same VPC. You can specify as many as 16 subnets.

CapacityProviderStrategyItem

Description

The details of a capacity provider strategy.

Members
base
Type: int

The base value designates how many tasks, at a minimum, to run on the specified capacity provider. Only one capacity provider in a capacity provider strategy can have a base defined. If no value is specified, the default value of 0 is used.

capacityProvider
Required: Yes
Type: string

The short name of the capacity provider.

weight
Type: int

The weight value designates the relative percentage of the total number of tasks launched that should use the specified capacity provider. The weight value is taken into consideration after the base value, if defined, is satisfied.

ConflictException

Description

Updating or deleting the resource can cause an inconsistent state.

Members
Message
Required: Yes
Type: string

DeadLetterConfig

Description

An object that contains information about an Amazon SQS queue that EventBridge Scheduler uses as a dead-letter queue for your schedule. If specified, EventBridge Scheduler delivers failed events that could not be successfully delivered to a target to the queue.

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the SQS queue specified as the destination for the dead-letter queue.

EcsParameters

Description

The templated target type for the Amazon ECS RunTask API operation.

Members
CapacityProviderStrategy
Type: Array of CapacityProviderStrategyItem structures

The capacity provider strategy to use for the task.

EnableECSManagedTags
Type: boolean

Specifies whether to enable Amazon ECS managed tags for the task. For more information, see Tagging Your Amazon ECS Resources in the Amazon ECS Developer Guide.

EnableExecuteCommand
Type: boolean

Whether or not to enable the execute command functionality for the containers in this task. If true, this enables execute command functionality on all containers in the task.

Group
Type: string

Specifies an ECS task group for the task. The maximum length is 255 characters.

LaunchType
Type: string

Specifies the launch type on which your task is running. The launch type that you specify here must match one of the launch type (compatibilities) of the target task. The FARGATE value is supported only in the Regions where Fargate with Amazon ECS is supported. For more information, see AWS Fargate on Amazon ECS in the Amazon ECS Developer Guide.

NetworkConfiguration
Type: NetworkConfiguration structure

This structure specifies the network configuration for an ECS task.

PlacementConstraints
Type: Array of PlacementConstraint structures

An array of placement constraint objects to use for the task. You can specify up to 10 constraints per task (including constraints in the task definition and those specified at runtime).

PlacementStrategy
Type: Array of PlacementStrategy structures

The task placement strategy for a task or service.

PlatformVersion
Type: string

Specifies the platform version for the task. Specify only the numeric portion of the platform version, such as 1.1.0.

PropagateTags
Type: string

Specifies whether to propagate the tags from the task definition to the task. If no value is specified, the tags are not propagated. Tags can only be propagated to the task during task creation. To add tags to a task after task creation, use Amazon ECS's TagResource API action.

ReferenceId
Type: string

The reference ID to use for the task.

Tags
Type: Array of stringss

The metadata that you apply to the task to help you categorize and organize them. Each tag consists of a key and an optional value, both of which you define. For more information, see RunTask in the Amazon ECS API Reference.

TaskCount
Type: int

The number of tasks to create based on TaskDefinition. The default is 1.

TaskDefinitionArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the task definition to use if the event target is an Amazon ECS task.

EventBridgeParameters

Description

The templated target type for the EventBridge PutEvents API operation.

Members
DetailType
Required: Yes
Type: string

A free-form string, with a maximum of 128 characters, used to decide what fields to expect in the event detail.

Source
Required: Yes
Type: string

The source of the event.

FlexibleTimeWindow

Description

Allows you to configure a time window during which EventBridge Scheduler invokes the schedule.

Members
MaximumWindowInMinutes
Type: int

The maximum time window during which a schedule can be invoked.

Mode
Required: Yes
Type: string

Determines whether the schedule is invoked within a flexible time window.

InternalServerException

Description

Unexpected error encountered while processing the request.

Members
Message
Required: Yes
Type: string

KinesisParameters

Description

The templated target type for the Amazon Kinesis PutRecord API operation.

Members
PartitionKey
Required: Yes
Type: string

Specifies the shard to which EventBridge Scheduler sends the event. For more information, see Amazon Kinesis Data Streams terminology and concepts in the Amazon Kinesis Streams Developer Guide.

NetworkConfiguration

Description

Specifies the network configuration for an ECS task.

Members
awsvpcConfiguration
Type: AwsVpcConfiguration structure

Specifies the Amazon VPC subnets and security groups for the task, and whether a public IP address is to be used. This structure is relevant only for ECS tasks that use the awsvpc network mode.

PlacementConstraint

Description

An object representing a constraint on task placement.

Members
expression
Type: string

A cluster query language expression to apply to the constraint. You cannot specify an expression if the constraint type is distinctInstance. For more information, see Cluster query language in the Amazon ECS Developer Guide.

type
Type: string

The type of constraint. Use distinctInstance to ensure that each task in a particular group is running on a different container instance. Use memberOf to restrict the selection to a group of valid candidates.

PlacementStrategy

Description

The task placement strategy for a task or service.

Members
field
Type: string

The field to apply the placement strategy against. For the spread placement strategy, valid values are instanceId (or instanceId, which has the same effect), or any platform or custom attribute that is applied to a container instance, such as attribute:ecs.availability-zone. For the binpack placement strategy, valid values are cpu and memory. For the random placement strategy, this field is not used.

type
Type: string

The type of placement strategy. The random placement strategy randomly places tasks on available candidates. The spread placement strategy spreads placement across available candidates evenly based on the field parameter. The binpack strategy places tasks on available candidates that have the least available amount of the resource that is specified with the field parameter. For example, if you binpack on memory, a task is placed on the instance with the least amount of remaining memory (but still enough to run the task).

ResourceNotFoundException

Description

The request references a resource which does not exist.

Members
Message
Required: Yes
Type: string

RetryPolicy

Description

A RetryPolicy object that includes information about the retry policy settings, including the maximum age of an event, and the maximum number of times EventBridge Scheduler will try to deliver the event to a target.

Members
MaximumEventAgeInSeconds
Type: int

The maximum amount of time, in seconds, to continue to make retry attempts.

MaximumRetryAttempts
Type: int

The maximum number of retry attempts to make before the request fails. Retry attempts with exponential backoff continue until either the maximum number of attempts is made or until the duration of the MaximumEventAgeInSeconds is reached.

SageMakerPipelineParameter

Description

The name and value pair of a parameter to use to start execution of a SageMaker Model Building Pipeline.

Members
Name
Required: Yes
Type: string

Name of parameter to start execution of a SageMaker Model Building Pipeline.

Value
Required: Yes
Type: string

Value of parameter to start execution of a SageMaker Model Building Pipeline.

SageMakerPipelineParameters

Description

The templated target type for the Amazon SageMaker StartPipelineExecution API operation.

Members
PipelineParameterList
Type: Array of SageMakerPipelineParameter structures

List of parameter names and values to use when executing the SageMaker Model Building Pipeline.

ScheduleGroupSummary

Description

The details of a schedule group.

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the schedule group.

CreationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule group was created.

LastModificationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule group was last modified.

Name
Type: string

The name of the schedule group.

State
Type: string

Specifies the state of the schedule group.

ScheduleSummary

Description

The details of a schedule.

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the schedule.

CreationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule was created.

GroupName
Type: string

The name of the schedule group associated with this schedule.

LastModificationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The time at which the schedule was last modified.

Name
Type: string

The name of the schedule.

State
Type: string

Specifies whether the schedule is enabled or disabled.

Target
Type: TargetSummary structure

The schedule's target details.

ServiceQuotaExceededException

Description

The request exceeds a service quota.

Members
Message
Required: Yes
Type: string

SqsParameters

Description

The templated target type for the Amazon SQS SendMessage API operation. Contains the message group ID to use when the target is a FIFO queue. If you specify an Amazon SQS FIFO queue as a target, the queue must have content-based deduplication enabled. For more information, see Using the Amazon SQS message deduplication ID in the Amazon SQS Developer Guide.

Members
MessageGroupId
Type: string

The FIFO message group ID to use as the target.

Tag

Description

Tag to associate with a schedule group.

Members
Key
Required: Yes
Type: string

The key for the tag.

Value
Required: Yes
Type: string

The value for the tag.

Target

Description

The schedule's target. EventBridge Scheduler supports templated target that invoke common API operations, as well as universal targets that you can customize to invoke over 6,000 API operations across more than 270 services. You can only specify one templated or universal target for a schedule.

Members
Arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the target.

DeadLetterConfig
Type: DeadLetterConfig structure

An object that contains information about an Amazon SQS queue that EventBridge Scheduler uses as a dead-letter queue for your schedule. If specified, EventBridge Scheduler delivers failed events that could not be successfully delivered to a target to the queue.

EcsParameters
Type: EcsParameters structure

The templated target type for the Amazon ECS RunTask API operation.

EventBridgeParameters
Type: EventBridgeParameters structure

The templated target type for the EventBridge PutEvents API operation.

Input
Type: string

The text, or well-formed JSON, passed to the target. If you are configuring a templated Lambda, AWS Step Functions, or Amazon EventBridge target, the input must be a well-formed JSON. For all other target types, a JSON is not required. If you do not specify anything for this field, EventBridge Scheduler delivers a default notification to the target.

KinesisParameters
Type: KinesisParameters structure

The templated target type for the Amazon Kinesis PutRecord API operation.

RetryPolicy
Type: RetryPolicy structure

A RetryPolicy object that includes information about the retry policy settings, including the maximum age of an event, and the maximum number of times EventBridge Scheduler will try to deliver the event to a target.

RoleArn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the IAM role that EventBridge Scheduler will use for this target when the schedule is invoked.

SageMakerPipelineParameters
Type: SageMakerPipelineParameters structure

The templated target type for the Amazon SageMaker StartPipelineExecution API operation.

SqsParameters
Type: SqsParameters structure

The templated target type for the Amazon SQS SendMessage API operation. Contains the message group ID to use when the target is a FIFO queue. If you specify an Amazon SQS FIFO queue as a target, the queue must have content-based deduplication enabled. For more information, see Using the Amazon SQS message deduplication ID in the Amazon SQS Developer Guide.

TargetSummary

Description

The details of a target.

Members
Arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) of the target.

ThrottlingException

Description

The request was denied due to request throttling.

Members
Message
Required: Yes
Type: string

ValidationException

Description

The input fails to satisfy the constraints specified by an AWS service.

Members
Message
Required: Yes
Type: string