aws-sdk-workspaces 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
File without changes
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module WorkSpaces
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module WorkSpaces
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,1020 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module WorkSpaces
10
+ module Types
11
+
12
+ # Contains information about the compute type of a WorkSpace bundle.
13
+ # @!attribute [rw] name
14
+ # The name of the compute type for the bundle.
15
+ # @return [String]
16
+ class ComputeType < Struct.new(
17
+ :name)
18
+ include Aws::Structure
19
+ end
20
+
21
+ # The request of the CreateTags operation.
22
+ # @note When making an API call, pass CreateTagsRequest
23
+ # data as a hash:
24
+ #
25
+ # {
26
+ # resource_id: "NonEmptyString", # required
27
+ # tags: [ # required
28
+ # {
29
+ # key: "TagKey", # required
30
+ # value: "TagValue",
31
+ # },
32
+ # ],
33
+ # }
34
+ # @!attribute [rw] resource_id
35
+ # The resource ID of the request.
36
+ # @return [String]
37
+ #
38
+ # @!attribute [rw] tags
39
+ # The tags of the request.
40
+ # @return [Array<Types::Tag>]
41
+ class CreateTagsRequest < Struct.new(
42
+ :resource_id,
43
+ :tags)
44
+ include Aws::Structure
45
+ end
46
+
47
+ # The result of the CreateTags operation.
48
+ class CreateTagsResult < Aws::EmptyStructure; end
49
+
50
+ # Contains the inputs for the CreateWorkspaces operation.
51
+ # @note When making an API call, pass CreateWorkspacesRequest
52
+ # data as a hash:
53
+ #
54
+ # {
55
+ # workspaces: [ # required
56
+ # {
57
+ # directory_id: "DirectoryId", # required
58
+ # user_name: "UserName", # required
59
+ # bundle_id: "BundleId", # required
60
+ # volume_encryption_key: "VolumeEncryptionKey",
61
+ # user_volume_encryption_enabled: false,
62
+ # root_volume_encryption_enabled: false,
63
+ # workspace_properties: {
64
+ # running_mode: "AUTO_STOP", # accepts AUTO_STOP, ALWAYS_ON
65
+ # running_mode_auto_stop_timeout_in_minutes: 1,
66
+ # },
67
+ # tags: [
68
+ # {
69
+ # key: "TagKey", # required
70
+ # value: "TagValue",
71
+ # },
72
+ # ],
73
+ # },
74
+ # ],
75
+ # }
76
+ # @!attribute [rw] workspaces
77
+ # An array of structures that specify the WorkSpaces to create.
78
+ # @return [Array<Types::WorkspaceRequest>]
79
+ class CreateWorkspacesRequest < Struct.new(
80
+ :workspaces)
81
+ include Aws::Structure
82
+ end
83
+
84
+ # Contains the result of the CreateWorkspaces operation.
85
+ # @!attribute [rw] failed_requests
86
+ # An array of structures that represent the WorkSpaces that could not
87
+ # be created.
88
+ # @return [Array<Types::FailedCreateWorkspaceRequest>]
89
+ #
90
+ # @!attribute [rw] pending_requests
91
+ # An array of structures that represent the WorkSpaces that were
92
+ # created.
93
+ #
94
+ # Because this operation is asynchronous, the identifier in
95
+ # `WorkspaceId` is not immediately available. If you immediately call
96
+ # DescribeWorkspaces with this identifier, no information will be
97
+ # returned.
98
+ # @return [Array<Types::Workspace>]
99
+ class CreateWorkspacesResult < Struct.new(
100
+ :failed_requests,
101
+ :pending_requests)
102
+ include Aws::Structure
103
+ end
104
+
105
+ # Contains default WorkSpace creation information.
106
+ # @!attribute [rw] enable_work_docs
107
+ # Specifies if the directory is enabled for Amazon WorkDocs.
108
+ # @return [Boolean]
109
+ #
110
+ # @!attribute [rw] enable_internet_access
111
+ # A public IP address will be attached to all WorkSpaces that are
112
+ # created or rebuilt.
113
+ # @return [Boolean]
114
+ #
115
+ # @!attribute [rw] default_ou
116
+ # The organizational unit (OU) in the directory that the WorkSpace
117
+ # machine accounts are placed in.
118
+ # @return [String]
119
+ #
120
+ # @!attribute [rw] custom_security_group_id
121
+ # The identifier of any custom security groups that are applied to the
122
+ # WorkSpaces when they are created.
123
+ # @return [String]
124
+ #
125
+ # @!attribute [rw] user_enabled_as_local_administrator
126
+ # The WorkSpace user is an administrator on the WorkSpace.
127
+ # @return [Boolean]
128
+ class DefaultWorkspaceCreationProperties < Struct.new(
129
+ :enable_work_docs,
130
+ :enable_internet_access,
131
+ :default_ou,
132
+ :custom_security_group_id,
133
+ :user_enabled_as_local_administrator)
134
+ include Aws::Structure
135
+ end
136
+
137
+ # The request of the DeleteTags operation.
138
+ # @note When making an API call, pass DeleteTagsRequest
139
+ # data as a hash:
140
+ #
141
+ # {
142
+ # resource_id: "NonEmptyString", # required
143
+ # tag_keys: ["NonEmptyString"], # required
144
+ # }
145
+ # @!attribute [rw] resource_id
146
+ # The resource ID of the request.
147
+ # @return [String]
148
+ #
149
+ # @!attribute [rw] tag_keys
150
+ # The tag keys of the request.
151
+ # @return [Array<String>]
152
+ class DeleteTagsRequest < Struct.new(
153
+ :resource_id,
154
+ :tag_keys)
155
+ include Aws::Structure
156
+ end
157
+
158
+ # The result of the DeleteTags operation.
159
+ class DeleteTagsResult < Aws::EmptyStructure; end
160
+
161
+ # The request of the DescribeTags operation.
162
+ # @note When making an API call, pass DescribeTagsRequest
163
+ # data as a hash:
164
+ #
165
+ # {
166
+ # resource_id: "NonEmptyString", # required
167
+ # }
168
+ # @!attribute [rw] resource_id
169
+ # The resource ID of the request.
170
+ # @return [String]
171
+ class DescribeTagsRequest < Struct.new(
172
+ :resource_id)
173
+ include Aws::Structure
174
+ end
175
+
176
+ # The result of the DescribeTags operation.
177
+ # @!attribute [rw] tag_list
178
+ # The list of tags.
179
+ # @return [Array<Types::Tag>]
180
+ class DescribeTagsResult < Struct.new(
181
+ :tag_list)
182
+ include Aws::Structure
183
+ end
184
+
185
+ # Contains the inputs for the DescribeWorkspaceBundles operation.
186
+ # @note When making an API call, pass DescribeWorkspaceBundlesRequest
187
+ # data as a hash:
188
+ #
189
+ # {
190
+ # bundle_ids: ["BundleId"],
191
+ # owner: "BundleOwner",
192
+ # next_token: "PaginationToken",
193
+ # }
194
+ # @!attribute [rw] bundle_ids
195
+ # An array of strings that contains the identifiers of the bundles to
196
+ # retrieve. This parameter cannot be combined with any other filter
197
+ # parameter.
198
+ # @return [Array<String>]
199
+ #
200
+ # @!attribute [rw] owner
201
+ # The owner of the bundles to retrieve. This parameter cannot be
202
+ # combined with any other filter parameter.
203
+ #
204
+ # This contains one of the following values:
205
+ #
206
+ # * null- Retrieves the bundles that belong to the account making the
207
+ # call.
208
+ #
209
+ # * `AMAZON`- Retrieves the bundles that are provided by AWS.
210
+ # @return [String]
211
+ #
212
+ # @!attribute [rw] next_token
213
+ # The `NextToken` value from a previous call to this operation. Pass
214
+ # null if this is the first call.
215
+ # @return [String]
216
+ class DescribeWorkspaceBundlesRequest < Struct.new(
217
+ :bundle_ids,
218
+ :owner,
219
+ :next_token)
220
+ include Aws::Structure
221
+ end
222
+
223
+ # Contains the results of the DescribeWorkspaceBundles operation.
224
+ # @!attribute [rw] bundles
225
+ # An array of structures that contain information about the bundles.
226
+ # @return [Array<Types::WorkspaceBundle>]
227
+ #
228
+ # @!attribute [rw] next_token
229
+ # If not null, more results are available. Pass this value for the
230
+ # `NextToken` parameter in a subsequent call to this operation to
231
+ # retrieve the next set of items. This token is valid for one day and
232
+ # must be used within that time frame.
233
+ # @return [String]
234
+ class DescribeWorkspaceBundlesResult < Struct.new(
235
+ :bundles,
236
+ :next_token)
237
+ include Aws::Structure
238
+ end
239
+
240
+ # Contains the inputs for the DescribeWorkspaceDirectories operation.
241
+ # @note When making an API call, pass DescribeWorkspaceDirectoriesRequest
242
+ # data as a hash:
243
+ #
244
+ # {
245
+ # directory_ids: ["DirectoryId"],
246
+ # next_token: "PaginationToken",
247
+ # }
248
+ # @!attribute [rw] directory_ids
249
+ # An array of strings that contains the directory identifiers to
250
+ # retrieve information for. If this member is null, all directories
251
+ # are retrieved.
252
+ # @return [Array<String>]
253
+ #
254
+ # @!attribute [rw] next_token
255
+ # The `NextToken` value from a previous call to this operation. Pass
256
+ # null if this is the first call.
257
+ # @return [String]
258
+ class DescribeWorkspaceDirectoriesRequest < Struct.new(
259
+ :directory_ids,
260
+ :next_token)
261
+ include Aws::Structure
262
+ end
263
+
264
+ # Contains the results of the DescribeWorkspaceDirectories operation.
265
+ # @!attribute [rw] directories
266
+ # An array of structures that contain information about the
267
+ # directories.
268
+ # @return [Array<Types::WorkspaceDirectory>]
269
+ #
270
+ # @!attribute [rw] next_token
271
+ # If not null, more results are available. Pass this value for the
272
+ # `NextToken` parameter in a subsequent call to this operation to
273
+ # retrieve the next set of items. This token is valid for one day and
274
+ # must be used within that time frame.
275
+ # @return [String]
276
+ class DescribeWorkspaceDirectoriesResult < Struct.new(
277
+ :directories,
278
+ :next_token)
279
+ include Aws::Structure
280
+ end
281
+
282
+ # @note When making an API call, pass DescribeWorkspacesConnectionStatusRequest
283
+ # data as a hash:
284
+ #
285
+ # {
286
+ # workspace_ids: ["WorkspaceId"],
287
+ # next_token: "PaginationToken",
288
+ # }
289
+ # @!attribute [rw] workspace_ids
290
+ # An array of strings that contain the identifiers of the WorkSpaces.
291
+ # @return [Array<String>]
292
+ #
293
+ # @!attribute [rw] next_token
294
+ # The next token of the request.
295
+ # @return [String]
296
+ class DescribeWorkspacesConnectionStatusRequest < Struct.new(
297
+ :workspace_ids,
298
+ :next_token)
299
+ include Aws::Structure
300
+ end
301
+
302
+ # @!attribute [rw] workspaces_connection_status
303
+ # The connection status of the WorkSpace.
304
+ # @return [Array<Types::WorkspaceConnectionStatus>]
305
+ #
306
+ # @!attribute [rw] next_token
307
+ # The next token of the result.
308
+ # @return [String]
309
+ class DescribeWorkspacesConnectionStatusResult < Struct.new(
310
+ :workspaces_connection_status,
311
+ :next_token)
312
+ include Aws::Structure
313
+ end
314
+
315
+ # Contains the inputs for the DescribeWorkspaces operation.
316
+ # @note When making an API call, pass DescribeWorkspacesRequest
317
+ # data as a hash:
318
+ #
319
+ # {
320
+ # workspace_ids: ["WorkspaceId"],
321
+ # directory_id: "DirectoryId",
322
+ # user_name: "UserName",
323
+ # bundle_id: "BundleId",
324
+ # limit: 1,
325
+ # next_token: "PaginationToken",
326
+ # }
327
+ # @!attribute [rw] workspace_ids
328
+ # An array of strings that contain the identifiers of the WorkSpaces
329
+ # for which to retrieve information. This parameter cannot be combined
330
+ # with any other filter parameter.
331
+ #
332
+ # Because the CreateWorkspaces operation is asynchronous, the
333
+ # identifier it returns is not immediately available. If you
334
+ # immediately call DescribeWorkspaces with this identifier, no
335
+ # information is returned.
336
+ # @return [Array<String>]
337
+ #
338
+ # @!attribute [rw] directory_id
339
+ # Specifies the directory identifier to which to limit the WorkSpaces.
340
+ # Optionally, you can specify a specific directory user with the
341
+ # `UserName` parameter. This parameter cannot be combined with any
342
+ # other filter parameter.
343
+ # @return [String]
344
+ #
345
+ # @!attribute [rw] user_name
346
+ # Used with the `DirectoryId` parameter to specify the directory user
347
+ # for whom to obtain the WorkSpace.
348
+ # @return [String]
349
+ #
350
+ # @!attribute [rw] bundle_id
351
+ # The identifier of a bundle to obtain the WorkSpaces for. All
352
+ # WorkSpaces that are created from this bundle will be retrieved. This
353
+ # parameter cannot be combined with any other filter parameter.
354
+ # @return [String]
355
+ #
356
+ # @!attribute [rw] limit
357
+ # The maximum number of items to return.
358
+ # @return [Integer]
359
+ #
360
+ # @!attribute [rw] next_token
361
+ # The `NextToken` value from a previous call to this operation. Pass
362
+ # null if this is the first call.
363
+ # @return [String]
364
+ class DescribeWorkspacesRequest < Struct.new(
365
+ :workspace_ids,
366
+ :directory_id,
367
+ :user_name,
368
+ :bundle_id,
369
+ :limit,
370
+ :next_token)
371
+ include Aws::Structure
372
+ end
373
+
374
+ # Contains the results for the DescribeWorkspaces operation.
375
+ # @!attribute [rw] workspaces
376
+ # An array of structures that contain the information about the
377
+ # WorkSpaces.
378
+ #
379
+ # Because the CreateWorkspaces operation is asynchronous, some of this
380
+ # information may be incomplete for a newly-created WorkSpace.
381
+ # @return [Array<Types::Workspace>]
382
+ #
383
+ # @!attribute [rw] next_token
384
+ # If not null, more results are available. Pass this value for the
385
+ # `NextToken` parameter in a subsequent call to this operation to
386
+ # retrieve the next set of items. This token is valid for one day and
387
+ # must be used within that time frame.
388
+ # @return [String]
389
+ class DescribeWorkspacesResult < Struct.new(
390
+ :workspaces,
391
+ :next_token)
392
+ include Aws::Structure
393
+ end
394
+
395
+ # Contains information about a WorkSpace that could not be created.
396
+ # @!attribute [rw] workspace_request
397
+ # A FailedCreateWorkspaceRequest$WorkspaceRequest object that contains
398
+ # the information about the WorkSpace that could not be created.
399
+ # @return [Types::WorkspaceRequest]
400
+ #
401
+ # @!attribute [rw] error_code
402
+ # The error code.
403
+ # @return [String]
404
+ #
405
+ # @!attribute [rw] error_message
406
+ # The textual error message.
407
+ # @return [String]
408
+ class FailedCreateWorkspaceRequest < Struct.new(
409
+ :workspace_request,
410
+ :error_code,
411
+ :error_message)
412
+ include Aws::Structure
413
+ end
414
+
415
+ # Contains information about a WorkSpace that could not be rebooted
416
+ # (RebootWorkspaces), rebuilt (RebuildWorkspaces), terminated
417
+ # (TerminateWorkspaces), started (StartWorkspaces), or stopped
418
+ # (StopWorkspaces).
419
+ # @!attribute [rw] workspace_id
420
+ # The identifier of the WorkSpace.
421
+ # @return [String]
422
+ #
423
+ # @!attribute [rw] error_code
424
+ # The error code.
425
+ # @return [String]
426
+ #
427
+ # @!attribute [rw] error_message
428
+ # The textual error message.
429
+ # @return [String]
430
+ class FailedWorkspaceChangeRequest < Struct.new(
431
+ :workspace_id,
432
+ :error_code,
433
+ :error_message)
434
+ include Aws::Structure
435
+ end
436
+
437
+ # @note When making an API call, pass ModifyWorkspacePropertiesRequest
438
+ # data as a hash:
439
+ #
440
+ # {
441
+ # workspace_id: "WorkspaceId", # required
442
+ # workspace_properties: { # required
443
+ # running_mode: "AUTO_STOP", # accepts AUTO_STOP, ALWAYS_ON
444
+ # running_mode_auto_stop_timeout_in_minutes: 1,
445
+ # },
446
+ # }
447
+ # @!attribute [rw] workspace_id
448
+ # The ID of the WorkSpace.
449
+ # @return [String]
450
+ #
451
+ # @!attribute [rw] workspace_properties
452
+ # The WorkSpace properties of the request.
453
+ # @return [Types::WorkspaceProperties]
454
+ class ModifyWorkspacePropertiesRequest < Struct.new(
455
+ :workspace_id,
456
+ :workspace_properties)
457
+ include Aws::Structure
458
+ end
459
+
460
+ class ModifyWorkspacePropertiesResult < Aws::EmptyStructure; end
461
+
462
+ # Contains information used with the RebootWorkspaces operation to
463
+ # reboot a WorkSpace.
464
+ # @note When making an API call, pass RebootRequest
465
+ # data as a hash:
466
+ #
467
+ # {
468
+ # workspace_id: "WorkspaceId", # required
469
+ # }
470
+ # @!attribute [rw] workspace_id
471
+ # The identifier of the WorkSpace to reboot.
472
+ # @return [String]
473
+ class RebootRequest < Struct.new(
474
+ :workspace_id)
475
+ include Aws::Structure
476
+ end
477
+
478
+ # Contains the inputs for the RebootWorkspaces operation.
479
+ # @note When making an API call, pass RebootWorkspacesRequest
480
+ # data as a hash:
481
+ #
482
+ # {
483
+ # reboot_workspace_requests: [ # required
484
+ # {
485
+ # workspace_id: "WorkspaceId", # required
486
+ # },
487
+ # ],
488
+ # }
489
+ # @!attribute [rw] reboot_workspace_requests
490
+ # An array of structures that specify the WorkSpaces to reboot.
491
+ # @return [Array<Types::RebootRequest>]
492
+ class RebootWorkspacesRequest < Struct.new(
493
+ :reboot_workspace_requests)
494
+ include Aws::Structure
495
+ end
496
+
497
+ # Contains the results of the RebootWorkspaces operation.
498
+ # @!attribute [rw] failed_requests
499
+ # An array of structures representing any WorkSpaces that could not be
500
+ # rebooted.
501
+ # @return [Array<Types::FailedWorkspaceChangeRequest>]
502
+ class RebootWorkspacesResult < Struct.new(
503
+ :failed_requests)
504
+ include Aws::Structure
505
+ end
506
+
507
+ # Contains information used with the RebuildWorkspaces operation to
508
+ # rebuild a WorkSpace.
509
+ # @note When making an API call, pass RebuildRequest
510
+ # data as a hash:
511
+ #
512
+ # {
513
+ # workspace_id: "WorkspaceId", # required
514
+ # }
515
+ # @!attribute [rw] workspace_id
516
+ # The identifier of the WorkSpace to rebuild.
517
+ # @return [String]
518
+ class RebuildRequest < Struct.new(
519
+ :workspace_id)
520
+ include Aws::Structure
521
+ end
522
+
523
+ # Contains the inputs for the RebuildWorkspaces operation.
524
+ # @note When making an API call, pass RebuildWorkspacesRequest
525
+ # data as a hash:
526
+ #
527
+ # {
528
+ # rebuild_workspace_requests: [ # required
529
+ # {
530
+ # workspace_id: "WorkspaceId", # required
531
+ # },
532
+ # ],
533
+ # }
534
+ # @!attribute [rw] rebuild_workspace_requests
535
+ # An array of structures that specify the WorkSpaces to rebuild.
536
+ # @return [Array<Types::RebuildRequest>]
537
+ class RebuildWorkspacesRequest < Struct.new(
538
+ :rebuild_workspace_requests)
539
+ include Aws::Structure
540
+ end
541
+
542
+ # Contains the results of the RebuildWorkspaces operation.
543
+ # @!attribute [rw] failed_requests
544
+ # An array of structures representing any WorkSpaces that could not be
545
+ # rebuilt.
546
+ # @return [Array<Types::FailedWorkspaceChangeRequest>]
547
+ class RebuildWorkspacesResult < Struct.new(
548
+ :failed_requests)
549
+ include Aws::Structure
550
+ end
551
+
552
+ # Describes the start request.
553
+ # @note When making an API call, pass StartRequest
554
+ # data as a hash:
555
+ #
556
+ # {
557
+ # workspace_id: "WorkspaceId",
558
+ # }
559
+ # @!attribute [rw] workspace_id
560
+ # The ID of the WorkSpace.
561
+ # @return [String]
562
+ class StartRequest < Struct.new(
563
+ :workspace_id)
564
+ include Aws::Structure
565
+ end
566
+
567
+ # @note When making an API call, pass StartWorkspacesRequest
568
+ # data as a hash:
569
+ #
570
+ # {
571
+ # start_workspace_requests: [ # required
572
+ # {
573
+ # workspace_id: "WorkspaceId",
574
+ # },
575
+ # ],
576
+ # }
577
+ # @!attribute [rw] start_workspace_requests
578
+ # The requests.
579
+ # @return [Array<Types::StartRequest>]
580
+ class StartWorkspacesRequest < Struct.new(
581
+ :start_workspace_requests)
582
+ include Aws::Structure
583
+ end
584
+
585
+ # @!attribute [rw] failed_requests
586
+ # The failed requests.
587
+ # @return [Array<Types::FailedWorkspaceChangeRequest>]
588
+ class StartWorkspacesResult < Struct.new(
589
+ :failed_requests)
590
+ include Aws::Structure
591
+ end
592
+
593
+ # Describes the stop request.
594
+ # @note When making an API call, pass StopRequest
595
+ # data as a hash:
596
+ #
597
+ # {
598
+ # workspace_id: "WorkspaceId",
599
+ # }
600
+ # @!attribute [rw] workspace_id
601
+ # The ID of the WorkSpace.
602
+ # @return [String]
603
+ class StopRequest < Struct.new(
604
+ :workspace_id)
605
+ include Aws::Structure
606
+ end
607
+
608
+ # @note When making an API call, pass StopWorkspacesRequest
609
+ # data as a hash:
610
+ #
611
+ # {
612
+ # stop_workspace_requests: [ # required
613
+ # {
614
+ # workspace_id: "WorkspaceId",
615
+ # },
616
+ # ],
617
+ # }
618
+ # @!attribute [rw] stop_workspace_requests
619
+ # The requests.
620
+ # @return [Array<Types::StopRequest>]
621
+ class StopWorkspacesRequest < Struct.new(
622
+ :stop_workspace_requests)
623
+ include Aws::Structure
624
+ end
625
+
626
+ # @!attribute [rw] failed_requests
627
+ # The failed requests.
628
+ # @return [Array<Types::FailedWorkspaceChangeRequest>]
629
+ class StopWorkspacesResult < Struct.new(
630
+ :failed_requests)
631
+ include Aws::Structure
632
+ end
633
+
634
+ # Describes the tag of the WorkSpace.
635
+ # @note When making an API call, pass Tag
636
+ # data as a hash:
637
+ #
638
+ # {
639
+ # key: "TagKey", # required
640
+ # value: "TagValue",
641
+ # }
642
+ # @!attribute [rw] key
643
+ # The key of the tag.
644
+ # @return [String]
645
+ #
646
+ # @!attribute [rw] value
647
+ # The value of the tag.
648
+ # @return [String]
649
+ class Tag < Struct.new(
650
+ :key,
651
+ :value)
652
+ include Aws::Structure
653
+ end
654
+
655
+ # Contains information used with the TerminateWorkspaces operation to
656
+ # terminate a WorkSpace.
657
+ # @note When making an API call, pass TerminateRequest
658
+ # data as a hash:
659
+ #
660
+ # {
661
+ # workspace_id: "WorkspaceId", # required
662
+ # }
663
+ # @!attribute [rw] workspace_id
664
+ # The identifier of the WorkSpace to terminate.
665
+ # @return [String]
666
+ class TerminateRequest < Struct.new(
667
+ :workspace_id)
668
+ include Aws::Structure
669
+ end
670
+
671
+ # Contains the inputs for the TerminateWorkspaces operation.
672
+ # @note When making an API call, pass TerminateWorkspacesRequest
673
+ # data as a hash:
674
+ #
675
+ # {
676
+ # terminate_workspace_requests: [ # required
677
+ # {
678
+ # workspace_id: "WorkspaceId", # required
679
+ # },
680
+ # ],
681
+ # }
682
+ # @!attribute [rw] terminate_workspace_requests
683
+ # An array of structures that specify the WorkSpaces to terminate.
684
+ # @return [Array<Types::TerminateRequest>]
685
+ class TerminateWorkspacesRequest < Struct.new(
686
+ :terminate_workspace_requests)
687
+ include Aws::Structure
688
+ end
689
+
690
+ # Contains the results of the TerminateWorkspaces operation.
691
+ # @!attribute [rw] failed_requests
692
+ # An array of structures representing any WorkSpaces that could not be
693
+ # terminated.
694
+ # @return [Array<Types::FailedWorkspaceChangeRequest>]
695
+ class TerminateWorkspacesResult < Struct.new(
696
+ :failed_requests)
697
+ include Aws::Structure
698
+ end
699
+
700
+ # Contains information about the user storage for a WorkSpace bundle.
701
+ # @!attribute [rw] capacity
702
+ # The amount of user storage for the bundle.
703
+ # @return [String]
704
+ class UserStorage < Struct.new(
705
+ :capacity)
706
+ include Aws::Structure
707
+ end
708
+
709
+ # Contains information about a WorkSpace.
710
+ # @!attribute [rw] workspace_id
711
+ # The identifier of the WorkSpace.
712
+ # @return [String]
713
+ #
714
+ # @!attribute [rw] directory_id
715
+ # The identifier of the AWS Directory Service directory that the
716
+ # WorkSpace belongs to.
717
+ # @return [String]
718
+ #
719
+ # @!attribute [rw] user_name
720
+ # The user that the WorkSpace is assigned to.
721
+ # @return [String]
722
+ #
723
+ # @!attribute [rw] ip_address
724
+ # The IP address of the WorkSpace.
725
+ # @return [String]
726
+ #
727
+ # @!attribute [rw] state
728
+ # The operational state of the WorkSpace.
729
+ # @return [String]
730
+ #
731
+ # @!attribute [rw] bundle_id
732
+ # The identifier of the bundle that the WorkSpace was created from.
733
+ # @return [String]
734
+ #
735
+ # @!attribute [rw] subnet_id
736
+ # The identifier of the subnet that the WorkSpace is in.
737
+ # @return [String]
738
+ #
739
+ # @!attribute [rw] error_message
740
+ # If the WorkSpace could not be created, this contains a textual error
741
+ # message that describes the failure.
742
+ # @return [String]
743
+ #
744
+ # @!attribute [rw] error_code
745
+ # If the WorkSpace could not be created, this contains the error code.
746
+ # @return [String]
747
+ #
748
+ # @!attribute [rw] computer_name
749
+ # The name of the WorkSpace as seen by the operating system.
750
+ # @return [String]
751
+ #
752
+ # @!attribute [rw] volume_encryption_key
753
+ # The KMS key used to encrypt data stored on your WorkSpace.
754
+ # @return [String]
755
+ #
756
+ # @!attribute [rw] user_volume_encryption_enabled
757
+ # Specifies whether the data stored on the user volume, or D: drive,
758
+ # is encrypted.
759
+ # @return [Boolean]
760
+ #
761
+ # @!attribute [rw] root_volume_encryption_enabled
762
+ # Specifies whether the data stored on the root volume, or C: drive,
763
+ # is encrypted.
764
+ # @return [Boolean]
765
+ #
766
+ # @!attribute [rw] workspace_properties
767
+ # Describes the properties of a WorkSpace.
768
+ # @return [Types::WorkspaceProperties]
769
+ class Workspace < Struct.new(
770
+ :workspace_id,
771
+ :directory_id,
772
+ :user_name,
773
+ :ip_address,
774
+ :state,
775
+ :bundle_id,
776
+ :subnet_id,
777
+ :error_message,
778
+ :error_code,
779
+ :computer_name,
780
+ :volume_encryption_key,
781
+ :user_volume_encryption_enabled,
782
+ :root_volume_encryption_enabled,
783
+ :workspace_properties)
784
+ include Aws::Structure
785
+ end
786
+
787
+ # Contains information about a WorkSpace bundle.
788
+ # @!attribute [rw] bundle_id
789
+ # The bundle identifier.
790
+ # @return [String]
791
+ #
792
+ # @!attribute [rw] name
793
+ # The name of the bundle.
794
+ # @return [String]
795
+ #
796
+ # @!attribute [rw] owner
797
+ # The owner of the bundle. This contains the owner's account
798
+ # identifier, or `AMAZON` if the bundle is provided by AWS.
799
+ # @return [String]
800
+ #
801
+ # @!attribute [rw] description
802
+ # The bundle description.
803
+ # @return [String]
804
+ #
805
+ # @!attribute [rw] user_storage
806
+ # A UserStorage object that specifies the amount of user storage that
807
+ # the bundle contains.
808
+ # @return [Types::UserStorage]
809
+ #
810
+ # @!attribute [rw] compute_type
811
+ # A ComputeType object that specifies the compute type for the bundle.
812
+ # @return [Types::ComputeType]
813
+ class WorkspaceBundle < Struct.new(
814
+ :bundle_id,
815
+ :name,
816
+ :owner,
817
+ :description,
818
+ :user_storage,
819
+ :compute_type)
820
+ include Aws::Structure
821
+ end
822
+
823
+ # Describes the connection status of a WorkSpace.
824
+ # @!attribute [rw] workspace_id
825
+ # The ID of the WorkSpace.
826
+ # @return [String]
827
+ #
828
+ # @!attribute [rw] connection_state
829
+ # The connection state of the WorkSpace. Returns UNKOWN if the
830
+ # WorkSpace is in a Stopped state.
831
+ # @return [String]
832
+ #
833
+ # @!attribute [rw] connection_state_check_timestamp
834
+ # The timestamp of the connection state check.
835
+ # @return [Time]
836
+ #
837
+ # @!attribute [rw] last_known_user_connection_timestamp
838
+ # The timestamp of the last known user connection.
839
+ # @return [Time]
840
+ class WorkspaceConnectionStatus < Struct.new(
841
+ :workspace_id,
842
+ :connection_state,
843
+ :connection_state_check_timestamp,
844
+ :last_known_user_connection_timestamp)
845
+ include Aws::Structure
846
+ end
847
+
848
+ # Contains information about an AWS Directory Service directory for use
849
+ # with Amazon WorkSpaces.
850
+ # @!attribute [rw] directory_id
851
+ # The directory identifier.
852
+ # @return [String]
853
+ #
854
+ # @!attribute [rw] alias
855
+ # The directory alias.
856
+ # @return [String]
857
+ #
858
+ # @!attribute [rw] directory_name
859
+ # The name of the directory.
860
+ # @return [String]
861
+ #
862
+ # @!attribute [rw] registration_code
863
+ # The registration code for the directory. This is the code that users
864
+ # enter in their Amazon WorkSpaces client application to connect to
865
+ # the directory.
866
+ # @return [String]
867
+ #
868
+ # @!attribute [rw] subnet_ids
869
+ # An array of strings that contains the identifiers of the subnets
870
+ # used with the directory.
871
+ # @return [Array<String>]
872
+ #
873
+ # @!attribute [rw] dns_ip_addresses
874
+ # An array of strings that contains the IP addresses of the DNS
875
+ # servers for the directory.
876
+ # @return [Array<String>]
877
+ #
878
+ # @!attribute [rw] customer_user_name
879
+ # The user name for the service account.
880
+ # @return [String]
881
+ #
882
+ # @!attribute [rw] iam_role_id
883
+ # The identifier of the IAM role. This is the role that allows Amazon
884
+ # WorkSpaces to make calls to other services, such as Amazon EC2, on
885
+ # your behalf.
886
+ # @return [String]
887
+ #
888
+ # @!attribute [rw] directory_type
889
+ # The directory type.
890
+ # @return [String]
891
+ #
892
+ # @!attribute [rw] workspace_security_group_id
893
+ # The identifier of the security group that is assigned to new
894
+ # WorkSpaces.
895
+ # @return [String]
896
+ #
897
+ # @!attribute [rw] state
898
+ # The state of the directory's registration with Amazon WorkSpaces
899
+ # @return [String]
900
+ #
901
+ # @!attribute [rw] workspace_creation_properties
902
+ # A structure that specifies the default creation properties for all
903
+ # WorkSpaces in the directory.
904
+ # @return [Types::DefaultWorkspaceCreationProperties]
905
+ class WorkspaceDirectory < Struct.new(
906
+ :directory_id,
907
+ :alias,
908
+ :directory_name,
909
+ :registration_code,
910
+ :subnet_ids,
911
+ :dns_ip_addresses,
912
+ :customer_user_name,
913
+ :iam_role_id,
914
+ :directory_type,
915
+ :workspace_security_group_id,
916
+ :state,
917
+ :workspace_creation_properties)
918
+ include Aws::Structure
919
+ end
920
+
921
+ # Describes the properties of a WorkSpace.
922
+ # @note When making an API call, pass WorkspaceProperties
923
+ # data as a hash:
924
+ #
925
+ # {
926
+ # running_mode: "AUTO_STOP", # accepts AUTO_STOP, ALWAYS_ON
927
+ # running_mode_auto_stop_timeout_in_minutes: 1,
928
+ # }
929
+ # @!attribute [rw] running_mode
930
+ # The running mode of the WorkSpace. AlwaysOn WorkSpaces are billed
931
+ # monthly. AutoStop WorkSpaces are billed by the hour and stopped when
932
+ # no longer being used in order to save on costs.
933
+ # @return [String]
934
+ #
935
+ # @!attribute [rw] running_mode_auto_stop_timeout_in_minutes
936
+ # The time after a user logs off when WorkSpaces are automatically
937
+ # stopped. Configured in 60 minute intervals.
938
+ # @return [Integer]
939
+ class WorkspaceProperties < Struct.new(
940
+ :running_mode,
941
+ :running_mode_auto_stop_timeout_in_minutes)
942
+ include Aws::Structure
943
+ end
944
+
945
+ # Contains information about a WorkSpace creation request.
946
+ # @note When making an API call, pass WorkspaceRequest
947
+ # data as a hash:
948
+ #
949
+ # {
950
+ # directory_id: "DirectoryId", # required
951
+ # user_name: "UserName", # required
952
+ # bundle_id: "BundleId", # required
953
+ # volume_encryption_key: "VolumeEncryptionKey",
954
+ # user_volume_encryption_enabled: false,
955
+ # root_volume_encryption_enabled: false,
956
+ # workspace_properties: {
957
+ # running_mode: "AUTO_STOP", # accepts AUTO_STOP, ALWAYS_ON
958
+ # running_mode_auto_stop_timeout_in_minutes: 1,
959
+ # },
960
+ # tags: [
961
+ # {
962
+ # key: "TagKey", # required
963
+ # value: "TagValue",
964
+ # },
965
+ # ],
966
+ # }
967
+ # @!attribute [rw] directory_id
968
+ # The identifier of the AWS Directory Service directory to create the
969
+ # WorkSpace in. You can use the DescribeWorkspaceDirectories operation
970
+ # to obtain a list of the directories that are available.
971
+ # @return [String]
972
+ #
973
+ # @!attribute [rw] user_name
974
+ # The username that the WorkSpace is assigned to. This username must
975
+ # exist in the AWS Directory Service directory specified by the
976
+ # `DirectoryId` member.
977
+ # @return [String]
978
+ #
979
+ # @!attribute [rw] bundle_id
980
+ # The identifier of the bundle to create the WorkSpace from. You can
981
+ # use the DescribeWorkspaceBundles operation to obtain a list of the
982
+ # bundles that are available.
983
+ # @return [String]
984
+ #
985
+ # @!attribute [rw] volume_encryption_key
986
+ # The KMS key used to encrypt data stored on your WorkSpace.
987
+ # @return [String]
988
+ #
989
+ # @!attribute [rw] user_volume_encryption_enabled
990
+ # Specifies whether the data stored on the user volume, or D: drive,
991
+ # is encrypted.
992
+ # @return [Boolean]
993
+ #
994
+ # @!attribute [rw] root_volume_encryption_enabled
995
+ # Specifies whether the data stored on the root volume, or C: drive,
996
+ # is encrypted.
997
+ # @return [Boolean]
998
+ #
999
+ # @!attribute [rw] workspace_properties
1000
+ # Describes the properties of a WorkSpace.
1001
+ # @return [Types::WorkspaceProperties]
1002
+ #
1003
+ # @!attribute [rw] tags
1004
+ # The tags of the WorkSpace request.
1005
+ # @return [Array<Types::Tag>]
1006
+ class WorkspaceRequest < Struct.new(
1007
+ :directory_id,
1008
+ :user_name,
1009
+ :bundle_id,
1010
+ :volume_encryption_key,
1011
+ :user_volume_encryption_enabled,
1012
+ :root_volume_encryption_enabled,
1013
+ :workspace_properties,
1014
+ :tags)
1015
+ include Aws::Structure
1016
+ end
1017
+
1018
+ end
1019
+ end
1020
+ end