aws-sdk-scheduler 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1959 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+ module Aws::Scheduler
11
+ module Types
12
+
13
+ # This structure specifies the VPC subnets and security groups for the
14
+ # task, and whether a public IP address is to be used. This structure is
15
+ # relevant only for ECS tasks that use the awsvpc network mode.
16
+ #
17
+ # @note When making an API call, you may pass AwsVpcConfiguration
18
+ # data as a hash:
19
+ #
20
+ # {
21
+ # assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
22
+ # security_groups: ["SecurityGroup"],
23
+ # subnets: ["Subnet"], # required
24
+ # }
25
+ #
26
+ # @!attribute [rw] assign_public_ip
27
+ # Specifies whether the task's elastic network interface receives a
28
+ # public IP address. You can specify `ENABLED` only when `LaunchType`
29
+ # in `EcsParameters` is set to `FARGATE`.
30
+ # @return [String]
31
+ #
32
+ # @!attribute [rw] security_groups
33
+ # Specifies the security groups associated with the task. These
34
+ # security groups must all be in the same VPC. You can specify as many
35
+ # as five security groups. If you do not specify a security group, the
36
+ # default security group for the VPC is used.
37
+ # @return [Array<String>]
38
+ #
39
+ # @!attribute [rw] subnets
40
+ # Specifies the subnets associated with the task. These subnets must
41
+ # all be in the same VPC. You can specify as many as 16 subnets.
42
+ # @return [Array<String>]
43
+ #
44
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/AwsVpcConfiguration AWS API Documentation
45
+ #
46
+ class AwsVpcConfiguration < Struct.new(
47
+ :assign_public_ip,
48
+ :security_groups,
49
+ :subnets)
50
+ SENSITIVE = []
51
+ include Aws::Structure
52
+ end
53
+
54
+ # The details of a capacity provider strategy.
55
+ #
56
+ # @note When making an API call, you may pass CapacityProviderStrategyItem
57
+ # data as a hash:
58
+ #
59
+ # {
60
+ # base: 1,
61
+ # capacity_provider: "CapacityProvider", # required
62
+ # weight: 1,
63
+ # }
64
+ #
65
+ # @!attribute [rw] base
66
+ # The base value designates how many tasks, at a minimum, to run on
67
+ # the specified capacity provider. Only one capacity provider in a
68
+ # capacity provider strategy can have a base defined. If no value is
69
+ # specified, the default value of `0` is used.
70
+ # @return [Integer]
71
+ #
72
+ # @!attribute [rw] capacity_provider
73
+ # The short name of the capacity provider.
74
+ # @return [String]
75
+ #
76
+ # @!attribute [rw] weight
77
+ # The weight value designates the relative percentage of the total
78
+ # number of tasks launched that should use the specified capacity
79
+ # provider. The weight value is taken into consideration after the
80
+ # base value, if defined, is satisfied.
81
+ # @return [Integer]
82
+ #
83
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/CapacityProviderStrategyItem AWS API Documentation
84
+ #
85
+ class CapacityProviderStrategyItem < Struct.new(
86
+ :base,
87
+ :capacity_provider,
88
+ :weight)
89
+ SENSITIVE = []
90
+ include Aws::Structure
91
+ end
92
+
93
+ # Updating or deleting the resource can cause an inconsistent state.
94
+ #
95
+ # @!attribute [rw] message
96
+ # @return [String]
97
+ #
98
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ConflictException AWS API Documentation
99
+ #
100
+ class ConflictException < Struct.new(
101
+ :message)
102
+ SENSITIVE = []
103
+ include Aws::Structure
104
+ end
105
+
106
+ # @note When making an API call, you may pass CreateScheduleGroupInput
107
+ # data as a hash:
108
+ #
109
+ # {
110
+ # client_token: "ClientToken",
111
+ # name: "ScheduleGroupName", # required
112
+ # tags: [
113
+ # {
114
+ # key: "TagKey", # required
115
+ # value: "TagValue", # required
116
+ # },
117
+ # ],
118
+ # }
119
+ #
120
+ # @!attribute [rw] client_token
121
+ # Unique, case-sensitive identifier you provide to ensure the
122
+ # idempotency of the request. If you do not specify a client token,
123
+ # EventBridge Scheduler uses a randomly generated token for the
124
+ # request to ensure idempotency.
125
+ #
126
+ # **A suitable default value is auto-generated.** You should normally
127
+ # not need to pass this option.
128
+ # @return [String]
129
+ #
130
+ # @!attribute [rw] name
131
+ # The name of the schedule group that you are creating.
132
+ # @return [String]
133
+ #
134
+ # @!attribute [rw] tags
135
+ # The list of tags to associate with the schedule group.
136
+ # @return [Array<Types::Tag>]
137
+ #
138
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/CreateScheduleGroupInput AWS API Documentation
139
+ #
140
+ class CreateScheduleGroupInput < Struct.new(
141
+ :client_token,
142
+ :name,
143
+ :tags)
144
+ SENSITIVE = []
145
+ include Aws::Structure
146
+ end
147
+
148
+ # @!attribute [rw] schedule_group_arn
149
+ # The Amazon Resource Name (ARN) of the schedule group.
150
+ # @return [String]
151
+ #
152
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/CreateScheduleGroupOutput AWS API Documentation
153
+ #
154
+ class CreateScheduleGroupOutput < Struct.new(
155
+ :schedule_group_arn)
156
+ SENSITIVE = []
157
+ include Aws::Structure
158
+ end
159
+
160
+ # @note When making an API call, you may pass CreateScheduleInput
161
+ # data as a hash:
162
+ #
163
+ # {
164
+ # client_token: "ClientToken",
165
+ # description: "Description",
166
+ # end_date: Time.now,
167
+ # flexible_time_window: { # required
168
+ # maximum_window_in_minutes: 1,
169
+ # mode: "OFF", # required, accepts OFF, FLEXIBLE
170
+ # },
171
+ # group_name: "ScheduleGroupName",
172
+ # kms_key_arn: "KmsKeyArn",
173
+ # name: "Name", # required
174
+ # schedule_expression: "ScheduleExpression", # required
175
+ # schedule_expression_timezone: "ScheduleExpressionTimezone",
176
+ # start_date: Time.now,
177
+ # state: "ENABLED", # accepts ENABLED, DISABLED
178
+ # target: { # required
179
+ # arn: "TargetArn", # required
180
+ # dead_letter_config: {
181
+ # arn: "DeadLetterConfigArnString",
182
+ # },
183
+ # ecs_parameters: {
184
+ # capacity_provider_strategy: [
185
+ # {
186
+ # base: 1,
187
+ # capacity_provider: "CapacityProvider", # required
188
+ # weight: 1,
189
+ # },
190
+ # ],
191
+ # enable_ecs_managed_tags: false,
192
+ # enable_execute_command: false,
193
+ # group: "Group",
194
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
195
+ # network_configuration: {
196
+ # awsvpc_configuration: {
197
+ # assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
198
+ # security_groups: ["SecurityGroup"],
199
+ # subnets: ["Subnet"], # required
200
+ # },
201
+ # },
202
+ # placement_constraints: [
203
+ # {
204
+ # expression: "PlacementConstraintExpression",
205
+ # type: "distinctInstance", # accepts distinctInstance, memberOf
206
+ # },
207
+ # ],
208
+ # placement_strategy: [
209
+ # {
210
+ # field: "PlacementStrategyField",
211
+ # type: "random", # accepts random, spread, binpack
212
+ # },
213
+ # ],
214
+ # platform_version: "PlatformVersion",
215
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION
216
+ # reference_id: "ReferenceId",
217
+ # tags: [
218
+ # {
219
+ # "TagKey" => "TagValue",
220
+ # },
221
+ # ],
222
+ # task_count: 1,
223
+ # task_definition_arn: "TaskDefinitionArn", # required
224
+ # },
225
+ # event_bridge_parameters: {
226
+ # detail_type: "DetailType", # required
227
+ # source: "Source", # required
228
+ # },
229
+ # input: "TargetInput",
230
+ # kinesis_parameters: {
231
+ # partition_key: "TargetPartitionKey", # required
232
+ # },
233
+ # retry_policy: {
234
+ # maximum_event_age_in_seconds: 1,
235
+ # maximum_retry_attempts: 1,
236
+ # },
237
+ # role_arn: "RoleArn", # required
238
+ # sage_maker_pipeline_parameters: {
239
+ # pipeline_parameter_list: [
240
+ # {
241
+ # name: "SageMakerPipelineParameterName", # required
242
+ # value: "SageMakerPipelineParameterValue", # required
243
+ # },
244
+ # ],
245
+ # },
246
+ # sqs_parameters: {
247
+ # message_group_id: "MessageGroupId",
248
+ # },
249
+ # },
250
+ # }
251
+ #
252
+ # @!attribute [rw] client_token
253
+ # Unique, case-sensitive identifier you provide to ensure the
254
+ # idempotency of the request. If you do not specify a client token,
255
+ # EventBridge Scheduler uses a randomly generated token for the
256
+ # request to ensure idempotency.
257
+ #
258
+ # **A suitable default value is auto-generated.** You should normally
259
+ # not need to pass this option.
260
+ # @return [String]
261
+ #
262
+ # @!attribute [rw] description
263
+ # The description you specify for the schedule.
264
+ # @return [String]
265
+ #
266
+ # @!attribute [rw] end_date
267
+ # The date, in UTC, before which the schedule can invoke its target.
268
+ # Depending on the schedule's recurrence expression, invocations
269
+ # might stop on, or before, the `EndDate` you specify. EventBridge
270
+ # Scheduler ignores `EndDate` for one-time schedules.
271
+ # @return [Time]
272
+ #
273
+ # @!attribute [rw] flexible_time_window
274
+ # Allows you to configure a time window during which EventBridge
275
+ # Scheduler invokes the schedule.
276
+ # @return [Types::FlexibleTimeWindow]
277
+ #
278
+ # @!attribute [rw] group_name
279
+ # The name of the schedule group to associate with this schedule. If
280
+ # you omit this, the default schedule group is used.
281
+ # @return [String]
282
+ #
283
+ # @!attribute [rw] kms_key_arn
284
+ # The Amazon Resource Name (ARN) for the customer managed KMS key that
285
+ # EventBridge Scheduler will use to encrypt and decrypt your data.
286
+ # @return [String]
287
+ #
288
+ # @!attribute [rw] name
289
+ # The name of the schedule that you are creating.
290
+ # @return [String]
291
+ #
292
+ # @!attribute [rw] schedule_expression
293
+ # The expression that defines when the schedule runs. The following
294
+ # formats are supported.
295
+ #
296
+ # * `at` expression - `at(yyyy-mm-ddThh:mm:ss)`
297
+ #
298
+ # * `rate` expression - `rate(unit value)`
299
+ #
300
+ # * `cron` expression - `cron(fields)`
301
+ #
302
+ # You can use `at` expressions to create one-time schedules that
303
+ # invoke a target once, at the time and in the time zone, that you
304
+ # specify. You can use `rate` and `cron` expressions to create
305
+ # recurring schedules. Rate-based schedules are useful when you want
306
+ # to invoke a target at regular intervals, such as every 15 minutes or
307
+ # every five days. Cron-based schedules are useful when you want to
308
+ # invoke a target periodically at a specific time, such as at 8:00 am
309
+ # (UTC+0) every 1st day of the month.
310
+ #
311
+ # A `cron` expression consists of six fields separated by white
312
+ # spaces: `(minutes hours day_of_month month day_of_week year)`.
313
+ #
314
+ # A `rate` expression consists of a *value* as a positive integer, and
315
+ # a *unit* with the following options: `minute` \| `minutes` \| `hour`
316
+ # \| `hours` \| `day` \| `days`
317
+ #
318
+ # For more information and examples, see [Schedule types on
319
+ # EventBridge Scheduler][1] in the *EventBridge Scheduler User Guide*.
320
+ #
321
+ #
322
+ #
323
+ # [1]: https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html
324
+ # @return [String]
325
+ #
326
+ # @!attribute [rw] schedule_expression_timezone
327
+ # The timezone in which the scheduling expression is evaluated.
328
+ # @return [String]
329
+ #
330
+ # @!attribute [rw] start_date
331
+ # The date, in UTC, after which the schedule can begin invoking its
332
+ # target. Depending on the schedule's recurrence expression,
333
+ # invocations might occur on, or after, the `StartDate` you specify.
334
+ # EventBridge Scheduler ignores `StartDate` for one-time schedules.
335
+ # @return [Time]
336
+ #
337
+ # @!attribute [rw] state
338
+ # Specifies whether the schedule is enabled or disabled.
339
+ # @return [String]
340
+ #
341
+ # @!attribute [rw] target
342
+ # The schedule's target.
343
+ # @return [Types::Target]
344
+ #
345
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/CreateScheduleInput AWS API Documentation
346
+ #
347
+ class CreateScheduleInput < Struct.new(
348
+ :client_token,
349
+ :description,
350
+ :end_date,
351
+ :flexible_time_window,
352
+ :group_name,
353
+ :kms_key_arn,
354
+ :name,
355
+ :schedule_expression,
356
+ :schedule_expression_timezone,
357
+ :start_date,
358
+ :state,
359
+ :target)
360
+ SENSITIVE = []
361
+ include Aws::Structure
362
+ end
363
+
364
+ # @!attribute [rw] schedule_arn
365
+ # The Amazon Resource Name (ARN) of the schedule.
366
+ # @return [String]
367
+ #
368
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/CreateScheduleOutput AWS API Documentation
369
+ #
370
+ class CreateScheduleOutput < Struct.new(
371
+ :schedule_arn)
372
+ SENSITIVE = []
373
+ include Aws::Structure
374
+ end
375
+
376
+ # An object that contains information about an Amazon SQS queue that
377
+ # EventBridge Scheduler uses as a dead-letter queue for your schedule.
378
+ # If specified, EventBridge Scheduler delivers failed events that could
379
+ # not be successfully delivered to a target to the queue.
380
+ #
381
+ # @note When making an API call, you may pass DeadLetterConfig
382
+ # data as a hash:
383
+ #
384
+ # {
385
+ # arn: "DeadLetterConfigArnString",
386
+ # }
387
+ #
388
+ # @!attribute [rw] arn
389
+ # The Amazon Resource Name (ARN) of the SQS queue specified as the
390
+ # destination for the dead-letter queue.
391
+ # @return [String]
392
+ #
393
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/DeadLetterConfig AWS API Documentation
394
+ #
395
+ class DeadLetterConfig < Struct.new(
396
+ :arn)
397
+ SENSITIVE = []
398
+ include Aws::Structure
399
+ end
400
+
401
+ # @note When making an API call, you may pass DeleteScheduleGroupInput
402
+ # data as a hash:
403
+ #
404
+ # {
405
+ # client_token: "ClientToken",
406
+ # name: "ScheduleGroupName", # required
407
+ # }
408
+ #
409
+ # @!attribute [rw] client_token
410
+ # Unique, case-sensitive identifier you provide to ensure the
411
+ # idempotency of the request. If you do not specify a client token,
412
+ # EventBridge Scheduler uses a randomly generated token for the
413
+ # request to ensure idempotency.
414
+ #
415
+ # **A suitable default value is auto-generated.** You should normally
416
+ # not need to pass this option.
417
+ # @return [String]
418
+ #
419
+ # @!attribute [rw] name
420
+ # The name of the schedule group to delete.
421
+ # @return [String]
422
+ #
423
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/DeleteScheduleGroupInput AWS API Documentation
424
+ #
425
+ class DeleteScheduleGroupInput < Struct.new(
426
+ :client_token,
427
+ :name)
428
+ SENSITIVE = []
429
+ include Aws::Structure
430
+ end
431
+
432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/DeleteScheduleGroupOutput AWS API Documentation
433
+ #
434
+ class DeleteScheduleGroupOutput < Aws::EmptyStructure; end
435
+
436
+ # @note When making an API call, you may pass DeleteScheduleInput
437
+ # data as a hash:
438
+ #
439
+ # {
440
+ # client_token: "ClientToken",
441
+ # group_name: "ScheduleGroupName",
442
+ # name: "Name", # required
443
+ # }
444
+ #
445
+ # @!attribute [rw] client_token
446
+ # Unique, case-sensitive identifier you provide to ensure the
447
+ # idempotency of the request. If you do not specify a client token,
448
+ # EventBridge Scheduler uses a randomly generated token for the
449
+ # request to ensure idempotency.
450
+ #
451
+ # **A suitable default value is auto-generated.** You should normally
452
+ # not need to pass this option.
453
+ # @return [String]
454
+ #
455
+ # @!attribute [rw] group_name
456
+ # The name of the schedule group associated with this schedule. If you
457
+ # omit this, the default schedule group is used.
458
+ # @return [String]
459
+ #
460
+ # @!attribute [rw] name
461
+ # The name of the schedule to delete.
462
+ # @return [String]
463
+ #
464
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/DeleteScheduleInput AWS API Documentation
465
+ #
466
+ class DeleteScheduleInput < Struct.new(
467
+ :client_token,
468
+ :group_name,
469
+ :name)
470
+ SENSITIVE = []
471
+ include Aws::Structure
472
+ end
473
+
474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/DeleteScheduleOutput AWS API Documentation
475
+ #
476
+ class DeleteScheduleOutput < Aws::EmptyStructure; end
477
+
478
+ # The templated target type for the Amazon ECS [ `RunTask` ][1] API
479
+ # operation.
480
+ #
481
+ #
482
+ #
483
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html
484
+ #
485
+ # @note When making an API call, you may pass EcsParameters
486
+ # data as a hash:
487
+ #
488
+ # {
489
+ # capacity_provider_strategy: [
490
+ # {
491
+ # base: 1,
492
+ # capacity_provider: "CapacityProvider", # required
493
+ # weight: 1,
494
+ # },
495
+ # ],
496
+ # enable_ecs_managed_tags: false,
497
+ # enable_execute_command: false,
498
+ # group: "Group",
499
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
500
+ # network_configuration: {
501
+ # awsvpc_configuration: {
502
+ # assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
503
+ # security_groups: ["SecurityGroup"],
504
+ # subnets: ["Subnet"], # required
505
+ # },
506
+ # },
507
+ # placement_constraints: [
508
+ # {
509
+ # expression: "PlacementConstraintExpression",
510
+ # type: "distinctInstance", # accepts distinctInstance, memberOf
511
+ # },
512
+ # ],
513
+ # placement_strategy: [
514
+ # {
515
+ # field: "PlacementStrategyField",
516
+ # type: "random", # accepts random, spread, binpack
517
+ # },
518
+ # ],
519
+ # platform_version: "PlatformVersion",
520
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION
521
+ # reference_id: "ReferenceId",
522
+ # tags: [
523
+ # {
524
+ # "TagKey" => "TagValue",
525
+ # },
526
+ # ],
527
+ # task_count: 1,
528
+ # task_definition_arn: "TaskDefinitionArn", # required
529
+ # }
530
+ #
531
+ # @!attribute [rw] capacity_provider_strategy
532
+ # The capacity provider strategy to use for the task.
533
+ # @return [Array<Types::CapacityProviderStrategyItem>]
534
+ #
535
+ # @!attribute [rw] enable_ecs_managed_tags
536
+ # Specifies whether to enable Amazon ECS managed tags for the task.
537
+ # For more information, see [Tagging Your Amazon ECS Resources][1] in
538
+ # the *Amazon ECS Developer Guide*.
539
+ #
540
+ #
541
+ #
542
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-using-tags.html
543
+ # @return [Boolean]
544
+ #
545
+ # @!attribute [rw] enable_execute_command
546
+ # Whether or not to enable the execute command functionality for the
547
+ # containers in this task. If true, this enables execute command
548
+ # functionality on all containers in the task.
549
+ # @return [Boolean]
550
+ #
551
+ # @!attribute [rw] group
552
+ # Specifies an ECS task group for the task. The maximum length is 255
553
+ # characters.
554
+ # @return [String]
555
+ #
556
+ # @!attribute [rw] launch_type
557
+ # Specifies the launch type on which your task is running. The launch
558
+ # type that you specify here must match one of the launch type
559
+ # (compatibilities) of the target task. The `FARGATE` value is
560
+ # supported only in the Regions where Fargate with Amazon ECS is
561
+ # supported. For more information, see [AWS Fargate on Amazon ECS][1]
562
+ # in the *Amazon ECS Developer Guide*.
563
+ #
564
+ #
565
+ #
566
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html
567
+ # @return [String]
568
+ #
569
+ # @!attribute [rw] network_configuration
570
+ # This structure specifies the network configuration for an ECS task.
571
+ # @return [Types::NetworkConfiguration]
572
+ #
573
+ # @!attribute [rw] placement_constraints
574
+ # An array of placement constraint objects to use for the task. You
575
+ # can specify up to 10 constraints per task (including constraints in
576
+ # the task definition and those specified at runtime).
577
+ # @return [Array<Types::PlacementConstraint>]
578
+ #
579
+ # @!attribute [rw] placement_strategy
580
+ # The task placement strategy for a task or service.
581
+ # @return [Array<Types::PlacementStrategy>]
582
+ #
583
+ # @!attribute [rw] platform_version
584
+ # Specifies the platform version for the task. Specify only the
585
+ # numeric portion of the platform version, such as `1.1.0`.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] propagate_tags
589
+ # Specifies whether to propagate the tags from the task definition to
590
+ # the task. If no value is specified, the tags are not propagated.
591
+ # Tags can only be propagated to the task during task creation. To add
592
+ # tags to a task after task creation, use Amazon ECS's [
593
+ # `TagResource` ][1] API action.
594
+ #
595
+ #
596
+ #
597
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_TagResource.html
598
+ # @return [String]
599
+ #
600
+ # @!attribute [rw] reference_id
601
+ # The reference ID to use for the task.
602
+ # @return [String]
603
+ #
604
+ # @!attribute [rw] tags
605
+ # The metadata that you apply to the task to help you categorize and
606
+ # organize them. Each tag consists of a key and an optional value,
607
+ # both of which you define. For more information, see [ `RunTask` ][1]
608
+ # in the *Amazon ECS API Reference*.
609
+ #
610
+ #
611
+ #
612
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html
613
+ # @return [Array<Hash<String,String>>]
614
+ #
615
+ # @!attribute [rw] task_count
616
+ # The number of tasks to create based on `TaskDefinition`. The default
617
+ # is `1`.
618
+ # @return [Integer]
619
+ #
620
+ # @!attribute [rw] task_definition_arn
621
+ # The Amazon Resource Name (ARN) of the task definition to use if the
622
+ # event target is an Amazon ECS task.
623
+ # @return [String]
624
+ #
625
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/EcsParameters AWS API Documentation
626
+ #
627
+ class EcsParameters < Struct.new(
628
+ :capacity_provider_strategy,
629
+ :enable_ecs_managed_tags,
630
+ :enable_execute_command,
631
+ :group,
632
+ :launch_type,
633
+ :network_configuration,
634
+ :placement_constraints,
635
+ :placement_strategy,
636
+ :platform_version,
637
+ :propagate_tags,
638
+ :reference_id,
639
+ :tags,
640
+ :task_count,
641
+ :task_definition_arn)
642
+ SENSITIVE = []
643
+ include Aws::Structure
644
+ end
645
+
646
+ # The templated target type for the EventBridge [ `PutEvents` ][1] API
647
+ # operation.
648
+ #
649
+ #
650
+ #
651
+ # [1]: https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEvents.html
652
+ #
653
+ # @note When making an API call, you may pass EventBridgeParameters
654
+ # data as a hash:
655
+ #
656
+ # {
657
+ # detail_type: "DetailType", # required
658
+ # source: "Source", # required
659
+ # }
660
+ #
661
+ # @!attribute [rw] detail_type
662
+ # A free-form string, with a maximum of 128 characters, used to decide
663
+ # what fields to expect in the event detail.
664
+ # @return [String]
665
+ #
666
+ # @!attribute [rw] source
667
+ # The source of the event.
668
+ # @return [String]
669
+ #
670
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/EventBridgeParameters AWS API Documentation
671
+ #
672
+ class EventBridgeParameters < Struct.new(
673
+ :detail_type,
674
+ :source)
675
+ SENSITIVE = []
676
+ include Aws::Structure
677
+ end
678
+
679
+ # Allows you to configure a time window during which EventBridge
680
+ # Scheduler invokes the schedule.
681
+ #
682
+ # @note When making an API call, you may pass FlexibleTimeWindow
683
+ # data as a hash:
684
+ #
685
+ # {
686
+ # maximum_window_in_minutes: 1,
687
+ # mode: "OFF", # required, accepts OFF, FLEXIBLE
688
+ # }
689
+ #
690
+ # @!attribute [rw] maximum_window_in_minutes
691
+ # The maximum time window during which a schedule can be invoked.
692
+ # @return [Integer]
693
+ #
694
+ # @!attribute [rw] mode
695
+ # Determines whether the schedule is invoked within a flexible time
696
+ # window.
697
+ # @return [String]
698
+ #
699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/FlexibleTimeWindow AWS API Documentation
700
+ #
701
+ class FlexibleTimeWindow < Struct.new(
702
+ :maximum_window_in_minutes,
703
+ :mode)
704
+ SENSITIVE = []
705
+ include Aws::Structure
706
+ end
707
+
708
+ # @note When making an API call, you may pass GetScheduleGroupInput
709
+ # data as a hash:
710
+ #
711
+ # {
712
+ # name: "ScheduleGroupName", # required
713
+ # }
714
+ #
715
+ # @!attribute [rw] name
716
+ # The name of the schedule group to retrieve.
717
+ # @return [String]
718
+ #
719
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/GetScheduleGroupInput AWS API Documentation
720
+ #
721
+ class GetScheduleGroupInput < Struct.new(
722
+ :name)
723
+ SENSITIVE = []
724
+ include Aws::Structure
725
+ end
726
+
727
+ # @!attribute [rw] arn
728
+ # The Amazon Resource Name (ARN) of the schedule group.
729
+ # @return [String]
730
+ #
731
+ # @!attribute [rw] creation_date
732
+ # The time at which the schedule group was created.
733
+ # @return [Time]
734
+ #
735
+ # @!attribute [rw] last_modification_date
736
+ # The time at which the schedule group was last modified.
737
+ # @return [Time]
738
+ #
739
+ # @!attribute [rw] name
740
+ # The name of the schedule group.
741
+ # @return [String]
742
+ #
743
+ # @!attribute [rw] state
744
+ # Specifies the state of the schedule group.
745
+ # @return [String]
746
+ #
747
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/GetScheduleGroupOutput AWS API Documentation
748
+ #
749
+ class GetScheduleGroupOutput < Struct.new(
750
+ :arn,
751
+ :creation_date,
752
+ :last_modification_date,
753
+ :name,
754
+ :state)
755
+ SENSITIVE = []
756
+ include Aws::Structure
757
+ end
758
+
759
+ # @note When making an API call, you may pass GetScheduleInput
760
+ # data as a hash:
761
+ #
762
+ # {
763
+ # group_name: "ScheduleGroupName",
764
+ # name: "Name", # required
765
+ # }
766
+ #
767
+ # @!attribute [rw] group_name
768
+ # The name of the schedule group associated with this schedule. If you
769
+ # omit this, EventBridge Scheduler assumes that the schedule is
770
+ # associated with the default group.
771
+ # @return [String]
772
+ #
773
+ # @!attribute [rw] name
774
+ # The name of the schedule to retrieve.
775
+ # @return [String]
776
+ #
777
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/GetScheduleInput AWS API Documentation
778
+ #
779
+ class GetScheduleInput < Struct.new(
780
+ :group_name,
781
+ :name)
782
+ SENSITIVE = []
783
+ include Aws::Structure
784
+ end
785
+
786
+ # @!attribute [rw] arn
787
+ # The Amazon Resource Name (ARN) of the schedule.
788
+ # @return [String]
789
+ #
790
+ # @!attribute [rw] creation_date
791
+ # The time at which the schedule was created.
792
+ # @return [Time]
793
+ #
794
+ # @!attribute [rw] description
795
+ # The description of the schedule.
796
+ # @return [String]
797
+ #
798
+ # @!attribute [rw] end_date
799
+ # The date, in UTC, before which the schedule can invoke its target.
800
+ # Depending on the schedule's recurrence expression, invocations
801
+ # might stop on, or before, the `EndDate` you specify. EventBridge
802
+ # Scheduler ignores `EndDate` for one-time schedules.
803
+ # @return [Time]
804
+ #
805
+ # @!attribute [rw] flexible_time_window
806
+ # Allows you to configure a time window during which EventBridge
807
+ # Scheduler invokes the schedule.
808
+ # @return [Types::FlexibleTimeWindow]
809
+ #
810
+ # @!attribute [rw] group_name
811
+ # The name of the schedule group associated with this schedule.
812
+ # @return [String]
813
+ #
814
+ # @!attribute [rw] kms_key_arn
815
+ # The ARN for a customer managed KMS Key that is be used to encrypt
816
+ # and decrypt your data.
817
+ # @return [String]
818
+ #
819
+ # @!attribute [rw] last_modification_date
820
+ # The time at which the schedule was last modified.
821
+ # @return [Time]
822
+ #
823
+ # @!attribute [rw] name
824
+ # The name of the schedule.
825
+ # @return [String]
826
+ #
827
+ # @!attribute [rw] schedule_expression
828
+ # The expression that defines when the schedule runs. The following
829
+ # formats are supported.
830
+ #
831
+ # * `at` expression - `at(yyyy-mm-ddThh:mm:ss)`
832
+ #
833
+ # * `rate` expression - `rate(unit value)`
834
+ #
835
+ # * `cron` expression - `cron(fields)`
836
+ #
837
+ # You can use `at` expressions to create one-time schedules that
838
+ # invoke a target once, at the time and in the time zone, that you
839
+ # specify. You can use `rate` and `cron` expressions to create
840
+ # recurring schedules. Rate-based schedules are useful when you want
841
+ # to invoke a target at regular intervals, such as every 15 minutes or
842
+ # every five days. Cron-based schedules are useful when you want to
843
+ # invoke a target periodically at a specific time, such as at 8:00 am
844
+ # (UTC+0) every 1st day of the month.
845
+ #
846
+ # A `cron` expression consists of six fields separated by white
847
+ # spaces: `(minutes hours day_of_month month day_of_week year)`.
848
+ #
849
+ # A `rate` expression consists of a *value* as a positive integer, and
850
+ # a *unit* with the following options: `minute` \| `minutes` \| `hour`
851
+ # \| `hours` \| `day` \| `days`
852
+ #
853
+ # For more information and examples, see [Schedule types on
854
+ # EventBridge Scheduler][1] in the *EventBridge Scheduler User Guide*.
855
+ #
856
+ #
857
+ #
858
+ # [1]: https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html
859
+ # @return [String]
860
+ #
861
+ # @!attribute [rw] schedule_expression_timezone
862
+ # The timezone in which the scheduling expression is evaluated.
863
+ # @return [String]
864
+ #
865
+ # @!attribute [rw] start_date
866
+ # The date, in UTC, after which the schedule can begin invoking its
867
+ # target. Depending on the schedule's recurrence expression,
868
+ # invocations might occur on, or after, the `StartDate` you specify.
869
+ # EventBridge Scheduler ignores `StartDate` for one-time schedules.
870
+ # @return [Time]
871
+ #
872
+ # @!attribute [rw] state
873
+ # Specifies whether the schedule is enabled or disabled.
874
+ # @return [String]
875
+ #
876
+ # @!attribute [rw] target
877
+ # The schedule target.
878
+ # @return [Types::Target]
879
+ #
880
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/GetScheduleOutput AWS API Documentation
881
+ #
882
+ class GetScheduleOutput < Struct.new(
883
+ :arn,
884
+ :creation_date,
885
+ :description,
886
+ :end_date,
887
+ :flexible_time_window,
888
+ :group_name,
889
+ :kms_key_arn,
890
+ :last_modification_date,
891
+ :name,
892
+ :schedule_expression,
893
+ :schedule_expression_timezone,
894
+ :start_date,
895
+ :state,
896
+ :target)
897
+ SENSITIVE = []
898
+ include Aws::Structure
899
+ end
900
+
901
+ # Unexpected error encountered while processing the request.
902
+ #
903
+ # @!attribute [rw] message
904
+ # @return [String]
905
+ #
906
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/InternalServerException AWS API Documentation
907
+ #
908
+ class InternalServerException < Struct.new(
909
+ :message)
910
+ SENSITIVE = []
911
+ include Aws::Structure
912
+ end
913
+
914
+ # The templated target type for the Amazon Kinesis [ `PutRecord`
915
+ # ](kinesis/latest/APIReference/API_PutRecord.html) API operation.
916
+ #
917
+ # @note When making an API call, you may pass KinesisParameters
918
+ # data as a hash:
919
+ #
920
+ # {
921
+ # partition_key: "TargetPartitionKey", # required
922
+ # }
923
+ #
924
+ # @!attribute [rw] partition_key
925
+ # Specifies the shard to which EventBridge Scheduler sends the event.
926
+ # For more information, see [Amazon Kinesis Data Streams terminology
927
+ # and concepts][1] in the *Amazon Kinesis Streams Developer Guide*.
928
+ #
929
+ #
930
+ #
931
+ # [1]: https://docs.aws.amazon.com/streams/latest/dev/key-concepts.html
932
+ # @return [String]
933
+ #
934
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/KinesisParameters AWS API Documentation
935
+ #
936
+ class KinesisParameters < Struct.new(
937
+ :partition_key)
938
+ SENSITIVE = []
939
+ include Aws::Structure
940
+ end
941
+
942
+ # @note When making an API call, you may pass ListScheduleGroupsInput
943
+ # data as a hash:
944
+ #
945
+ # {
946
+ # max_results: 1,
947
+ # name_prefix: "ScheduleGroupNamePrefix",
948
+ # next_token: "NextToken",
949
+ # }
950
+ #
951
+ # @!attribute [rw] max_results
952
+ # If specified, limits the number of results returned by this
953
+ # operation. The operation also returns a `NextToken` which you can
954
+ # use in a subsequent operation to retrieve the next set of results.
955
+ # @return [Integer]
956
+ #
957
+ # @!attribute [rw] name_prefix
958
+ # The name prefix that you can use to return a filtered list of your
959
+ # schedule groups.
960
+ # @return [String]
961
+ #
962
+ # @!attribute [rw] next_token
963
+ # The token returned by a previous call to retrieve the next set of
964
+ # results.
965
+ # @return [String]
966
+ #
967
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ListScheduleGroupsInput AWS API Documentation
968
+ #
969
+ class ListScheduleGroupsInput < Struct.new(
970
+ :max_results,
971
+ :name_prefix,
972
+ :next_token)
973
+ SENSITIVE = []
974
+ include Aws::Structure
975
+ end
976
+
977
+ # @!attribute [rw] next_token
978
+ # Indicates whether there are additional results to retrieve. If the
979
+ # value is null, there are no more results.
980
+ # @return [String]
981
+ #
982
+ # @!attribute [rw] schedule_groups
983
+ # The schedule groups that match the specified criteria.
984
+ # @return [Array<Types::ScheduleGroupSummary>]
985
+ #
986
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ListScheduleGroupsOutput AWS API Documentation
987
+ #
988
+ class ListScheduleGroupsOutput < Struct.new(
989
+ :next_token,
990
+ :schedule_groups)
991
+ SENSITIVE = []
992
+ include Aws::Structure
993
+ end
994
+
995
+ # @note When making an API call, you may pass ListSchedulesInput
996
+ # data as a hash:
997
+ #
998
+ # {
999
+ # group_name: "ScheduleGroupName",
1000
+ # max_results: 1,
1001
+ # name_prefix: "NamePrefix",
1002
+ # next_token: "NextToken",
1003
+ # state: "ENABLED", # accepts ENABLED, DISABLED
1004
+ # }
1005
+ #
1006
+ # @!attribute [rw] group_name
1007
+ # If specified, only lists the schedules whose associated schedule
1008
+ # group matches the given filter.
1009
+ # @return [String]
1010
+ #
1011
+ # @!attribute [rw] max_results
1012
+ # If specified, limits the number of results returned by this
1013
+ # operation. The operation also returns a `NextToken` which you can
1014
+ # use in a subsequent operation to retrieve the next set of results.
1015
+ # @return [Integer]
1016
+ #
1017
+ # @!attribute [rw] name_prefix
1018
+ # Schedule name prefix to return the filtered list of resources.
1019
+ # @return [String]
1020
+ #
1021
+ # @!attribute [rw] next_token
1022
+ # The token returned by a previous call to retrieve the next set of
1023
+ # results.
1024
+ # @return [String]
1025
+ #
1026
+ # @!attribute [rw] state
1027
+ # If specified, only lists the schedules whose current state matches
1028
+ # the given filter.
1029
+ # @return [String]
1030
+ #
1031
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ListSchedulesInput AWS API Documentation
1032
+ #
1033
+ class ListSchedulesInput < Struct.new(
1034
+ :group_name,
1035
+ :max_results,
1036
+ :name_prefix,
1037
+ :next_token,
1038
+ :state)
1039
+ SENSITIVE = []
1040
+ include Aws::Structure
1041
+ end
1042
+
1043
+ # @!attribute [rw] next_token
1044
+ # Indicates whether there are additional results to retrieve. If the
1045
+ # value is null, there are no more results.
1046
+ # @return [String]
1047
+ #
1048
+ # @!attribute [rw] schedules
1049
+ # The schedules that match the specified criteria.
1050
+ # @return [Array<Types::ScheduleSummary>]
1051
+ #
1052
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ListSchedulesOutput AWS API Documentation
1053
+ #
1054
+ class ListSchedulesOutput < Struct.new(
1055
+ :next_token,
1056
+ :schedules)
1057
+ SENSITIVE = []
1058
+ include Aws::Structure
1059
+ end
1060
+
1061
+ # @note When making an API call, you may pass ListTagsForResourceInput
1062
+ # data as a hash:
1063
+ #
1064
+ # {
1065
+ # resource_arn: "TagResourceArn", # required
1066
+ # }
1067
+ #
1068
+ # @!attribute [rw] resource_arn
1069
+ # The ARN of the EventBridge Scheduler resource for which you want to
1070
+ # view tags.
1071
+ # @return [String]
1072
+ #
1073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ListTagsForResourceInput AWS API Documentation
1074
+ #
1075
+ class ListTagsForResourceInput < Struct.new(
1076
+ :resource_arn)
1077
+ SENSITIVE = []
1078
+ include Aws::Structure
1079
+ end
1080
+
1081
+ # @!attribute [rw] tags
1082
+ # The list of tags associated with the specified resource.
1083
+ # @return [Array<Types::Tag>]
1084
+ #
1085
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ListTagsForResourceOutput AWS API Documentation
1086
+ #
1087
+ class ListTagsForResourceOutput < Struct.new(
1088
+ :tags)
1089
+ SENSITIVE = []
1090
+ include Aws::Structure
1091
+ end
1092
+
1093
+ # Specifies the network configuration for an ECS task.
1094
+ #
1095
+ # @note When making an API call, you may pass NetworkConfiguration
1096
+ # data as a hash:
1097
+ #
1098
+ # {
1099
+ # awsvpc_configuration: {
1100
+ # assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
1101
+ # security_groups: ["SecurityGroup"],
1102
+ # subnets: ["Subnet"], # required
1103
+ # },
1104
+ # }
1105
+ #
1106
+ # @!attribute [rw] awsvpc_configuration
1107
+ # Specifies the Amazon VPC subnets and security groups for the task,
1108
+ # and whether a public IP address is to be used. This structure is
1109
+ # relevant only for ECS tasks that use the awsvpc network mode.
1110
+ # @return [Types::AwsVpcConfiguration]
1111
+ #
1112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/NetworkConfiguration AWS API Documentation
1113
+ #
1114
+ class NetworkConfiguration < Struct.new(
1115
+ :awsvpc_configuration)
1116
+ SENSITIVE = []
1117
+ include Aws::Structure
1118
+ end
1119
+
1120
+ # An object representing a constraint on task placement.
1121
+ #
1122
+ # @note When making an API call, you may pass PlacementConstraint
1123
+ # data as a hash:
1124
+ #
1125
+ # {
1126
+ # expression: "PlacementConstraintExpression",
1127
+ # type: "distinctInstance", # accepts distinctInstance, memberOf
1128
+ # }
1129
+ #
1130
+ # @!attribute [rw] expression
1131
+ # A cluster query language expression to apply to the constraint. You
1132
+ # cannot specify an expression if the constraint type is
1133
+ # `distinctInstance`. For more information, see [Cluster query
1134
+ # language][1] in the *Amazon ECS Developer Guide*.
1135
+ #
1136
+ #
1137
+ #
1138
+ # [1]: https://docs.aws.amazon.com/latest/developerguide/cluster-query-language.html
1139
+ # @return [String]
1140
+ #
1141
+ # @!attribute [rw] type
1142
+ # The type of constraint. Use `distinctInstance` to ensure that each
1143
+ # task in a particular group is running on a different container
1144
+ # instance. Use `memberOf` to restrict the selection to a group of
1145
+ # valid candidates.
1146
+ # @return [String]
1147
+ #
1148
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/PlacementConstraint AWS API Documentation
1149
+ #
1150
+ class PlacementConstraint < Struct.new(
1151
+ :expression,
1152
+ :type)
1153
+ SENSITIVE = []
1154
+ include Aws::Structure
1155
+ end
1156
+
1157
+ # The task placement strategy for a task or service.
1158
+ #
1159
+ # @note When making an API call, you may pass PlacementStrategy
1160
+ # data as a hash:
1161
+ #
1162
+ # {
1163
+ # field: "PlacementStrategyField",
1164
+ # type: "random", # accepts random, spread, binpack
1165
+ # }
1166
+ #
1167
+ # @!attribute [rw] field
1168
+ # The field to apply the placement strategy against. For the spread
1169
+ # placement strategy, valid values are `instanceId` (or `instanceId`,
1170
+ # which has the same effect), or any platform or custom attribute that
1171
+ # is applied to a container instance, such as
1172
+ # `attribute:ecs.availability-zone`. For the binpack placement
1173
+ # strategy, valid values are `cpu` and `memory`. For the random
1174
+ # placement strategy, this field is not used.
1175
+ # @return [String]
1176
+ #
1177
+ # @!attribute [rw] type
1178
+ # The type of placement strategy. The random placement strategy
1179
+ # randomly places tasks on available candidates. The spread placement
1180
+ # strategy spreads placement across available candidates evenly based
1181
+ # on the field parameter. The binpack strategy places tasks on
1182
+ # available candidates that have the least available amount of the
1183
+ # resource that is specified with the field parameter. For example, if
1184
+ # you binpack on memory, a task is placed on the instance with the
1185
+ # least amount of remaining memory (but still enough to run the task).
1186
+ # @return [String]
1187
+ #
1188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/PlacementStrategy AWS API Documentation
1189
+ #
1190
+ class PlacementStrategy < Struct.new(
1191
+ :field,
1192
+ :type)
1193
+ SENSITIVE = []
1194
+ include Aws::Structure
1195
+ end
1196
+
1197
+ # The request references a resource which does not exist.
1198
+ #
1199
+ # @!attribute [rw] message
1200
+ # @return [String]
1201
+ #
1202
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ResourceNotFoundException AWS API Documentation
1203
+ #
1204
+ class ResourceNotFoundException < Struct.new(
1205
+ :message)
1206
+ SENSITIVE = []
1207
+ include Aws::Structure
1208
+ end
1209
+
1210
+ # A `RetryPolicy` object that includes information about the retry
1211
+ # policy settings, including the maximum age of an event, and the
1212
+ # maximum number of times EventBridge Scheduler will try to deliver the
1213
+ # event to a target.
1214
+ #
1215
+ # @note When making an API call, you may pass RetryPolicy
1216
+ # data as a hash:
1217
+ #
1218
+ # {
1219
+ # maximum_event_age_in_seconds: 1,
1220
+ # maximum_retry_attempts: 1,
1221
+ # }
1222
+ #
1223
+ # @!attribute [rw] maximum_event_age_in_seconds
1224
+ # The maximum amount of time, in seconds, to continue to make retry
1225
+ # attempts.
1226
+ # @return [Integer]
1227
+ #
1228
+ # @!attribute [rw] maximum_retry_attempts
1229
+ # The maximum number of retry attempts to make before the request
1230
+ # fails. Retry attempts with exponential backoff continue until either
1231
+ # the maximum number of attempts is made or until the duration of the
1232
+ # `MaximumEventAgeInSeconds` is reached.
1233
+ # @return [Integer]
1234
+ #
1235
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/RetryPolicy AWS API Documentation
1236
+ #
1237
+ class RetryPolicy < Struct.new(
1238
+ :maximum_event_age_in_seconds,
1239
+ :maximum_retry_attempts)
1240
+ SENSITIVE = []
1241
+ include Aws::Structure
1242
+ end
1243
+
1244
+ # The name and value pair of a parameter to use to start execution of a
1245
+ # SageMaker Model Building Pipeline.
1246
+ #
1247
+ # @note When making an API call, you may pass SageMakerPipelineParameter
1248
+ # data as a hash:
1249
+ #
1250
+ # {
1251
+ # name: "SageMakerPipelineParameterName", # required
1252
+ # value: "SageMakerPipelineParameterValue", # required
1253
+ # }
1254
+ #
1255
+ # @!attribute [rw] name
1256
+ # Name of parameter to start execution of a SageMaker Model Building
1257
+ # Pipeline.
1258
+ # @return [String]
1259
+ #
1260
+ # @!attribute [rw] value
1261
+ # Value of parameter to start execution of a SageMaker Model Building
1262
+ # Pipeline.
1263
+ # @return [String]
1264
+ #
1265
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/SageMakerPipelineParameter AWS API Documentation
1266
+ #
1267
+ class SageMakerPipelineParameter < Struct.new(
1268
+ :name,
1269
+ :value)
1270
+ SENSITIVE = []
1271
+ include Aws::Structure
1272
+ end
1273
+
1274
+ # The templated target type for the Amazon SageMaker [
1275
+ # `StartPipelineExecution` ][1] API operation.
1276
+ #
1277
+ #
1278
+ #
1279
+ # [1]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StartPipelineExecution.html
1280
+ #
1281
+ # @note When making an API call, you may pass SageMakerPipelineParameters
1282
+ # data as a hash:
1283
+ #
1284
+ # {
1285
+ # pipeline_parameter_list: [
1286
+ # {
1287
+ # name: "SageMakerPipelineParameterName", # required
1288
+ # value: "SageMakerPipelineParameterValue", # required
1289
+ # },
1290
+ # ],
1291
+ # }
1292
+ #
1293
+ # @!attribute [rw] pipeline_parameter_list
1294
+ # List of parameter names and values to use when executing the
1295
+ # SageMaker Model Building Pipeline.
1296
+ # @return [Array<Types::SageMakerPipelineParameter>]
1297
+ #
1298
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/SageMakerPipelineParameters AWS API Documentation
1299
+ #
1300
+ class SageMakerPipelineParameters < Struct.new(
1301
+ :pipeline_parameter_list)
1302
+ SENSITIVE = []
1303
+ include Aws::Structure
1304
+ end
1305
+
1306
+ # The details of a schedule group.
1307
+ #
1308
+ # @!attribute [rw] arn
1309
+ # The Amazon Resource Name (ARN) of the schedule group.
1310
+ # @return [String]
1311
+ #
1312
+ # @!attribute [rw] creation_date
1313
+ # The time at which the schedule group was created.
1314
+ # @return [Time]
1315
+ #
1316
+ # @!attribute [rw] last_modification_date
1317
+ # The time at which the schedule group was last modified.
1318
+ # @return [Time]
1319
+ #
1320
+ # @!attribute [rw] name
1321
+ # The name of the schedule group.
1322
+ # @return [String]
1323
+ #
1324
+ # @!attribute [rw] state
1325
+ # Specifies the state of the schedule group.
1326
+ # @return [String]
1327
+ #
1328
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ScheduleGroupSummary AWS API Documentation
1329
+ #
1330
+ class ScheduleGroupSummary < Struct.new(
1331
+ :arn,
1332
+ :creation_date,
1333
+ :last_modification_date,
1334
+ :name,
1335
+ :state)
1336
+ SENSITIVE = []
1337
+ include Aws::Structure
1338
+ end
1339
+
1340
+ # The details of a schedule.
1341
+ #
1342
+ # @!attribute [rw] arn
1343
+ # The Amazon Resource Name (ARN) of the schedule.
1344
+ # @return [String]
1345
+ #
1346
+ # @!attribute [rw] creation_date
1347
+ # The time at which the schedule was created.
1348
+ # @return [Time]
1349
+ #
1350
+ # @!attribute [rw] group_name
1351
+ # The name of the schedule group associated with this schedule.
1352
+ # @return [String]
1353
+ #
1354
+ # @!attribute [rw] last_modification_date
1355
+ # The time at which the schedule was last modified.
1356
+ # @return [Time]
1357
+ #
1358
+ # @!attribute [rw] name
1359
+ # The name of the schedule.
1360
+ # @return [String]
1361
+ #
1362
+ # @!attribute [rw] state
1363
+ # Specifies whether the schedule is enabled or disabled.
1364
+ # @return [String]
1365
+ #
1366
+ # @!attribute [rw] target
1367
+ # The schedule's target details.
1368
+ # @return [Types::TargetSummary]
1369
+ #
1370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ScheduleSummary AWS API Documentation
1371
+ #
1372
+ class ScheduleSummary < Struct.new(
1373
+ :arn,
1374
+ :creation_date,
1375
+ :group_name,
1376
+ :last_modification_date,
1377
+ :name,
1378
+ :state,
1379
+ :target)
1380
+ SENSITIVE = []
1381
+ include Aws::Structure
1382
+ end
1383
+
1384
+ # The request exceeds a service quota.
1385
+ #
1386
+ # @!attribute [rw] message
1387
+ # @return [String]
1388
+ #
1389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ServiceQuotaExceededException AWS API Documentation
1390
+ #
1391
+ class ServiceQuotaExceededException < Struct.new(
1392
+ :message)
1393
+ SENSITIVE = []
1394
+ include Aws::Structure
1395
+ end
1396
+
1397
+ # The templated target type for the Amazon SQS [ `SendMessage` ][1] API
1398
+ # operation. Contains the message group ID to use when the target is a
1399
+ # FIFO queue. If you specify an Amazon SQS FIFO queue as a target, the
1400
+ # queue must have content-based deduplication enabled. For more
1401
+ # information, see [Using the Amazon SQS message deduplication ID][2] in
1402
+ # the *Amazon SQS Developer Guide*.
1403
+ #
1404
+ #
1405
+ #
1406
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html
1407
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1408
+ #
1409
+ # @note When making an API call, you may pass SqsParameters
1410
+ # data as a hash:
1411
+ #
1412
+ # {
1413
+ # message_group_id: "MessageGroupId",
1414
+ # }
1415
+ #
1416
+ # @!attribute [rw] message_group_id
1417
+ # The FIFO message group ID to use as the target.
1418
+ # @return [String]
1419
+ #
1420
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/SqsParameters AWS API Documentation
1421
+ #
1422
+ class SqsParameters < Struct.new(
1423
+ :message_group_id)
1424
+ SENSITIVE = []
1425
+ include Aws::Structure
1426
+ end
1427
+
1428
+ # Tag to associate with a schedule group.
1429
+ #
1430
+ # @note When making an API call, you may pass Tag
1431
+ # data as a hash:
1432
+ #
1433
+ # {
1434
+ # key: "TagKey", # required
1435
+ # value: "TagValue", # required
1436
+ # }
1437
+ #
1438
+ # @!attribute [rw] key
1439
+ # The key for the tag.
1440
+ # @return [String]
1441
+ #
1442
+ # @!attribute [rw] value
1443
+ # The value for the tag.
1444
+ # @return [String]
1445
+ #
1446
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/Tag AWS API Documentation
1447
+ #
1448
+ class Tag < Struct.new(
1449
+ :key,
1450
+ :value)
1451
+ SENSITIVE = []
1452
+ include Aws::Structure
1453
+ end
1454
+
1455
+ # @note When making an API call, you may pass TagResourceInput
1456
+ # data as a hash:
1457
+ #
1458
+ # {
1459
+ # resource_arn: "TagResourceArn", # required
1460
+ # tags: [ # required
1461
+ # {
1462
+ # key: "TagKey", # required
1463
+ # value: "TagValue", # required
1464
+ # },
1465
+ # ],
1466
+ # }
1467
+ #
1468
+ # @!attribute [rw] resource_arn
1469
+ # The Amazon Resource Name (ARN) of the schedule group that you are
1470
+ # adding tags to.
1471
+ # @return [String]
1472
+ #
1473
+ # @!attribute [rw] tags
1474
+ # The list of tags to associate with the schedule group.
1475
+ # @return [Array<Types::Tag>]
1476
+ #
1477
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/TagResourceInput AWS API Documentation
1478
+ #
1479
+ class TagResourceInput < Struct.new(
1480
+ :resource_arn,
1481
+ :tags)
1482
+ SENSITIVE = []
1483
+ include Aws::Structure
1484
+ end
1485
+
1486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/TagResourceOutput AWS API Documentation
1487
+ #
1488
+ class TagResourceOutput < Aws::EmptyStructure; end
1489
+
1490
+ # The schedule's target. EventBridge Scheduler supports templated
1491
+ # target that invoke common API operations, as well as universal targets
1492
+ # that you can customize to invoke over 6,000 API operations across more
1493
+ # than 270 services. You can only specify one templated or universal
1494
+ # target for a schedule.
1495
+ #
1496
+ # @note When making an API call, you may pass Target
1497
+ # data as a hash:
1498
+ #
1499
+ # {
1500
+ # arn: "TargetArn", # required
1501
+ # dead_letter_config: {
1502
+ # arn: "DeadLetterConfigArnString",
1503
+ # },
1504
+ # ecs_parameters: {
1505
+ # capacity_provider_strategy: [
1506
+ # {
1507
+ # base: 1,
1508
+ # capacity_provider: "CapacityProvider", # required
1509
+ # weight: 1,
1510
+ # },
1511
+ # ],
1512
+ # enable_ecs_managed_tags: false,
1513
+ # enable_execute_command: false,
1514
+ # group: "Group",
1515
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
1516
+ # network_configuration: {
1517
+ # awsvpc_configuration: {
1518
+ # assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
1519
+ # security_groups: ["SecurityGroup"],
1520
+ # subnets: ["Subnet"], # required
1521
+ # },
1522
+ # },
1523
+ # placement_constraints: [
1524
+ # {
1525
+ # expression: "PlacementConstraintExpression",
1526
+ # type: "distinctInstance", # accepts distinctInstance, memberOf
1527
+ # },
1528
+ # ],
1529
+ # placement_strategy: [
1530
+ # {
1531
+ # field: "PlacementStrategyField",
1532
+ # type: "random", # accepts random, spread, binpack
1533
+ # },
1534
+ # ],
1535
+ # platform_version: "PlatformVersion",
1536
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION
1537
+ # reference_id: "ReferenceId",
1538
+ # tags: [
1539
+ # {
1540
+ # "TagKey" => "TagValue",
1541
+ # },
1542
+ # ],
1543
+ # task_count: 1,
1544
+ # task_definition_arn: "TaskDefinitionArn", # required
1545
+ # },
1546
+ # event_bridge_parameters: {
1547
+ # detail_type: "DetailType", # required
1548
+ # source: "Source", # required
1549
+ # },
1550
+ # input: "TargetInput",
1551
+ # kinesis_parameters: {
1552
+ # partition_key: "TargetPartitionKey", # required
1553
+ # },
1554
+ # retry_policy: {
1555
+ # maximum_event_age_in_seconds: 1,
1556
+ # maximum_retry_attempts: 1,
1557
+ # },
1558
+ # role_arn: "RoleArn", # required
1559
+ # sage_maker_pipeline_parameters: {
1560
+ # pipeline_parameter_list: [
1561
+ # {
1562
+ # name: "SageMakerPipelineParameterName", # required
1563
+ # value: "SageMakerPipelineParameterValue", # required
1564
+ # },
1565
+ # ],
1566
+ # },
1567
+ # sqs_parameters: {
1568
+ # message_group_id: "MessageGroupId",
1569
+ # },
1570
+ # }
1571
+ #
1572
+ # @!attribute [rw] arn
1573
+ # The Amazon Resource Name (ARN) of the target.
1574
+ # @return [String]
1575
+ #
1576
+ # @!attribute [rw] dead_letter_config
1577
+ # An object that contains information about an Amazon SQS queue that
1578
+ # EventBridge Scheduler uses as a dead-letter queue for your schedule.
1579
+ # If specified, EventBridge Scheduler delivers failed events that
1580
+ # could not be successfully delivered to a target to the queue.
1581
+ # @return [Types::DeadLetterConfig]
1582
+ #
1583
+ # @!attribute [rw] ecs_parameters
1584
+ # The templated target type for the Amazon ECS [ `RunTask` ][1] API
1585
+ # operation.
1586
+ #
1587
+ #
1588
+ #
1589
+ # [1]: https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RunTask.html
1590
+ # @return [Types::EcsParameters]
1591
+ #
1592
+ # @!attribute [rw] event_bridge_parameters
1593
+ # The templated target type for the EventBridge [ `PutEvents` ][1] API
1594
+ # operation.
1595
+ #
1596
+ #
1597
+ #
1598
+ # [1]: https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEvents.html
1599
+ # @return [Types::EventBridgeParameters]
1600
+ #
1601
+ # @!attribute [rw] input
1602
+ # The text, or well-formed JSON, passed to the target. If you are
1603
+ # configuring a templated Lambda, AWS Step Functions, or Amazon
1604
+ # EventBridge target, the input must be a well-formed JSON. For all
1605
+ # other target types, a JSON is not required. If you do not specify
1606
+ # anything for this field, EventBridge Scheduler delivers a default
1607
+ # notification to the target.
1608
+ # @return [String]
1609
+ #
1610
+ # @!attribute [rw] kinesis_parameters
1611
+ # The templated target type for the Amazon Kinesis [ `PutRecord`
1612
+ # ](kinesis/latest/APIReference/API_PutRecord.html) API operation.
1613
+ # @return [Types::KinesisParameters]
1614
+ #
1615
+ # @!attribute [rw] retry_policy
1616
+ # A `RetryPolicy` object that includes information about the retry
1617
+ # policy settings, including the maximum age of an event, and the
1618
+ # maximum number of times EventBridge Scheduler will try to deliver
1619
+ # the event to a target.
1620
+ # @return [Types::RetryPolicy]
1621
+ #
1622
+ # @!attribute [rw] role_arn
1623
+ # The Amazon Resource Name (ARN) of the IAM role that EventBridge
1624
+ # Scheduler will use for this target when the schedule is invoked.
1625
+ # @return [String]
1626
+ #
1627
+ # @!attribute [rw] sage_maker_pipeline_parameters
1628
+ # The templated target type for the Amazon SageMaker [
1629
+ # `StartPipelineExecution` ][1] API operation.
1630
+ #
1631
+ #
1632
+ #
1633
+ # [1]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_StartPipelineExecution.html
1634
+ # @return [Types::SageMakerPipelineParameters]
1635
+ #
1636
+ # @!attribute [rw] sqs_parameters
1637
+ # The templated target type for the Amazon SQS [ `SendMessage` ][1]
1638
+ # API operation. Contains the message group ID to use when the target
1639
+ # is a FIFO queue. If you specify an Amazon SQS FIFO queue as a
1640
+ # target, the queue must have content-based deduplication enabled. For
1641
+ # more information, see [Using the Amazon SQS message deduplication
1642
+ # ID][2] in the *Amazon SQS Developer Guide*.
1643
+ #
1644
+ #
1645
+ #
1646
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html
1647
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagededuplicationid-property.html
1648
+ # @return [Types::SqsParameters]
1649
+ #
1650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/Target AWS API Documentation
1651
+ #
1652
+ class Target < Struct.new(
1653
+ :arn,
1654
+ :dead_letter_config,
1655
+ :ecs_parameters,
1656
+ :event_bridge_parameters,
1657
+ :input,
1658
+ :kinesis_parameters,
1659
+ :retry_policy,
1660
+ :role_arn,
1661
+ :sage_maker_pipeline_parameters,
1662
+ :sqs_parameters)
1663
+ SENSITIVE = []
1664
+ include Aws::Structure
1665
+ end
1666
+
1667
+ # The details of a target.
1668
+ #
1669
+ # @!attribute [rw] arn
1670
+ # The Amazon Resource Name (ARN) of the target.
1671
+ # @return [String]
1672
+ #
1673
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/TargetSummary AWS API Documentation
1674
+ #
1675
+ class TargetSummary < Struct.new(
1676
+ :arn)
1677
+ SENSITIVE = []
1678
+ include Aws::Structure
1679
+ end
1680
+
1681
+ # The request was denied due to request throttling.
1682
+ #
1683
+ # @!attribute [rw] message
1684
+ # @return [String]
1685
+ #
1686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ThrottlingException AWS API Documentation
1687
+ #
1688
+ class ThrottlingException < Struct.new(
1689
+ :message)
1690
+ SENSITIVE = []
1691
+ include Aws::Structure
1692
+ end
1693
+
1694
+ # @note When making an API call, you may pass UntagResourceInput
1695
+ # data as a hash:
1696
+ #
1697
+ # {
1698
+ # resource_arn: "TagResourceArn", # required
1699
+ # tag_keys: ["TagKey"], # required
1700
+ # }
1701
+ #
1702
+ # @!attribute [rw] resource_arn
1703
+ # The Amazon Resource Name (ARN) of the schedule group from which you
1704
+ # are removing tags.
1705
+ # @return [String]
1706
+ #
1707
+ # @!attribute [rw] tag_keys
1708
+ # The list of tag keys to remove from the resource.
1709
+ # @return [Array<String>]
1710
+ #
1711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/UntagResourceInput AWS API Documentation
1712
+ #
1713
+ class UntagResourceInput < Struct.new(
1714
+ :resource_arn,
1715
+ :tag_keys)
1716
+ SENSITIVE = []
1717
+ include Aws::Structure
1718
+ end
1719
+
1720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/UntagResourceOutput AWS API Documentation
1721
+ #
1722
+ class UntagResourceOutput < Aws::EmptyStructure; end
1723
+
1724
+ # @note When making an API call, you may pass UpdateScheduleInput
1725
+ # data as a hash:
1726
+ #
1727
+ # {
1728
+ # client_token: "ClientToken",
1729
+ # description: "Description",
1730
+ # end_date: Time.now,
1731
+ # flexible_time_window: { # required
1732
+ # maximum_window_in_minutes: 1,
1733
+ # mode: "OFF", # required, accepts OFF, FLEXIBLE
1734
+ # },
1735
+ # group_name: "ScheduleGroupName",
1736
+ # kms_key_arn: "KmsKeyArn",
1737
+ # name: "Name", # required
1738
+ # schedule_expression: "ScheduleExpression", # required
1739
+ # schedule_expression_timezone: "ScheduleExpressionTimezone",
1740
+ # start_date: Time.now,
1741
+ # state: "ENABLED", # accepts ENABLED, DISABLED
1742
+ # target: { # required
1743
+ # arn: "TargetArn", # required
1744
+ # dead_letter_config: {
1745
+ # arn: "DeadLetterConfigArnString",
1746
+ # },
1747
+ # ecs_parameters: {
1748
+ # capacity_provider_strategy: [
1749
+ # {
1750
+ # base: 1,
1751
+ # capacity_provider: "CapacityProvider", # required
1752
+ # weight: 1,
1753
+ # },
1754
+ # ],
1755
+ # enable_ecs_managed_tags: false,
1756
+ # enable_execute_command: false,
1757
+ # group: "Group",
1758
+ # launch_type: "EC2", # accepts EC2, FARGATE, EXTERNAL
1759
+ # network_configuration: {
1760
+ # awsvpc_configuration: {
1761
+ # assign_public_ip: "ENABLED", # accepts ENABLED, DISABLED
1762
+ # security_groups: ["SecurityGroup"],
1763
+ # subnets: ["Subnet"], # required
1764
+ # },
1765
+ # },
1766
+ # placement_constraints: [
1767
+ # {
1768
+ # expression: "PlacementConstraintExpression",
1769
+ # type: "distinctInstance", # accepts distinctInstance, memberOf
1770
+ # },
1771
+ # ],
1772
+ # placement_strategy: [
1773
+ # {
1774
+ # field: "PlacementStrategyField",
1775
+ # type: "random", # accepts random, spread, binpack
1776
+ # },
1777
+ # ],
1778
+ # platform_version: "PlatformVersion",
1779
+ # propagate_tags: "TASK_DEFINITION", # accepts TASK_DEFINITION
1780
+ # reference_id: "ReferenceId",
1781
+ # tags: [
1782
+ # {
1783
+ # "TagKey" => "TagValue",
1784
+ # },
1785
+ # ],
1786
+ # task_count: 1,
1787
+ # task_definition_arn: "TaskDefinitionArn", # required
1788
+ # },
1789
+ # event_bridge_parameters: {
1790
+ # detail_type: "DetailType", # required
1791
+ # source: "Source", # required
1792
+ # },
1793
+ # input: "TargetInput",
1794
+ # kinesis_parameters: {
1795
+ # partition_key: "TargetPartitionKey", # required
1796
+ # },
1797
+ # retry_policy: {
1798
+ # maximum_event_age_in_seconds: 1,
1799
+ # maximum_retry_attempts: 1,
1800
+ # },
1801
+ # role_arn: "RoleArn", # required
1802
+ # sage_maker_pipeline_parameters: {
1803
+ # pipeline_parameter_list: [
1804
+ # {
1805
+ # name: "SageMakerPipelineParameterName", # required
1806
+ # value: "SageMakerPipelineParameterValue", # required
1807
+ # },
1808
+ # ],
1809
+ # },
1810
+ # sqs_parameters: {
1811
+ # message_group_id: "MessageGroupId",
1812
+ # },
1813
+ # },
1814
+ # }
1815
+ #
1816
+ # @!attribute [rw] client_token
1817
+ # Unique, case-sensitive identifier you provide to ensure the
1818
+ # idempotency of the request. If you do not specify a client token,
1819
+ # EventBridge Scheduler uses a randomly generated token for the
1820
+ # request to ensure idempotency.
1821
+ #
1822
+ # **A suitable default value is auto-generated.** You should normally
1823
+ # not need to pass this option.
1824
+ # @return [String]
1825
+ #
1826
+ # @!attribute [rw] description
1827
+ # The description you specify for the schedule.
1828
+ # @return [String]
1829
+ #
1830
+ # @!attribute [rw] end_date
1831
+ # The date, in UTC, before which the schedule can invoke its target.
1832
+ # Depending on the schedule's recurrence expression, invocations
1833
+ # might stop on, or before, the `EndDate` you specify. EventBridge
1834
+ # Scheduler ignores `EndDate` for one-time schedules.
1835
+ # @return [Time]
1836
+ #
1837
+ # @!attribute [rw] flexible_time_window
1838
+ # Allows you to configure a time window during which EventBridge
1839
+ # Scheduler invokes the schedule.
1840
+ # @return [Types::FlexibleTimeWindow]
1841
+ #
1842
+ # @!attribute [rw] group_name
1843
+ # The name of the schedule group with which the schedule is
1844
+ # associated. You must provide this value in order for EventBridge
1845
+ # Scheduler to find the schedule you want to update. If you omit this
1846
+ # value, EventBridge Scheduler assumes the group is associated to the
1847
+ # default group.
1848
+ # @return [String]
1849
+ #
1850
+ # @!attribute [rw] kms_key_arn
1851
+ # The ARN for the customer managed KMS key that that you want
1852
+ # EventBridge Scheduler to use to encrypt and decrypt your data.
1853
+ # @return [String]
1854
+ #
1855
+ # @!attribute [rw] name
1856
+ # The name of the schedule that you are updating.
1857
+ # @return [String]
1858
+ #
1859
+ # @!attribute [rw] schedule_expression
1860
+ # The expression that defines when the schedule runs. The following
1861
+ # formats are supported.
1862
+ #
1863
+ # * `at` expression - `at(yyyy-mm-ddThh:mm:ss)`
1864
+ #
1865
+ # * `rate` expression - `rate(unit value)`
1866
+ #
1867
+ # * `cron` expression - `cron(fields)`
1868
+ #
1869
+ # You can use `at` expressions to create one-time schedules that
1870
+ # invoke a target once, at the time and in the time zone, that you
1871
+ # specify. You can use `rate` and `cron` expressions to create
1872
+ # recurring schedules. Rate-based schedules are useful when you want
1873
+ # to invoke a target at regular intervals, such as every 15 minutes or
1874
+ # every five days. Cron-based schedules are useful when you want to
1875
+ # invoke a target periodically at a specific time, such as at 8:00 am
1876
+ # (UTC+0) every 1st day of the month.
1877
+ #
1878
+ # A `cron` expression consists of six fields separated by white
1879
+ # spaces: `(minutes hours day_of_month month day_of_week year)`.
1880
+ #
1881
+ # A `rate` expression consists of a *value* as a positive integer, and
1882
+ # a *unit* with the following options: `minute` \| `minutes` \| `hour`
1883
+ # \| `hours` \| `day` \| `days`
1884
+ #
1885
+ # For more information and examples, see [Schedule types on
1886
+ # EventBridge Scheduler][1] in the *EventBridge Scheduler User Guide*.
1887
+ #
1888
+ #
1889
+ #
1890
+ # [1]: https://docs.aws.amazon.com/scheduler/latest/UserGuide/schedule-types.html
1891
+ # @return [String]
1892
+ #
1893
+ # @!attribute [rw] schedule_expression_timezone
1894
+ # The timezone in which the scheduling expression is evaluated.
1895
+ # @return [String]
1896
+ #
1897
+ # @!attribute [rw] start_date
1898
+ # The date, in UTC, after which the schedule can begin invoking its
1899
+ # target. Depending on the schedule's recurrence expression,
1900
+ # invocations might occur on, or after, the `StartDate` you specify.
1901
+ # EventBridge Scheduler ignores `StartDate` for one-time schedules.
1902
+ # @return [Time]
1903
+ #
1904
+ # @!attribute [rw] state
1905
+ # Specifies whether the schedule is enabled or disabled.
1906
+ # @return [String]
1907
+ #
1908
+ # @!attribute [rw] target
1909
+ # The schedule target. You can use this operation to change the target
1910
+ # that your schedule invokes.
1911
+ # @return [Types::Target]
1912
+ #
1913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/UpdateScheduleInput AWS API Documentation
1914
+ #
1915
+ class UpdateScheduleInput < Struct.new(
1916
+ :client_token,
1917
+ :description,
1918
+ :end_date,
1919
+ :flexible_time_window,
1920
+ :group_name,
1921
+ :kms_key_arn,
1922
+ :name,
1923
+ :schedule_expression,
1924
+ :schedule_expression_timezone,
1925
+ :start_date,
1926
+ :state,
1927
+ :target)
1928
+ SENSITIVE = []
1929
+ include Aws::Structure
1930
+ end
1931
+
1932
+ # @!attribute [rw] schedule_arn
1933
+ # The Amazon Resource Name (ARN) of the schedule that you updated.
1934
+ # @return [String]
1935
+ #
1936
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/UpdateScheduleOutput AWS API Documentation
1937
+ #
1938
+ class UpdateScheduleOutput < Struct.new(
1939
+ :schedule_arn)
1940
+ SENSITIVE = []
1941
+ include Aws::Structure
1942
+ end
1943
+
1944
+ # The input fails to satisfy the constraints specified by an AWS
1945
+ # service.
1946
+ #
1947
+ # @!attribute [rw] message
1948
+ # @return [String]
1949
+ #
1950
+ # @see http://docs.aws.amazon.com/goto/WebAPI/scheduler-2021-06-30/ValidationException AWS API Documentation
1951
+ #
1952
+ class ValidationException < Struct.new(
1953
+ :message)
1954
+ SENSITIVE = []
1955
+ include Aws::Structure
1956
+ end
1957
+
1958
+ end
1959
+ end