# ScheduleProps

Construction properties for `Schedule`.

Extends: ScheduleProps
Used as props by: Schedule

- Source: [`aws-scheduler/lib/schedule.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-scheduler/lib/schedule.ts#L82)
- Type last changed: v2.186.0 · 27 Mar 2025

## Example

```ts
import * as firehose from 'aws-cdk-lib/aws-kinesisfirehose';
declare const deliveryStream: firehose.IDeliveryStream;

const payload = {
  Data: "record",
};

new Schedule(this, 'Schedule', {
  schedule: ScheduleExpression.rate(Duration.minutes(60)),
  target: new targets.FirehosePutRecord(deliveryStream, {
    input: ScheduleTargetInput.fromObject(payload),
  }),
});
```

## Properties

- `description`: string — The description you specify for the schedule.

  **Default:** no value

- `enabled`: boolean = true — Indicates whether the schedule is enabled.

- `end`: date — The date, in UTC, before which the schedule can invoke its target.

  **Default:** no value

  EventBridge Scheduler ignores end for one-time schedules.

- `key`: [IKey](/cdk/api/v2/docs/aws-cdk-lib.aws_kms.IKey.html) — The customer managed KMS key that EventBridge Scheduler will use to encrypt and decrypt your data.

  **Default:** All events in Scheduler are encrypted with a key that AWS owns and manages.

- `schedule`: [ScheduleExpression](/cdk/api/v2/docs/aws-cdk-lib.aws_scheduler.ScheduleExpression.html) (required) — The expression that defines when the schedule runs.

  Can be either a `at`, `rate`
  or `cron` expression.

- `scheduleGroup`: [IScheduleGroup](/cdk/api/v2/docs/aws-cdk-lib.aws_scheduler.IScheduleGroup.html) — The schedule's group.

  **Default:** By default a schedule will be associated with the `default` group.

- `scheduleName`: string — The name of the schedule.

  **Default:** A unique name will be generated

  Up to 64 letters (uppercase and lowercase), numbers, hyphens, underscores and dots are allowed.

- `start`: date — The date, in UTC, after which the schedule can begin invoking its target.

  **Default:** no value

  EventBridge Scheduler ignores start for one-time schedules.

- `target`: [IScheduleTarget](/cdk/api/v2/docs/aws-cdk-lib.aws_scheduler.IScheduleTarget.html) (required) — The schedule's target details.

- `timeWindow`: [TimeWindow](/cdk/api/v2/docs/aws-cdk-lib.aws_scheduler.TimeWindow.html) = TimeWindow.off() — A time window during which EventBridge Scheduler invokes the schedule.
