aws-sdk-wickr 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,3751 @@
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::Wickr
11
+ module Types
12
+
13
+ # The request was invalid or malformed. This error occurs when the
14
+ # request parameters do not meet the API requirements, such as invalid
15
+ # field values, missing required parameters, or improperly formatted
16
+ # data.
17
+ #
18
+ # @!attribute [rw] message
19
+ # A detailed message explaining what was wrong with the request and
20
+ # how to correct it.
21
+ # @return [String]
22
+ #
23
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BadRequestError AWS API Documentation
24
+ #
25
+ class BadRequestError < Struct.new(
26
+ :message)
27
+ SENSITIVE = []
28
+ include Aws::Structure
29
+ end
30
+
31
+ # Represents a device where a user has logged into Wickr, containing
32
+ # information about the device's type, status, and login history.
33
+ #
34
+ # @!attribute [rw] app_id
35
+ # The unique application ID for the Wickr app on this device.
36
+ # @return [String]
37
+ #
38
+ # @!attribute [rw] created
39
+ # The timestamp when the device first appeared in the Wickr database.
40
+ # @return [String]
41
+ #
42
+ # @!attribute [rw] last_login
43
+ # The timestamp when the device last successfully logged into Wickr.
44
+ # This is also used to determine SSO idle time.
45
+ # @return [String]
46
+ #
47
+ # @!attribute [rw] status_text
48
+ # The current status of the device, either 'Active' or 'Reset'
49
+ # depending on whether the device is currently active or has been
50
+ # marked for reset.
51
+ # @return [String]
52
+ #
53
+ # @!attribute [rw] suspend
54
+ # Indicates whether the device is suspended.
55
+ # @return [Boolean]
56
+ #
57
+ # @!attribute [rw] type
58
+ # The operating system of the device (e.g., 'MacOSX', 'Windows',
59
+ # 'iOS', 'Android').
60
+ # @return [String]
61
+ #
62
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BasicDeviceObject AWS API Documentation
63
+ #
64
+ class BasicDeviceObject < Struct.new(
65
+ :app_id,
66
+ :created,
67
+ :last_login,
68
+ :status_text,
69
+ :suspend,
70
+ :type)
71
+ SENSITIVE = []
72
+ include Aws::Structure
73
+ end
74
+
75
+ # @!attribute [rw] network_id
76
+ # The ID of the Wickr network where users will be created.
77
+ # @return [String]
78
+ #
79
+ # @!attribute [rw] users
80
+ # A list of user objects containing the details for each user to be
81
+ # created, including username, name, security groups, and optional
82
+ # invite codes. Maximum 50 users per batch request.
83
+ # @return [Array<Types::BatchCreateUserRequestItem>]
84
+ #
85
+ # @!attribute [rw] client_token
86
+ # A unique identifier for this request to ensure idempotency. If you
87
+ # retry a request with the same client token, the service will return
88
+ # the same response without creating duplicate users.
89
+ #
90
+ # **A suitable default value is auto-generated.** You should normally
91
+ # not need to pass this option.
92
+ # @return [String]
93
+ #
94
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchCreateUserRequest AWS API Documentation
95
+ #
96
+ class BatchCreateUserRequest < Struct.new(
97
+ :network_id,
98
+ :users,
99
+ :client_token)
100
+ SENSITIVE = []
101
+ include Aws::Structure
102
+ end
103
+
104
+ # Contains the details for a single user to be created in a batch user
105
+ # creation request.
106
+ #
107
+ # <note markdown="1"> A user can only be assigned to a single security group. Attempting to
108
+ # add a user to multiple security groups is not supported and will
109
+ # result in an error.
110
+ #
111
+ # </note>
112
+ #
113
+ # <note markdown="1"> `codeValidation`, `inviteCode`, and `inviteCodeTtl` are restricted to
114
+ # networks under preview only.
115
+ #
116
+ # </note>
117
+ #
118
+ # @!attribute [rw] first_name
119
+ # The first name of the user.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] last_name
123
+ # The last name of the user.
124
+ # @return [String]
125
+ #
126
+ # @!attribute [rw] security_group_ids
127
+ # A list of security group IDs to which the user should be assigned.
128
+ # @return [Array<String>]
129
+ #
130
+ # @!attribute [rw] username
131
+ # The email address or username for the user. Must be unique within
132
+ # the network.
133
+ # @return [String]
134
+ #
135
+ # @!attribute [rw] invite_code
136
+ # A custom invite code for the user. If not provided, one will be
137
+ # generated automatically.
138
+ # @return [String]
139
+ #
140
+ # @!attribute [rw] invite_code_ttl
141
+ # The time-to-live for the invite code in days. After this period, the
142
+ # invite code will expire.
143
+ # @return [Integer]
144
+ #
145
+ # @!attribute [rw] code_validation
146
+ # Indicates whether the user can be verified through a custom invite
147
+ # code.
148
+ # @return [Boolean]
149
+ #
150
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchCreateUserRequestItem AWS API Documentation
151
+ #
152
+ class BatchCreateUserRequestItem < Struct.new(
153
+ :first_name,
154
+ :last_name,
155
+ :security_group_ids,
156
+ :username,
157
+ :invite_code,
158
+ :invite_code_ttl,
159
+ :code_validation)
160
+ SENSITIVE = [:first_name, :last_name]
161
+ include Aws::Structure
162
+ end
163
+
164
+ # @!attribute [rw] message
165
+ # A message indicating the overall result of the batch operation.
166
+ # @return [String]
167
+ #
168
+ # @!attribute [rw] successful
169
+ # A list of user objects that were successfully created, including
170
+ # their assigned user IDs and invite codes.
171
+ # @return [Array<Types::User>]
172
+ #
173
+ # @!attribute [rw] failed
174
+ # A list of user creation attempts that failed, including error
175
+ # details explaining why each user could not be created.
176
+ # @return [Array<Types::BatchUserErrorResponseItem>]
177
+ #
178
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchCreateUserResponse AWS API Documentation
179
+ #
180
+ class BatchCreateUserResponse < Struct.new(
181
+ :message,
182
+ :successful,
183
+ :failed)
184
+ SENSITIVE = []
185
+ include Aws::Structure
186
+ end
187
+
188
+ # @!attribute [rw] network_id
189
+ # The ID of the Wickr network from which users will be deleted.
190
+ # @return [String]
191
+ #
192
+ # @!attribute [rw] user_ids
193
+ # A list of user IDs identifying the users to be deleted from the
194
+ # network. Maximum 50 users per batch request.
195
+ # @return [Array<String>]
196
+ #
197
+ # @!attribute [rw] client_token
198
+ # A unique identifier for this request to ensure idempotency. If you
199
+ # retry a request with the same client token, the service will return
200
+ # the same response without attempting to delete users again.
201
+ #
202
+ # **A suitable default value is auto-generated.** You should normally
203
+ # not need to pass this option.
204
+ # @return [String]
205
+ #
206
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchDeleteUserRequest AWS API Documentation
207
+ #
208
+ class BatchDeleteUserRequest < Struct.new(
209
+ :network_id,
210
+ :user_ids,
211
+ :client_token)
212
+ SENSITIVE = []
213
+ include Aws::Structure
214
+ end
215
+
216
+ # @!attribute [rw] message
217
+ # A message indicating the overall result of the batch deletion
218
+ # operation.
219
+ # @return [String]
220
+ #
221
+ # @!attribute [rw] successful
222
+ # A list of user IDs that were successfully deleted from the network.
223
+ # @return [Array<Types::BatchUserSuccessResponseItem>]
224
+ #
225
+ # @!attribute [rw] failed
226
+ # A list of user deletion attempts that failed, including error
227
+ # details explaining why each user could not be deleted.
228
+ # @return [Array<Types::BatchUserErrorResponseItem>]
229
+ #
230
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchDeleteUserResponse AWS API Documentation
231
+ #
232
+ class BatchDeleteUserResponse < Struct.new(
233
+ :message,
234
+ :successful,
235
+ :failed)
236
+ SENSITIVE = []
237
+ include Aws::Structure
238
+ end
239
+
240
+ # Contains error information for a device operation that failed in a
241
+ # batch device request.
242
+ #
243
+ # @!attribute [rw] field
244
+ # The field that caused the error.
245
+ # @return [String]
246
+ #
247
+ # @!attribute [rw] reason
248
+ # A description of why the device operation failed.
249
+ # @return [String]
250
+ #
251
+ # @!attribute [rw] app_id
252
+ # The application ID of the device that failed to be processed.
253
+ # @return [String]
254
+ #
255
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchDeviceErrorResponseItem AWS API Documentation
256
+ #
257
+ class BatchDeviceErrorResponseItem < Struct.new(
258
+ :field,
259
+ :reason,
260
+ :app_id)
261
+ SENSITIVE = []
262
+ include Aws::Structure
263
+ end
264
+
265
+ # Contains information about a device that was successfully processed in
266
+ # a batch device operation.
267
+ #
268
+ # @!attribute [rw] app_id
269
+ # The application ID of the device that was successfully processed.
270
+ # @return [String]
271
+ #
272
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchDeviceSuccessResponseItem AWS API Documentation
273
+ #
274
+ class BatchDeviceSuccessResponseItem < Struct.new(
275
+ :app_id)
276
+ SENSITIVE = []
277
+ include Aws::Structure
278
+ end
279
+
280
+ # @!attribute [rw] network_id
281
+ # The ID of the Wickr network where the users will be looked up.
282
+ # @return [String]
283
+ #
284
+ # @!attribute [rw] unames
285
+ # A list of username hashes (unames) to look up. Each uname is a
286
+ # unique identifier for a user's username. Maximum 50 unames per
287
+ # batch request.
288
+ # @return [Array<String>]
289
+ #
290
+ # @!attribute [rw] client_token
291
+ # A unique identifier for this request to ensure idempotency.
292
+ #
293
+ # **A suitable default value is auto-generated.** You should normally
294
+ # not need to pass this option.
295
+ # @return [String]
296
+ #
297
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchLookupUserUnameRequest AWS API Documentation
298
+ #
299
+ class BatchLookupUserUnameRequest < Struct.new(
300
+ :network_id,
301
+ :unames,
302
+ :client_token)
303
+ SENSITIVE = []
304
+ include Aws::Structure
305
+ end
306
+
307
+ # @!attribute [rw] message
308
+ # A message indicating the overall result of the batch lookup
309
+ # operation.
310
+ # @return [String]
311
+ #
312
+ # @!attribute [rw] successful
313
+ # A list of successfully resolved username hashes with their
314
+ # corresponding email addresses.
315
+ # @return [Array<Types::BatchUnameSuccessResponseItem>]
316
+ #
317
+ # @!attribute [rw] failed
318
+ # A list of username hash lookup attempts that failed, including error
319
+ # details explaining why each lookup failed.
320
+ # @return [Array<Types::BatchUnameErrorResponseItem>]
321
+ #
322
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchLookupUserUnameResponse AWS API Documentation
323
+ #
324
+ class BatchLookupUserUnameResponse < Struct.new(
325
+ :message,
326
+ :successful,
327
+ :failed)
328
+ SENSITIVE = []
329
+ include Aws::Structure
330
+ end
331
+
332
+ # @!attribute [rw] network_id
333
+ # The ID of the Wickr network where users will be reinvited.
334
+ # @return [String]
335
+ #
336
+ # @!attribute [rw] user_ids
337
+ # A list of user IDs identifying the users to be reinvited to the
338
+ # network. Maximum 50 users per batch request.
339
+ # @return [Array<String>]
340
+ #
341
+ # @!attribute [rw] client_token
342
+ # A unique identifier for this request to ensure idempotency.
343
+ #
344
+ # **A suitable default value is auto-generated.** You should normally
345
+ # not need to pass this option.
346
+ # @return [String]
347
+ #
348
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchReinviteUserRequest AWS API Documentation
349
+ #
350
+ class BatchReinviteUserRequest < Struct.new(
351
+ :network_id,
352
+ :user_ids,
353
+ :client_token)
354
+ SENSITIVE = []
355
+ include Aws::Structure
356
+ end
357
+
358
+ # @!attribute [rw] message
359
+ # A message indicating the overall result of the batch reinvitation
360
+ # operation.
361
+ # @return [String]
362
+ #
363
+ # @!attribute [rw] successful
364
+ # A list of user IDs that were successfully reinvited.
365
+ # @return [Array<Types::BatchUserSuccessResponseItem>]
366
+ #
367
+ # @!attribute [rw] failed
368
+ # A list of reinvitation attempts that failed, including error details
369
+ # explaining why each user could not be reinvited.
370
+ # @return [Array<Types::BatchUserErrorResponseItem>]
371
+ #
372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchReinviteUserResponse AWS API Documentation
373
+ #
374
+ class BatchReinviteUserResponse < Struct.new(
375
+ :message,
376
+ :successful,
377
+ :failed)
378
+ SENSITIVE = []
379
+ include Aws::Structure
380
+ end
381
+
382
+ # @!attribute [rw] network_id
383
+ # The ID of the Wickr network containing the user whose devices will
384
+ # be reset.
385
+ # @return [String]
386
+ #
387
+ # @!attribute [rw] user_id
388
+ # The ID of the user whose devices will be reset.
389
+ # @return [String]
390
+ #
391
+ # @!attribute [rw] app_ids
392
+ # A list of application IDs identifying the specific devices to be
393
+ # reset for the user. Maximum 50 devices per batch request.
394
+ # @return [Array<String>]
395
+ #
396
+ # @!attribute [rw] client_token
397
+ # A unique identifier for this request to ensure idempotency.
398
+ #
399
+ # **A suitable default value is auto-generated.** You should normally
400
+ # not need to pass this option.
401
+ # @return [String]
402
+ #
403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchResetDevicesForUserRequest AWS API Documentation
404
+ #
405
+ class BatchResetDevicesForUserRequest < Struct.new(
406
+ :network_id,
407
+ :user_id,
408
+ :app_ids,
409
+ :client_token)
410
+ SENSITIVE = []
411
+ include Aws::Structure
412
+ end
413
+
414
+ # @!attribute [rw] message
415
+ # A message indicating the overall result of the batch device reset
416
+ # operation.
417
+ # @return [String]
418
+ #
419
+ # @!attribute [rw] successful
420
+ # A list of application IDs that were successfully reset.
421
+ # @return [Array<Types::BatchDeviceSuccessResponseItem>]
422
+ #
423
+ # @!attribute [rw] failed
424
+ # A list of device reset attempts that failed, including error details
425
+ # explaining why each device could not be reset.
426
+ # @return [Array<Types::BatchDeviceErrorResponseItem>]
427
+ #
428
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchResetDevicesForUserResponse AWS API Documentation
429
+ #
430
+ class BatchResetDevicesForUserResponse < Struct.new(
431
+ :message,
432
+ :successful,
433
+ :failed)
434
+ SENSITIVE = []
435
+ include Aws::Structure
436
+ end
437
+
438
+ # @!attribute [rw] network_id
439
+ # The ID of the Wickr network where users will be suspended or
440
+ # unsuspended.
441
+ # @return [String]
442
+ #
443
+ # @!attribute [rw] suspend
444
+ # A boolean value indicating whether to suspend (true) or unsuspend
445
+ # (false) the specified users.
446
+ # @return [Boolean]
447
+ #
448
+ # @!attribute [rw] user_ids
449
+ # A list of user IDs identifying the users whose suspend status will
450
+ # be toggled. Maximum 50 users per batch request.
451
+ # @return [Array<String>]
452
+ #
453
+ # @!attribute [rw] client_token
454
+ # A unique identifier for this request to ensure idempotency.
455
+ #
456
+ # **A suitable default value is auto-generated.** You should normally
457
+ # not need to pass this option.
458
+ # @return [String]
459
+ #
460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchToggleUserSuspendStatusRequest AWS API Documentation
461
+ #
462
+ class BatchToggleUserSuspendStatusRequest < Struct.new(
463
+ :network_id,
464
+ :suspend,
465
+ :user_ids,
466
+ :client_token)
467
+ SENSITIVE = []
468
+ include Aws::Structure
469
+ end
470
+
471
+ # @!attribute [rw] message
472
+ # A message indicating the overall result of the batch suspend status
473
+ # toggle operation.
474
+ # @return [String]
475
+ #
476
+ # @!attribute [rw] successful
477
+ # A list of user IDs whose suspend status was successfully toggled.
478
+ # @return [Array<Types::BatchUserSuccessResponseItem>]
479
+ #
480
+ # @!attribute [rw] failed
481
+ # A list of suspend status toggle attempts that failed, including
482
+ # error details explaining why each user's status could not be
483
+ # changed.
484
+ # @return [Array<Types::BatchUserErrorResponseItem>]
485
+ #
486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchToggleUserSuspendStatusResponse AWS API Documentation
487
+ #
488
+ class BatchToggleUserSuspendStatusResponse < Struct.new(
489
+ :message,
490
+ :successful,
491
+ :failed)
492
+ SENSITIVE = []
493
+ include Aws::Structure
494
+ end
495
+
496
+ # Contains error information for a username hash lookup that failed in a
497
+ # batch uname lookup request.
498
+ #
499
+ # @!attribute [rw] field
500
+ # The field that caused the error.
501
+ # @return [String]
502
+ #
503
+ # @!attribute [rw] reason
504
+ # A description of why the username hash lookup failed.
505
+ # @return [String]
506
+ #
507
+ # @!attribute [rw] uname
508
+ # The username hash that failed to be looked up.
509
+ # @return [String]
510
+ #
511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchUnameErrorResponseItem AWS API Documentation
512
+ #
513
+ class BatchUnameErrorResponseItem < Struct.new(
514
+ :field,
515
+ :reason,
516
+ :uname)
517
+ SENSITIVE = []
518
+ include Aws::Structure
519
+ end
520
+
521
+ # Contains information about a username hash that was successfully
522
+ # resolved in a batch uname lookup operation.
523
+ #
524
+ # @!attribute [rw] uname
525
+ # The username hash that was successfully resolved.
526
+ # @return [String]
527
+ #
528
+ # @!attribute [rw] username
529
+ # The email address or username corresponding to the username hash.
530
+ # @return [String]
531
+ #
532
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchUnameSuccessResponseItem AWS API Documentation
533
+ #
534
+ class BatchUnameSuccessResponseItem < Struct.new(
535
+ :uname,
536
+ :username)
537
+ SENSITIVE = []
538
+ include Aws::Structure
539
+ end
540
+
541
+ # Contains error information for a user operation that failed in a batch
542
+ # user request.
543
+ #
544
+ # @!attribute [rw] field
545
+ # The field that caused the error.
546
+ # @return [String]
547
+ #
548
+ # @!attribute [rw] reason
549
+ # A description of why the user operation failed.
550
+ # @return [String]
551
+ #
552
+ # @!attribute [rw] user_id
553
+ # The user ID associated with the failed operation.
554
+ # @return [String]
555
+ #
556
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchUserErrorResponseItem AWS API Documentation
557
+ #
558
+ class BatchUserErrorResponseItem < Struct.new(
559
+ :field,
560
+ :reason,
561
+ :user_id)
562
+ SENSITIVE = []
563
+ include Aws::Structure
564
+ end
565
+
566
+ # Contains information about a user that was successfully processed in a
567
+ # batch user operation.
568
+ #
569
+ # @!attribute [rw] user_id
570
+ # The user ID that was successfully processed.
571
+ # @return [String]
572
+ #
573
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BatchUserSuccessResponseItem AWS API Documentation
574
+ #
575
+ class BatchUserSuccessResponseItem < Struct.new(
576
+ :user_id)
577
+ SENSITIVE = []
578
+ include Aws::Structure
579
+ end
580
+
581
+ # Represents a guest user who has been blocked from accessing a Wickr
582
+ # network.
583
+ #
584
+ # @!attribute [rw] username
585
+ # The username of the blocked guest user.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] admin
589
+ # The username of the administrator who blocked this guest user.
590
+ # @return [String]
591
+ #
592
+ # @!attribute [rw] modified
593
+ # The timestamp when the guest user was blocked or last modified.
594
+ # @return [String]
595
+ #
596
+ # @!attribute [rw] username_hash
597
+ # The unique username hash identifier for the blocked guest user.
598
+ # @return [String]
599
+ #
600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/BlockedGuestUser AWS API Documentation
601
+ #
602
+ class BlockedGuestUser < Struct.new(
603
+ :username,
604
+ :admin,
605
+ :modified,
606
+ :username_hash)
607
+ SENSITIVE = []
608
+ include Aws::Structure
609
+ end
610
+
611
+ # Represents a bot account in a Wickr network with all its informational
612
+ # fields.
613
+ #
614
+ # @!attribute [rw] bot_id
615
+ # The unique identifier of the bot.
616
+ # @return [String]
617
+ #
618
+ # @!attribute [rw] display_name
619
+ # The display name of the bot that is visible to users.
620
+ # @return [String]
621
+ #
622
+ # @!attribute [rw] username
623
+ # The username of the bot.
624
+ # @return [String]
625
+ #
626
+ # @!attribute [rw] uname
627
+ # The unique username hash identifier for the bot.
628
+ # @return [String]
629
+ #
630
+ # @!attribute [rw] pubkey
631
+ # The public key of the bot used for encryption.
632
+ # @return [String]
633
+ #
634
+ # @!attribute [rw] status
635
+ # The current status of the bot (1 for pending, 2 for active).
636
+ # @return [Integer]
637
+ #
638
+ # @!attribute [rw] group_id
639
+ # The ID of the security group to which the bot belongs.
640
+ # @return [String]
641
+ #
642
+ # @!attribute [rw] has_challenge
643
+ # Indicates whether the bot has a password set.
644
+ # @return [Boolean]
645
+ #
646
+ # @!attribute [rw] suspended
647
+ # Indicates whether the bot is currently suspended.
648
+ # @return [Boolean]
649
+ #
650
+ # @!attribute [rw] last_login
651
+ # The timestamp of the bot's last login.
652
+ # @return [String]
653
+ #
654
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/Bot AWS API Documentation
655
+ #
656
+ class Bot < Struct.new(
657
+ :bot_id,
658
+ :display_name,
659
+ :username,
660
+ :uname,
661
+ :pubkey,
662
+ :status,
663
+ :group_id,
664
+ :has_challenge,
665
+ :suspended,
666
+ :last_login)
667
+ SENSITIVE = []
668
+ include Aws::Structure
669
+ end
670
+
671
+ # Defines the calling feature permissions and settings for users in a
672
+ # security group, controlling what types of calls users can initiate and
673
+ # participate in.
674
+ #
675
+ # @!attribute [rw] can_start_11_call
676
+ # Specifies whether users can start one-to-one calls.
677
+ # @return [Boolean]
678
+ #
679
+ # @!attribute [rw] can_video_call
680
+ # Specifies whether users can make video calls (as opposed to
681
+ # audio-only calls). Valid only when audio call(canStart11Call) is
682
+ # enabled.
683
+ # @return [Boolean]
684
+ #
685
+ # @!attribute [rw] force_tcp_call
686
+ # When enabled, forces all calls to use TCP protocol instead of UDP
687
+ # for network traversal.
688
+ # @return [Boolean]
689
+ #
690
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CallingSettings AWS API Documentation
691
+ #
692
+ class CallingSettings < Struct.new(
693
+ :can_start_11_call,
694
+ :can_video_call,
695
+ :force_tcp_call)
696
+ SENSITIVE = []
697
+ include Aws::Structure
698
+ end
699
+
700
+ # @!attribute [rw] network_id
701
+ # The ID of the Wickr network where the bot will be created.
702
+ # @return [String]
703
+ #
704
+ # @!attribute [rw] username
705
+ # The username for the bot. This must be unique within the network and
706
+ # follow the network's naming conventions.
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] display_name
710
+ # The display name for the bot that will be visible to users in the
711
+ # network.
712
+ # @return [String]
713
+ #
714
+ # @!attribute [rw] group_id
715
+ # The ID of the security group to which the bot will be assigned.
716
+ # @return [String]
717
+ #
718
+ # @!attribute [rw] challenge
719
+ # The password for the bot account.
720
+ # @return [String]
721
+ #
722
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateBotRequest AWS API Documentation
723
+ #
724
+ class CreateBotRequest < Struct.new(
725
+ :network_id,
726
+ :username,
727
+ :display_name,
728
+ :group_id,
729
+ :challenge)
730
+ SENSITIVE = [:challenge]
731
+ include Aws::Structure
732
+ end
733
+
734
+ # @!attribute [rw] message
735
+ # A message indicating the result of the bot creation operation.
736
+ # @return [String]
737
+ #
738
+ # @!attribute [rw] bot_id
739
+ # The unique identifier assigned to the newly created bot.
740
+ # @return [String]
741
+ #
742
+ # @!attribute [rw] network_id
743
+ # The ID of the network where the bot was created.
744
+ # @return [String]
745
+ #
746
+ # @!attribute [rw] username
747
+ # The username of the newly created bot.
748
+ # @return [String]
749
+ #
750
+ # @!attribute [rw] display_name
751
+ # The display name of the newly created bot.
752
+ # @return [String]
753
+ #
754
+ # @!attribute [rw] group_id
755
+ # The ID of the security group to which the bot was assigned.
756
+ # @return [String]
757
+ #
758
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateBotResponse AWS API Documentation
759
+ #
760
+ class CreateBotResponse < Struct.new(
761
+ :message,
762
+ :bot_id,
763
+ :network_id,
764
+ :username,
765
+ :display_name,
766
+ :group_id)
767
+ SENSITIVE = []
768
+ include Aws::Structure
769
+ end
770
+
771
+ # @!attribute [rw] network_id
772
+ # The ID of the Wickr network containing the data retention bot.
773
+ # @return [String]
774
+ #
775
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateDataRetentionBotChallengeRequest AWS API Documentation
776
+ #
777
+ class CreateDataRetentionBotChallengeRequest < Struct.new(
778
+ :network_id)
779
+ SENSITIVE = []
780
+ include Aws::Structure
781
+ end
782
+
783
+ # @!attribute [rw] challenge
784
+ # The newly generated challenge password for the data retention bot.
785
+ # @return [String]
786
+ #
787
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateDataRetentionBotChallengeResponse AWS API Documentation
788
+ #
789
+ class CreateDataRetentionBotChallengeResponse < Struct.new(
790
+ :challenge)
791
+ SENSITIVE = [:challenge]
792
+ include Aws::Structure
793
+ end
794
+
795
+ # @!attribute [rw] network_id
796
+ # The ID of the Wickr network where the data retention bot will be
797
+ # created.
798
+ # @return [String]
799
+ #
800
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateDataRetentionBotRequest AWS API Documentation
801
+ #
802
+ class CreateDataRetentionBotRequest < Struct.new(
803
+ :network_id)
804
+ SENSITIVE = []
805
+ include Aws::Structure
806
+ end
807
+
808
+ # @!attribute [rw] message
809
+ # A message indicating that the data retention bot was successfully
810
+ # provisioned.
811
+ # @return [String]
812
+ #
813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateDataRetentionBotResponse AWS API Documentation
814
+ #
815
+ class CreateDataRetentionBotResponse < Struct.new(
816
+ :message)
817
+ SENSITIVE = []
818
+ include Aws::Structure
819
+ end
820
+
821
+ # @!attribute [rw] network_name
822
+ # The name for the new network. Must be between 1 and 20 characters.
823
+ # @return [String]
824
+ #
825
+ # @!attribute [rw] access_level
826
+ # The access level for the network. Valid values are STANDARD or
827
+ # PREMIUM, which determine the features and capabilities available to
828
+ # network members.
829
+ # @return [String]
830
+ #
831
+ # @!attribute [rw] enable_premium_free_trial
832
+ # Specifies whether to enable a premium free trial for the network. It
833
+ # is optional and has a default value as false. When set to true, the
834
+ # network starts with premium features for a limited trial period.
835
+ # @return [Boolean]
836
+ #
837
+ # @!attribute [rw] encryption_key_arn
838
+ # The ARN of the Amazon Web Services KMS customer managed key to use
839
+ # for encrypting sensitive data in the network.
840
+ # @return [String]
841
+ #
842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateNetworkRequest AWS API Documentation
843
+ #
844
+ class CreateNetworkRequest < Struct.new(
845
+ :network_name,
846
+ :access_level,
847
+ :enable_premium_free_trial,
848
+ :encryption_key_arn)
849
+ SENSITIVE = []
850
+ include Aws::Structure
851
+ end
852
+
853
+ # @!attribute [rw] network_id
854
+ # The unique identifier assigned to the newly created network.
855
+ # @return [String]
856
+ #
857
+ # @!attribute [rw] network_name
858
+ # The name of the newly created network.
859
+ # @return [String]
860
+ #
861
+ # @!attribute [rw] encryption_key_arn
862
+ # The ARN of the KMS key being used to encrypt sensitive data in the
863
+ # network.
864
+ # @return [String]
865
+ #
866
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateNetworkResponse AWS API Documentation
867
+ #
868
+ class CreateNetworkResponse < Struct.new(
869
+ :network_id,
870
+ :network_name,
871
+ :encryption_key_arn)
872
+ SENSITIVE = []
873
+ include Aws::Structure
874
+ end
875
+
876
+ # @!attribute [rw] network_id
877
+ # The ID of the Wickr network where the security group will be
878
+ # created.
879
+ # @return [String]
880
+ #
881
+ # @!attribute [rw] name
882
+ # The name for the new security group.
883
+ # @return [String]
884
+ #
885
+ # @!attribute [rw] security_group_settings
886
+ # The configuration settings for the security group, including
887
+ # permissions, federation settings, and feature controls.
888
+ # @return [Types::SecurityGroupSettingsRequest]
889
+ #
890
+ # @!attribute [rw] client_token
891
+ # A unique identifier for this request to ensure idempotency.
892
+ #
893
+ # **A suitable default value is auto-generated.** You should normally
894
+ # not need to pass this option.
895
+ # @return [String]
896
+ #
897
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateSecurityGroupRequest AWS API Documentation
898
+ #
899
+ class CreateSecurityGroupRequest < Struct.new(
900
+ :network_id,
901
+ :name,
902
+ :security_group_settings,
903
+ :client_token)
904
+ SENSITIVE = []
905
+ include Aws::Structure
906
+ end
907
+
908
+ # @!attribute [rw] security_group
909
+ # The details of the newly created security group, including its ID,
910
+ # name, and settings.
911
+ # @return [Types::SecurityGroup]
912
+ #
913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/CreateSecurityGroupResponse AWS API Documentation
914
+ #
915
+ class CreateSecurityGroupResponse < Struct.new(
916
+ :security_group)
917
+ SENSITIVE = []
918
+ include Aws::Structure
919
+ end
920
+
921
+ # @!attribute [rw] network_id
922
+ # The ID of the Wickr network from which the bot will be deleted.
923
+ # @return [String]
924
+ #
925
+ # @!attribute [rw] bot_id
926
+ # The unique identifier of the bot to be deleted.
927
+ # @return [String]
928
+ #
929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteBotRequest AWS API Documentation
930
+ #
931
+ class DeleteBotRequest < Struct.new(
932
+ :network_id,
933
+ :bot_id)
934
+ SENSITIVE = []
935
+ include Aws::Structure
936
+ end
937
+
938
+ # @!attribute [rw] message
939
+ # A message indicating the result of the bot deletion operation.
940
+ # @return [String]
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteBotResponse AWS API Documentation
943
+ #
944
+ class DeleteBotResponse < Struct.new(
945
+ :message)
946
+ SENSITIVE = []
947
+ include Aws::Structure
948
+ end
949
+
950
+ # @!attribute [rw] network_id
951
+ # The ID of the Wickr network from which the data retention bot will
952
+ # be deleted.
953
+ # @return [String]
954
+ #
955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteDataRetentionBotRequest AWS API Documentation
956
+ #
957
+ class DeleteDataRetentionBotRequest < Struct.new(
958
+ :network_id)
959
+ SENSITIVE = []
960
+ include Aws::Structure
961
+ end
962
+
963
+ # @!attribute [rw] message
964
+ # A message indicating that the data retention bot and all associated
965
+ # data were successfully deleted.
966
+ # @return [String]
967
+ #
968
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteDataRetentionBotResponse AWS API Documentation
969
+ #
970
+ class DeleteDataRetentionBotResponse < Struct.new(
971
+ :message)
972
+ SENSITIVE = []
973
+ include Aws::Structure
974
+ end
975
+
976
+ # @!attribute [rw] network_id
977
+ # The ID of the Wickr network to delete.
978
+ # @return [String]
979
+ #
980
+ # @!attribute [rw] client_token
981
+ # A unique identifier for this request to ensure idempotency. If you
982
+ # retry a request with the same client token, the service will return
983
+ # the same response without attempting to delete the network again.
984
+ #
985
+ # **A suitable default value is auto-generated.** You should normally
986
+ # not need to pass this option.
987
+ # @return [String]
988
+ #
989
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteNetworkRequest AWS API Documentation
990
+ #
991
+ class DeleteNetworkRequest < Struct.new(
992
+ :network_id,
993
+ :client_token)
994
+ SENSITIVE = []
995
+ include Aws::Structure
996
+ end
997
+
998
+ # @!attribute [rw] message
999
+ # A message indicating that the network deletion has been initiated
1000
+ # successfully.
1001
+ # @return [String]
1002
+ #
1003
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteNetworkResponse AWS API Documentation
1004
+ #
1005
+ class DeleteNetworkResponse < Struct.new(
1006
+ :message)
1007
+ SENSITIVE = []
1008
+ include Aws::Structure
1009
+ end
1010
+
1011
+ # @!attribute [rw] network_id
1012
+ # The ID of the Wickr network from which the security group will be
1013
+ # deleted.
1014
+ # @return [String]
1015
+ #
1016
+ # @!attribute [rw] group_id
1017
+ # The unique identifier of the security group to delete.
1018
+ # @return [String]
1019
+ #
1020
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteSecurityGroupRequest AWS API Documentation
1021
+ #
1022
+ class DeleteSecurityGroupRequest < Struct.new(
1023
+ :network_id,
1024
+ :group_id)
1025
+ SENSITIVE = []
1026
+ include Aws::Structure
1027
+ end
1028
+
1029
+ # @!attribute [rw] message
1030
+ # A message indicating the result of the security group deletion
1031
+ # operation.
1032
+ # @return [String]
1033
+ #
1034
+ # @!attribute [rw] network_id
1035
+ # The ID of the network from which the security group was deleted.
1036
+ # @return [String]
1037
+ #
1038
+ # @!attribute [rw] group_id
1039
+ # The ID of the security group that was deleted.
1040
+ # @return [String]
1041
+ #
1042
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/DeleteSecurityGroupResponse AWS API Documentation
1043
+ #
1044
+ class DeleteSecurityGroupResponse < Struct.new(
1045
+ :message,
1046
+ :network_id,
1047
+ :group_id)
1048
+ SENSITIVE = []
1049
+ include Aws::Structure
1050
+ end
1051
+
1052
+ # Contains detailed error information explaining why an operation
1053
+ # failed, including which field caused the error and the reason for the
1054
+ # failure.
1055
+ #
1056
+ # @!attribute [rw] field
1057
+ # The name of the field that contains an error or warning.
1058
+ # @return [String]
1059
+ #
1060
+ # @!attribute [rw] reason
1061
+ # A detailed description of the error or warning.
1062
+ # @return [String]
1063
+ #
1064
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ErrorDetail AWS API Documentation
1065
+ #
1066
+ class ErrorDetail < Struct.new(
1067
+ :field,
1068
+ :reason)
1069
+ SENSITIVE = []
1070
+ include Aws::Structure
1071
+ end
1072
+
1073
+ # Access to the requested resource is forbidden. This error occurs when
1074
+ # the authenticated user does not have the necessary permissions to
1075
+ # perform the requested operation, even though they are authenticated.
1076
+ #
1077
+ # @!attribute [rw] message
1078
+ # A message explaining why access was denied and what permissions are
1079
+ # required.
1080
+ # @return [String]
1081
+ #
1082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ForbiddenError AWS API Documentation
1083
+ #
1084
+ class ForbiddenError < Struct.new(
1085
+ :message)
1086
+ SENSITIVE = []
1087
+ include Aws::Structure
1088
+ end
1089
+
1090
+ # @!attribute [rw] network_id
1091
+ # The ID of the Wickr network containing the bot.
1092
+ # @return [String]
1093
+ #
1094
+ # @!attribute [rw] bot_id
1095
+ # The unique identifier of the bot to retrieve.
1096
+ # @return [String]
1097
+ #
1098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetBotRequest AWS API Documentation
1099
+ #
1100
+ class GetBotRequest < Struct.new(
1101
+ :network_id,
1102
+ :bot_id)
1103
+ SENSITIVE = []
1104
+ include Aws::Structure
1105
+ end
1106
+
1107
+ # @!attribute [rw] bot_id
1108
+ # The unique identifier of the bot.
1109
+ # @return [String]
1110
+ #
1111
+ # @!attribute [rw] display_name
1112
+ # The display name of the bot that is visible to users.
1113
+ # @return [String]
1114
+ #
1115
+ # @!attribute [rw] username
1116
+ # The username of the bot.
1117
+ # @return [String]
1118
+ #
1119
+ # @!attribute [rw] uname
1120
+ # The unique username hash identifier for the bot.
1121
+ # @return [String]
1122
+ #
1123
+ # @!attribute [rw] pubkey
1124
+ # The public key of the bot used for encryption.
1125
+ # @return [String]
1126
+ #
1127
+ # @!attribute [rw] status
1128
+ # The current status of the bot (1 for pending, 2 for active).
1129
+ # @return [Integer]
1130
+ #
1131
+ # @!attribute [rw] group_id
1132
+ # The ID of the security group to which the bot belongs.
1133
+ # @return [String]
1134
+ #
1135
+ # @!attribute [rw] has_challenge
1136
+ # Indicates whether the bot has a password set.
1137
+ # @return [Boolean]
1138
+ #
1139
+ # @!attribute [rw] suspended
1140
+ # Indicates whether the bot is currently suspended.
1141
+ # @return [Boolean]
1142
+ #
1143
+ # @!attribute [rw] last_login
1144
+ # The timestamp of the bot's last login.
1145
+ # @return [String]
1146
+ #
1147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetBotResponse AWS API Documentation
1148
+ #
1149
+ class GetBotResponse < Struct.new(
1150
+ :bot_id,
1151
+ :display_name,
1152
+ :username,
1153
+ :uname,
1154
+ :pubkey,
1155
+ :status,
1156
+ :group_id,
1157
+ :has_challenge,
1158
+ :suspended,
1159
+ :last_login)
1160
+ SENSITIVE = []
1161
+ include Aws::Structure
1162
+ end
1163
+
1164
+ # @!attribute [rw] network_id
1165
+ # The ID of the Wickr network for which to retrieve bot counts.
1166
+ # @return [String]
1167
+ #
1168
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetBotsCountRequest AWS API Documentation
1169
+ #
1170
+ class GetBotsCountRequest < Struct.new(
1171
+ :network_id)
1172
+ SENSITIVE = []
1173
+ include Aws::Structure
1174
+ end
1175
+
1176
+ # @!attribute [rw] pending
1177
+ # The number of bots with pending status (invited but not yet
1178
+ # activated).
1179
+ # @return [Integer]
1180
+ #
1181
+ # @!attribute [rw] active
1182
+ # The number of bots with active status.
1183
+ # @return [Integer]
1184
+ #
1185
+ # @!attribute [rw] total
1186
+ # The total number of bots in the network (active and pending).
1187
+ # @return [Integer]
1188
+ #
1189
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetBotsCountResponse AWS API Documentation
1190
+ #
1191
+ class GetBotsCountResponse < Struct.new(
1192
+ :pending,
1193
+ :active,
1194
+ :total)
1195
+ SENSITIVE = []
1196
+ include Aws::Structure
1197
+ end
1198
+
1199
+ # @!attribute [rw] network_id
1200
+ # The ID of the Wickr network containing the data retention bot.
1201
+ # @return [String]
1202
+ #
1203
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetDataRetentionBotRequest AWS API Documentation
1204
+ #
1205
+ class GetDataRetentionBotRequest < Struct.new(
1206
+ :network_id)
1207
+ SENSITIVE = []
1208
+ include Aws::Structure
1209
+ end
1210
+
1211
+ # @!attribute [rw] bot_name
1212
+ # The name of the data retention bot.
1213
+ # @return [String]
1214
+ #
1215
+ # @!attribute [rw] bot_exists
1216
+ # Indicates whether a data retention bot exists in the network.
1217
+ # @return [Boolean]
1218
+ #
1219
+ # @!attribute [rw] is_bot_active
1220
+ # Indicates whether the data retention bot is active and operational.
1221
+ # @return [Boolean]
1222
+ #
1223
+ # @!attribute [rw] is_data_retention_bot_registered
1224
+ # Indicates whether the data retention bot has been registered with
1225
+ # the network.
1226
+ # @return [Boolean]
1227
+ #
1228
+ # @!attribute [rw] is_data_retention_service_enabled
1229
+ # Indicates whether the data retention service is enabled for the
1230
+ # network.
1231
+ # @return [Boolean]
1232
+ #
1233
+ # @!attribute [rw] is_pubkey_msg_acked
1234
+ # Indicates whether the public key message has been acknowledged by
1235
+ # the bot.
1236
+ # @return [Boolean]
1237
+ #
1238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetDataRetentionBotResponse AWS API Documentation
1239
+ #
1240
+ class GetDataRetentionBotResponse < Struct.new(
1241
+ :bot_name,
1242
+ :bot_exists,
1243
+ :is_bot_active,
1244
+ :is_data_retention_bot_registered,
1245
+ :is_data_retention_service_enabled,
1246
+ :is_pubkey_msg_acked)
1247
+ SENSITIVE = []
1248
+ include Aws::Structure
1249
+ end
1250
+
1251
+ # @!attribute [rw] network_id
1252
+ # The ID of the Wickr network for which to retrieve guest user
1253
+ # history.
1254
+ # @return [String]
1255
+ #
1256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetGuestUserHistoryCountRequest AWS API Documentation
1257
+ #
1258
+ class GetGuestUserHistoryCountRequest < Struct.new(
1259
+ :network_id)
1260
+ SENSITIVE = []
1261
+ include Aws::Structure
1262
+ end
1263
+
1264
+ # @!attribute [rw] history
1265
+ # A list of historical guest user counts, organized by month and
1266
+ # billing period.
1267
+ # @return [Array<Types::GuestUserHistoryCount>]
1268
+ #
1269
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetGuestUserHistoryCountResponse AWS API Documentation
1270
+ #
1271
+ class GetGuestUserHistoryCountResponse < Struct.new(
1272
+ :history)
1273
+ SENSITIVE = []
1274
+ include Aws::Structure
1275
+ end
1276
+
1277
+ # @!attribute [rw] network_id
1278
+ # The ID of the Wickr network to retrieve.
1279
+ # @return [String]
1280
+ #
1281
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetNetworkRequest AWS API Documentation
1282
+ #
1283
+ class GetNetworkRequest < Struct.new(
1284
+ :network_id)
1285
+ SENSITIVE = []
1286
+ include Aws::Structure
1287
+ end
1288
+
1289
+ # @!attribute [rw] network_id
1290
+ # The unique identifier of the network.
1291
+ # @return [String]
1292
+ #
1293
+ # @!attribute [rw] network_name
1294
+ # The name of the network.
1295
+ # @return [String]
1296
+ #
1297
+ # @!attribute [rw] access_level
1298
+ # The access level of the network (STANDARD or PREMIUM), which
1299
+ # determines available features and capabilities.
1300
+ # @return [String]
1301
+ #
1302
+ # @!attribute [rw] aws_account_id
1303
+ # The Amazon Web Services account ID that owns the network.
1304
+ # @return [String]
1305
+ #
1306
+ # @!attribute [rw] network_arn
1307
+ # The Amazon Resource Name (ARN) of the network.
1308
+ # @return [String]
1309
+ #
1310
+ # @!attribute [rw] standing
1311
+ # The current standing or status of the network.
1312
+ # @return [Integer]
1313
+ #
1314
+ # @!attribute [rw] free_trial_expiration
1315
+ # The expiration date and time for the network's free trial period,
1316
+ # if applicable.
1317
+ # @return [String]
1318
+ #
1319
+ # @!attribute [rw] migration_state
1320
+ # The SSO redirect URI migration state, managed by the SSO redirect
1321
+ # migration wizard. Values: 0 (not started), 1 (in progress), or 2
1322
+ # (completed).
1323
+ # @return [Integer]
1324
+ #
1325
+ # @!attribute [rw] encryption_key_arn
1326
+ # The ARN of the Amazon Web Services KMS customer managed key used for
1327
+ # encrypting sensitive data in the network.
1328
+ # @return [String]
1329
+ #
1330
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetNetworkResponse AWS API Documentation
1331
+ #
1332
+ class GetNetworkResponse < Struct.new(
1333
+ :network_id,
1334
+ :network_name,
1335
+ :access_level,
1336
+ :aws_account_id,
1337
+ :network_arn,
1338
+ :standing,
1339
+ :free_trial_expiration,
1340
+ :migration_state,
1341
+ :encryption_key_arn)
1342
+ SENSITIVE = []
1343
+ include Aws::Structure
1344
+ end
1345
+
1346
+ # @!attribute [rw] network_id
1347
+ # The ID of the Wickr network whose settings will be retrieved.
1348
+ # @return [String]
1349
+ #
1350
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetNetworkSettingsRequest AWS API Documentation
1351
+ #
1352
+ class GetNetworkSettingsRequest < Struct.new(
1353
+ :network_id)
1354
+ SENSITIVE = []
1355
+ include Aws::Structure
1356
+ end
1357
+
1358
+ # @!attribute [rw] settings
1359
+ # A list of network settings, where each setting includes a name,
1360
+ # value, and type.
1361
+ # @return [Array<Types::Setting>]
1362
+ #
1363
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetNetworkSettingsResponse AWS API Documentation
1364
+ #
1365
+ class GetNetworkSettingsResponse < Struct.new(
1366
+ :settings)
1367
+ SENSITIVE = []
1368
+ include Aws::Structure
1369
+ end
1370
+
1371
+ # @!attribute [rw] network_id
1372
+ # The ID of the Wickr network whose OIDC configuration will be
1373
+ # retrieved.
1374
+ # @return [String]
1375
+ #
1376
+ # @!attribute [rw] client_id
1377
+ # The OAuth client ID for retrieving access tokens (optional).
1378
+ # @return [String]
1379
+ #
1380
+ # @!attribute [rw] code
1381
+ # The authorization code for retrieving access tokens (optional).
1382
+ # @return [String]
1383
+ #
1384
+ # @!attribute [rw] grant_type
1385
+ # The OAuth grant type for retrieving access tokens (optional).
1386
+ # @return [String]
1387
+ #
1388
+ # @!attribute [rw] redirect_uri
1389
+ # The redirect URI for the OAuth flow (optional).
1390
+ # @return [String]
1391
+ #
1392
+ # @!attribute [rw] url
1393
+ # The URL for the OIDC provider (optional).
1394
+ # @return [String]
1395
+ #
1396
+ # @!attribute [rw] client_secret
1397
+ # The OAuth client secret for retrieving access tokens (optional).
1398
+ # @return [String]
1399
+ #
1400
+ # @!attribute [rw] code_verifier
1401
+ # The PKCE code verifier for enhanced security in the OAuth flow
1402
+ # (optional).
1403
+ # @return [String]
1404
+ #
1405
+ # @!attribute [rw] certificate
1406
+ # The CA certificate for secure communication with the OIDC provider
1407
+ # (optional).
1408
+ # @return [String]
1409
+ #
1410
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetOidcInfoRequest AWS API Documentation
1411
+ #
1412
+ class GetOidcInfoRequest < Struct.new(
1413
+ :network_id,
1414
+ :client_id,
1415
+ :code,
1416
+ :grant_type,
1417
+ :redirect_uri,
1418
+ :url,
1419
+ :client_secret,
1420
+ :code_verifier,
1421
+ :certificate)
1422
+ SENSITIVE = [:client_secret]
1423
+ include Aws::Structure
1424
+ end
1425
+
1426
+ # @!attribute [rw] openid_connect_info
1427
+ # The OpenID Connect configuration information for the network,
1428
+ # including issuer, client ID, scopes, and other SSO settings.
1429
+ # @return [Types::OidcConfigInfo]
1430
+ #
1431
+ # @!attribute [rw] token_info
1432
+ # OAuth token information including access token, refresh token, and
1433
+ # expiration details (only present if token parameters were provided
1434
+ # in the request).
1435
+ # @return [Types::OidcTokenInfo]
1436
+ #
1437
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetOidcInfoResponse AWS API Documentation
1438
+ #
1439
+ class GetOidcInfoResponse < Struct.new(
1440
+ :openid_connect_info,
1441
+ :token_info)
1442
+ SENSITIVE = []
1443
+ include Aws::Structure
1444
+ end
1445
+
1446
+ # @!attribute [rw] network_id
1447
+ # The ID of the Wickr network containing the security group.
1448
+ # @return [String]
1449
+ #
1450
+ # @!attribute [rw] group_id
1451
+ # The unique identifier of the security group to retrieve.
1452
+ # @return [String]
1453
+ #
1454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetSecurityGroupRequest AWS API Documentation
1455
+ #
1456
+ class GetSecurityGroupRequest < Struct.new(
1457
+ :network_id,
1458
+ :group_id)
1459
+ SENSITIVE = []
1460
+ include Aws::Structure
1461
+ end
1462
+
1463
+ # @!attribute [rw] security_group
1464
+ # The detailed information about the security group, including all its
1465
+ # settings and member counts.
1466
+ # @return [Types::SecurityGroup]
1467
+ #
1468
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetSecurityGroupResponse AWS API Documentation
1469
+ #
1470
+ class GetSecurityGroupResponse < Struct.new(
1471
+ :security_group)
1472
+ SENSITIVE = []
1473
+ include Aws::Structure
1474
+ end
1475
+
1476
+ # @!attribute [rw] network_id
1477
+ # The ID of the Wickr network containing the user.
1478
+ # @return [String]
1479
+ #
1480
+ # @!attribute [rw] user_id
1481
+ # The unique identifier of the user to retrieve.
1482
+ # @return [String]
1483
+ #
1484
+ # @!attribute [rw] start_time
1485
+ # The start time for filtering the user's last activity. Only
1486
+ # activity after this timestamp will be considered. Time is specified
1487
+ # in epoch seconds.
1488
+ # @return [Time]
1489
+ #
1490
+ # @!attribute [rw] end_time
1491
+ # The end time for filtering the user's last activity. Only activity
1492
+ # before this timestamp will be considered. Time is specified in epoch
1493
+ # seconds.
1494
+ # @return [Time]
1495
+ #
1496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetUserRequest AWS API Documentation
1497
+ #
1498
+ class GetUserRequest < Struct.new(
1499
+ :network_id,
1500
+ :user_id,
1501
+ :start_time,
1502
+ :end_time)
1503
+ SENSITIVE = []
1504
+ include Aws::Structure
1505
+ end
1506
+
1507
+ # @!attribute [rw] user_id
1508
+ # The unique identifier of the user.
1509
+ # @return [String]
1510
+ #
1511
+ # @!attribute [rw] first_name
1512
+ # The first name of the user.
1513
+ # @return [String]
1514
+ #
1515
+ # @!attribute [rw] last_name
1516
+ # The last name of the user.
1517
+ # @return [String]
1518
+ #
1519
+ # @!attribute [rw] username
1520
+ # The email address or username of the user.
1521
+ # @return [String]
1522
+ #
1523
+ # @!attribute [rw] is_admin
1524
+ # Indicates whether the user has administrator privileges in the
1525
+ # network.
1526
+ # @return [Boolean]
1527
+ #
1528
+ # @!attribute [rw] suspended
1529
+ # Indicates whether the user is currently suspended.
1530
+ # @return [Boolean]
1531
+ #
1532
+ # @!attribute [rw] status
1533
+ # The current status of the user (1 for pending, 2 for active).
1534
+ # @return [Integer]
1535
+ #
1536
+ # @!attribute [rw] last_activity
1537
+ # The timestamp of the user's last activity in the network, specified
1538
+ # in epoch seconds.
1539
+ # @return [Integer]
1540
+ #
1541
+ # @!attribute [rw] last_login
1542
+ # The timestamp of the user's last login to the network, specified in
1543
+ # epoch seconds.
1544
+ # @return [Integer]
1545
+ #
1546
+ # @!attribute [rw] security_group_ids
1547
+ # A list of security group IDs to which the user belongs.
1548
+ # @return [Array<String>]
1549
+ #
1550
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetUserResponse AWS API Documentation
1551
+ #
1552
+ class GetUserResponse < Struct.new(
1553
+ :user_id,
1554
+ :first_name,
1555
+ :last_name,
1556
+ :username,
1557
+ :is_admin,
1558
+ :suspended,
1559
+ :status,
1560
+ :last_activity,
1561
+ :last_login,
1562
+ :security_group_ids)
1563
+ SENSITIVE = [:first_name, :last_name]
1564
+ include Aws::Structure
1565
+ end
1566
+
1567
+ # @!attribute [rw] network_id
1568
+ # The ID of the Wickr network for which to retrieve user counts.
1569
+ # @return [String]
1570
+ #
1571
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetUsersCountRequest AWS API Documentation
1572
+ #
1573
+ class GetUsersCountRequest < Struct.new(
1574
+ :network_id)
1575
+ SENSITIVE = []
1576
+ include Aws::Structure
1577
+ end
1578
+
1579
+ # @!attribute [rw] pending
1580
+ # The number of users with pending status (invited but not yet
1581
+ # accepted).
1582
+ # @return [Integer]
1583
+ #
1584
+ # @!attribute [rw] active
1585
+ # The number of users with active status in the network.
1586
+ # @return [Integer]
1587
+ #
1588
+ # @!attribute [rw] rejected
1589
+ # The number of users who have rejected network invitations.
1590
+ # @return [Integer]
1591
+ #
1592
+ # @!attribute [rw] remaining
1593
+ # The number of additional users that can be added to the network
1594
+ # while maintaining premium free trial eligibility.
1595
+ # @return [Integer]
1596
+ #
1597
+ # @!attribute [rw] total
1598
+ # The total number of users in the network (active and pending
1599
+ # combined).
1600
+ # @return [Integer]
1601
+ #
1602
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GetUsersCountResponse AWS API Documentation
1603
+ #
1604
+ class GetUsersCountResponse < Struct.new(
1605
+ :pending,
1606
+ :active,
1607
+ :rejected,
1608
+ :remaining,
1609
+ :total)
1610
+ SENSITIVE = []
1611
+ include Aws::Structure
1612
+ end
1613
+
1614
+ # Represents a guest user who has accessed the network from a federated
1615
+ # Wickr network.
1616
+ #
1617
+ # @!attribute [rw] billing_period
1618
+ # The billing period when this guest user accessed the network (e.g.,
1619
+ # '2024-01').
1620
+ # @return [String]
1621
+ #
1622
+ # @!attribute [rw] username
1623
+ # The username of the guest user.
1624
+ # @return [String]
1625
+ #
1626
+ # @!attribute [rw] username_hash
1627
+ # The unique username hash identifier for the guest user.
1628
+ # @return [String]
1629
+ #
1630
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GuestUser AWS API Documentation
1631
+ #
1632
+ class GuestUser < Struct.new(
1633
+ :billing_period,
1634
+ :username,
1635
+ :username_hash)
1636
+ SENSITIVE = []
1637
+ include Aws::Structure
1638
+ end
1639
+
1640
+ # Contains the count of guest users for a specific billing period, used
1641
+ # for tracking historical guest user activity.
1642
+ #
1643
+ # @!attribute [rw] month
1644
+ # The month and billing period in YYYY\_MM format (e.g.,
1645
+ # '2024\_01').
1646
+ # @return [String]
1647
+ #
1648
+ # @!attribute [rw] count
1649
+ # The number of guest users who have communicated with your Wickr
1650
+ # network during this billing period.
1651
+ # @return [String]
1652
+ #
1653
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/GuestUserHistoryCount AWS API Documentation
1654
+ #
1655
+ class GuestUserHistoryCount < Struct.new(
1656
+ :month,
1657
+ :count)
1658
+ SENSITIVE = []
1659
+ include Aws::Structure
1660
+ end
1661
+
1662
+ # An unexpected error occurred on the server while processing the
1663
+ # request. This indicates a problem with the Wickr service itself rather
1664
+ # than with the request. If this error persists, contact Amazon Web
1665
+ # Services Support.
1666
+ #
1667
+ # @!attribute [rw] message
1668
+ # A message describing the internal server error that occurred.
1669
+ # @return [String]
1670
+ #
1671
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/InternalServerError AWS API Documentation
1672
+ #
1673
+ class InternalServerError < Struct.new(
1674
+ :message)
1675
+ SENSITIVE = []
1676
+ include Aws::Structure
1677
+ end
1678
+
1679
+ # @!attribute [rw] network_id
1680
+ # The ID of the Wickr network from which to list blocked guest users.
1681
+ # @return [String]
1682
+ #
1683
+ # @!attribute [rw] max_results
1684
+ # The maximum number of blocked guest users to return in a single
1685
+ # page. Valid range is 1-100. Default is 10.
1686
+ # @return [Integer]
1687
+ #
1688
+ # @!attribute [rw] sort_direction
1689
+ # The direction to sort results. Valid values are 'ASC' (ascending)
1690
+ # or 'DESC' (descending). Default is 'DESC'.
1691
+ # @return [String]
1692
+ #
1693
+ # @!attribute [rw] sort_fields
1694
+ # The field to sort blocked guest users by. Accepted values include
1695
+ # 'username', 'admin', and 'modified'.
1696
+ # @return [String]
1697
+ #
1698
+ # @!attribute [rw] username
1699
+ # Filter results to only include blocked guest users with usernames
1700
+ # matching this value.
1701
+ # @return [String]
1702
+ #
1703
+ # @!attribute [rw] admin
1704
+ # Filter results to only include blocked guest users that were blocked
1705
+ # by this administrator.
1706
+ # @return [String]
1707
+ #
1708
+ # @!attribute [rw] next_token
1709
+ # The token for retrieving the next page of results. This is returned
1710
+ # from a previous request when there are more results available.
1711
+ # @return [String]
1712
+ #
1713
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListBlockedGuestUsersRequest AWS API Documentation
1714
+ #
1715
+ class ListBlockedGuestUsersRequest < Struct.new(
1716
+ :network_id,
1717
+ :max_results,
1718
+ :sort_direction,
1719
+ :sort_fields,
1720
+ :username,
1721
+ :admin,
1722
+ :next_token)
1723
+ SENSITIVE = []
1724
+ include Aws::Structure
1725
+ end
1726
+
1727
+ # @!attribute [rw] next_token
1728
+ # The token to use for retrieving the next page of results. If this is
1729
+ # not present, there are no more results.
1730
+ # @return [String]
1731
+ #
1732
+ # @!attribute [rw] blocklist
1733
+ # A list of blocked guest user objects within the current page.
1734
+ # @return [Array<Types::BlockedGuestUser>]
1735
+ #
1736
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListBlockedGuestUsersResponse AWS API Documentation
1737
+ #
1738
+ class ListBlockedGuestUsersResponse < Struct.new(
1739
+ :next_token,
1740
+ :blocklist)
1741
+ SENSITIVE = []
1742
+ include Aws::Structure
1743
+ end
1744
+
1745
+ # @!attribute [rw] network_id
1746
+ # The ID of the Wickr network from which to list bots.
1747
+ # @return [String]
1748
+ #
1749
+ # @!attribute [rw] next_token
1750
+ # The token for retrieving the next page of results. This is returned
1751
+ # from a previous request when there are more results available.
1752
+ # @return [String]
1753
+ #
1754
+ # @!attribute [rw] max_results
1755
+ # The maximum number of bots to return in a single page. Valid range
1756
+ # is 1-100. Default is 10.
1757
+ # @return [Integer]
1758
+ #
1759
+ # @!attribute [rw] sort_fields
1760
+ # The fields to sort bots by. Multiple fields can be specified by
1761
+ # separating them with '+'. Accepted values include 'username',
1762
+ # 'firstName', 'displayName', 'status', and 'groupId'.
1763
+ # @return [String]
1764
+ #
1765
+ # @!attribute [rw] sort_direction
1766
+ # The direction to sort results. Valid values are 'ASC' (ascending)
1767
+ # or 'DESC' (descending). Default is 'DESC'.
1768
+ # @return [String]
1769
+ #
1770
+ # @!attribute [rw] display_name
1771
+ # Filter results to only include bots with display names matching this
1772
+ # value.
1773
+ # @return [String]
1774
+ #
1775
+ # @!attribute [rw] username
1776
+ # Filter results to only include bots with usernames matching this
1777
+ # value.
1778
+ # @return [String]
1779
+ #
1780
+ # @!attribute [rw] status
1781
+ # Filter results to only include bots with this status (1 for pending,
1782
+ # 2 for active).
1783
+ # @return [Integer]
1784
+ #
1785
+ # @!attribute [rw] group_id
1786
+ # Filter results to only include bots belonging to this security
1787
+ # group.
1788
+ # @return [String]
1789
+ #
1790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListBotsRequest AWS API Documentation
1791
+ #
1792
+ class ListBotsRequest < Struct.new(
1793
+ :network_id,
1794
+ :next_token,
1795
+ :max_results,
1796
+ :sort_fields,
1797
+ :sort_direction,
1798
+ :display_name,
1799
+ :username,
1800
+ :status,
1801
+ :group_id)
1802
+ SENSITIVE = []
1803
+ include Aws::Structure
1804
+ end
1805
+
1806
+ # @!attribute [rw] bots
1807
+ # A list of bot objects matching the specified filters and within the
1808
+ # current page.
1809
+ # @return [Array<Types::Bot>]
1810
+ #
1811
+ # @!attribute [rw] next_token
1812
+ # The token to use for retrieving the next page of results. If this is
1813
+ # not present, there are no more results.
1814
+ # @return [String]
1815
+ #
1816
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListBotsResponse AWS API Documentation
1817
+ #
1818
+ class ListBotsResponse < Struct.new(
1819
+ :bots,
1820
+ :next_token)
1821
+ SENSITIVE = []
1822
+ include Aws::Structure
1823
+ end
1824
+
1825
+ # @!attribute [rw] network_id
1826
+ # The ID of the Wickr network containing the user.
1827
+ # @return [String]
1828
+ #
1829
+ # @!attribute [rw] user_id
1830
+ # The unique identifier of the user whose devices will be listed.
1831
+ # @return [String]
1832
+ #
1833
+ # @!attribute [rw] next_token
1834
+ # The token for retrieving the next page of results. This is returned
1835
+ # from a previous request when there are more results available.
1836
+ # @return [String]
1837
+ #
1838
+ # @!attribute [rw] max_results
1839
+ # The maximum number of devices to return in a single page. Valid
1840
+ # range is 1-100. Default is 10.
1841
+ # @return [Integer]
1842
+ #
1843
+ # @!attribute [rw] sort_fields
1844
+ # The fields to sort devices by. Multiple fields can be specified by
1845
+ # separating them with '+'. Accepted values include 'lastlogin',
1846
+ # 'type', 'suspend', and 'created'.
1847
+ # @return [String]
1848
+ #
1849
+ # @!attribute [rw] sort_direction
1850
+ # The direction to sort results. Valid values are 'ASC' (ascending)
1851
+ # or 'DESC' (descending). Default is 'DESC'.
1852
+ # @return [String]
1853
+ #
1854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListDevicesForUserRequest AWS API Documentation
1855
+ #
1856
+ class ListDevicesForUserRequest < Struct.new(
1857
+ :network_id,
1858
+ :user_id,
1859
+ :next_token,
1860
+ :max_results,
1861
+ :sort_fields,
1862
+ :sort_direction)
1863
+ SENSITIVE = []
1864
+ include Aws::Structure
1865
+ end
1866
+
1867
+ # @!attribute [rw] next_token
1868
+ # The token to use for retrieving the next page of results. If this is
1869
+ # not present, there are no more results.
1870
+ # @return [String]
1871
+ #
1872
+ # @!attribute [rw] devices
1873
+ # A list of device objects associated with the user within the current
1874
+ # page.
1875
+ # @return [Array<Types::BasicDeviceObject>]
1876
+ #
1877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListDevicesForUserResponse AWS API Documentation
1878
+ #
1879
+ class ListDevicesForUserResponse < Struct.new(
1880
+ :next_token,
1881
+ :devices)
1882
+ SENSITIVE = []
1883
+ include Aws::Structure
1884
+ end
1885
+
1886
+ # @!attribute [rw] network_id
1887
+ # The ID of the Wickr network from which to list guest users.
1888
+ # @return [String]
1889
+ #
1890
+ # @!attribute [rw] max_results
1891
+ # The maximum number of guest users to return in a single page. Valid
1892
+ # range is 1-100. Default is 10.
1893
+ # @return [Integer]
1894
+ #
1895
+ # @!attribute [rw] sort_direction
1896
+ # The direction to sort results. Valid values are 'ASC' (ascending)
1897
+ # or 'DESC' (descending). Default is 'DESC'.
1898
+ # @return [String]
1899
+ #
1900
+ # @!attribute [rw] sort_fields
1901
+ # The field to sort guest users by. Accepted values include
1902
+ # 'username' and 'billingPeriod'.
1903
+ # @return [String]
1904
+ #
1905
+ # @!attribute [rw] username
1906
+ # Filter results to only include guest users with usernames matching
1907
+ # this value.
1908
+ # @return [String]
1909
+ #
1910
+ # @!attribute [rw] billing_period
1911
+ # Filter results to only include guest users from this billing period
1912
+ # (e.g., '2024-01').
1913
+ # @return [String]
1914
+ #
1915
+ # @!attribute [rw] next_token
1916
+ # The token for retrieving the next page of results. This is returned
1917
+ # from a previous request when there are more results available.
1918
+ # @return [String]
1919
+ #
1920
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListGuestUsersRequest AWS API Documentation
1921
+ #
1922
+ class ListGuestUsersRequest < Struct.new(
1923
+ :network_id,
1924
+ :max_results,
1925
+ :sort_direction,
1926
+ :sort_fields,
1927
+ :username,
1928
+ :billing_period,
1929
+ :next_token)
1930
+ SENSITIVE = []
1931
+ include Aws::Structure
1932
+ end
1933
+
1934
+ # @!attribute [rw] next_token
1935
+ # The token to use for retrieving the next page of results. If this is
1936
+ # not present, there are no more results.
1937
+ # @return [String]
1938
+ #
1939
+ # @!attribute [rw] guestlist
1940
+ # A list of guest user objects within the current page.
1941
+ # @return [Array<Types::GuestUser>]
1942
+ #
1943
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListGuestUsersResponse AWS API Documentation
1944
+ #
1945
+ class ListGuestUsersResponse < Struct.new(
1946
+ :next_token,
1947
+ :guestlist)
1948
+ SENSITIVE = []
1949
+ include Aws::Structure
1950
+ end
1951
+
1952
+ # @!attribute [rw] max_results
1953
+ # The maximum number of networks to return in a single page. Valid
1954
+ # range is 1-100. Default is 10.
1955
+ # @return [Integer]
1956
+ #
1957
+ # @!attribute [rw] sort_fields
1958
+ # The field to sort networks by. Accepted values are 'networkId' and
1959
+ # 'networkName'. Default is 'networkId'.
1960
+ # @return [String]
1961
+ #
1962
+ # @!attribute [rw] sort_direction
1963
+ # The direction to sort results. Valid values are 'ASC' (ascending)
1964
+ # or 'DESC' (descending). Default is 'DESC'.
1965
+ # @return [String]
1966
+ #
1967
+ # @!attribute [rw] next_token
1968
+ # The token for retrieving the next page of results. This is returned
1969
+ # from a previous request when there are more results available.
1970
+ # @return [String]
1971
+ #
1972
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListNetworksRequest AWS API Documentation
1973
+ #
1974
+ class ListNetworksRequest < Struct.new(
1975
+ :max_results,
1976
+ :sort_fields,
1977
+ :sort_direction,
1978
+ :next_token)
1979
+ SENSITIVE = []
1980
+ include Aws::Structure
1981
+ end
1982
+
1983
+ # @!attribute [rw] networks
1984
+ # A list of network objects for the Amazon Web Services account.
1985
+ # @return [Array<Types::Network>]
1986
+ #
1987
+ # @!attribute [rw] next_token
1988
+ # The token to use for retrieving the next page of results. If this is
1989
+ # not present, there are no more results.
1990
+ # @return [String]
1991
+ #
1992
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListNetworksResponse AWS API Documentation
1993
+ #
1994
+ class ListNetworksResponse < Struct.new(
1995
+ :networks,
1996
+ :next_token)
1997
+ SENSITIVE = []
1998
+ include Aws::Structure
1999
+ end
2000
+
2001
+ # @!attribute [rw] network_id
2002
+ # The ID of the Wickr network containing the security group.
2003
+ # @return [String]
2004
+ #
2005
+ # @!attribute [rw] group_id
2006
+ # The unique identifier of the security group whose users will be
2007
+ # listed.
2008
+ # @return [String]
2009
+ #
2010
+ # @!attribute [rw] next_token
2011
+ # The token for retrieving the next page of results. This is returned
2012
+ # from a previous request when there are more results available.
2013
+ # @return [String]
2014
+ #
2015
+ # @!attribute [rw] max_results
2016
+ # The maximum number of users to return in a single page. Valid range
2017
+ # is 1-100. Default is 10.
2018
+ # @return [Integer]
2019
+ #
2020
+ # @!attribute [rw] sort_fields
2021
+ # The field to sort users by. Multiple fields can be specified by
2022
+ # separating them with '+'. Accepted values include 'username',
2023
+ # 'firstName', and 'lastName'.
2024
+ # @return [String]
2025
+ #
2026
+ # @!attribute [rw] sort_direction
2027
+ # The direction to sort results. Valid values are 'ASC' (ascending)
2028
+ # or 'DESC' (descending). Default is 'DESC'.
2029
+ # @return [String]
2030
+ #
2031
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListSecurityGroupUsersRequest AWS API Documentation
2032
+ #
2033
+ class ListSecurityGroupUsersRequest < Struct.new(
2034
+ :network_id,
2035
+ :group_id,
2036
+ :next_token,
2037
+ :max_results,
2038
+ :sort_fields,
2039
+ :sort_direction)
2040
+ SENSITIVE = []
2041
+ include Aws::Structure
2042
+ end
2043
+
2044
+ # @!attribute [rw] users
2045
+ # A list of user objects belonging to the security group within the
2046
+ # current page.
2047
+ # @return [Array<Types::User>]
2048
+ #
2049
+ # @!attribute [rw] next_token
2050
+ # The token to use for retrieving the next page of results. If this is
2051
+ # not present, there are no more results.
2052
+ # @return [String]
2053
+ #
2054
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListSecurityGroupUsersResponse AWS API Documentation
2055
+ #
2056
+ class ListSecurityGroupUsersResponse < Struct.new(
2057
+ :users,
2058
+ :next_token)
2059
+ SENSITIVE = []
2060
+ include Aws::Structure
2061
+ end
2062
+
2063
+ # @!attribute [rw] network_id
2064
+ # The ID of the Wickr network from which to list security groups.
2065
+ # @return [String]
2066
+ #
2067
+ # @!attribute [rw] next_token
2068
+ # The token for retrieving the next page of results. This is returned
2069
+ # from a previous request when there are more results available.
2070
+ # @return [String]
2071
+ #
2072
+ # @!attribute [rw] max_results
2073
+ # The maximum number of security groups to return in a single page.
2074
+ # Valid range is 1-100. Default is 10.
2075
+ # @return [Integer]
2076
+ #
2077
+ # @!attribute [rw] sort_fields
2078
+ # The field to sort security groups by. Accepted values include 'id'
2079
+ # and 'name'.
2080
+ # @return [String]
2081
+ #
2082
+ # @!attribute [rw] sort_direction
2083
+ # The direction to sort results. Valid values are 'ASC' (ascending)
2084
+ # or 'DESC' (descending). Default is 'DESC'.
2085
+ # @return [String]
2086
+ #
2087
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListSecurityGroupsRequest AWS API Documentation
2088
+ #
2089
+ class ListSecurityGroupsRequest < Struct.new(
2090
+ :network_id,
2091
+ :next_token,
2092
+ :max_results,
2093
+ :sort_fields,
2094
+ :sort_direction)
2095
+ SENSITIVE = []
2096
+ include Aws::Structure
2097
+ end
2098
+
2099
+ # @!attribute [rw] security_groups
2100
+ # A list of security group objects in the current page.
2101
+ # @return [Array<Types::SecurityGroup>]
2102
+ #
2103
+ # @!attribute [rw] next_token
2104
+ # The token to use for retrieving the next page of results. If this is
2105
+ # not present, there are no more results.
2106
+ # @return [String]
2107
+ #
2108
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListSecurityGroupsResponse AWS API Documentation
2109
+ #
2110
+ class ListSecurityGroupsResponse < Struct.new(
2111
+ :security_groups,
2112
+ :next_token)
2113
+ SENSITIVE = []
2114
+ include Aws::Structure
2115
+ end
2116
+
2117
+ # @!attribute [rw] network_id
2118
+ # The ID of the Wickr network from which to list users.
2119
+ # @return [String]
2120
+ #
2121
+ # @!attribute [rw] next_token
2122
+ # The token for retrieving the next page of results. This is returned
2123
+ # from a previous request when there are more results available.
2124
+ # @return [String]
2125
+ #
2126
+ # @!attribute [rw] max_results
2127
+ # The maximum number of users to return in a single page. Valid range
2128
+ # is 1-100. Default is 10.
2129
+ # @return [Integer]
2130
+ #
2131
+ # @!attribute [rw] sort_fields
2132
+ # The fields to sort users by. Multiple fields can be specified by
2133
+ # separating them with '+'. Accepted values include 'username',
2134
+ # 'firstName', 'lastName', 'status', and 'groupId'.
2135
+ # @return [String]
2136
+ #
2137
+ # @!attribute [rw] sort_direction
2138
+ # The direction to sort results. Valid values are 'ASC' (ascending)
2139
+ # or 'DESC' (descending). Default is 'DESC'.
2140
+ # @return [String]
2141
+ #
2142
+ # @!attribute [rw] first_name
2143
+ # Filter results to only include users with first names matching this
2144
+ # value.
2145
+ # @return [String]
2146
+ #
2147
+ # @!attribute [rw] last_name
2148
+ # Filter results to only include users with last names matching this
2149
+ # value.
2150
+ # @return [String]
2151
+ #
2152
+ # @!attribute [rw] username
2153
+ # Filter results to only include users with usernames matching this
2154
+ # value.
2155
+ # @return [String]
2156
+ #
2157
+ # @!attribute [rw] status
2158
+ # Filter results to only include users with this status (1 for
2159
+ # pending, 2 for active).
2160
+ # @return [Integer]
2161
+ #
2162
+ # @!attribute [rw] group_id
2163
+ # Filter results to only include users belonging to this security
2164
+ # group.
2165
+ # @return [String]
2166
+ #
2167
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListUsersRequest AWS API Documentation
2168
+ #
2169
+ class ListUsersRequest < Struct.new(
2170
+ :network_id,
2171
+ :next_token,
2172
+ :max_results,
2173
+ :sort_fields,
2174
+ :sort_direction,
2175
+ :first_name,
2176
+ :last_name,
2177
+ :username,
2178
+ :status,
2179
+ :group_id)
2180
+ SENSITIVE = [:first_name, :last_name]
2181
+ include Aws::Structure
2182
+ end
2183
+
2184
+ # @!attribute [rw] next_token
2185
+ # The token to use for retrieving the next page of results. If this is
2186
+ # not present, there are no more results.
2187
+ # @return [String]
2188
+ #
2189
+ # @!attribute [rw] users
2190
+ # A list of user objects matching the specified filters and within the
2191
+ # current page.
2192
+ # @return [Array<Types::User>]
2193
+ #
2194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ListUsersResponse AWS API Documentation
2195
+ #
2196
+ class ListUsersResponse < Struct.new(
2197
+ :next_token,
2198
+ :users)
2199
+ SENSITIVE = []
2200
+ include Aws::Structure
2201
+ end
2202
+
2203
+ # Represents a Wickr network with all its configuration and status
2204
+ # information.
2205
+ #
2206
+ # @!attribute [rw] network_id
2207
+ # The unique identifier of the network.
2208
+ # @return [String]
2209
+ #
2210
+ # @!attribute [rw] network_name
2211
+ # The name of the network.
2212
+ # @return [String]
2213
+ #
2214
+ # @!attribute [rw] access_level
2215
+ # The access level of the network (STANDARD or PREMIUM), which
2216
+ # determines available features and capabilities.
2217
+ # @return [String]
2218
+ #
2219
+ # @!attribute [rw] aws_account_id
2220
+ # The Amazon Web Services account ID that owns the network.
2221
+ # @return [String]
2222
+ #
2223
+ # @!attribute [rw] network_arn
2224
+ # The Amazon Resource Name (ARN) of the network.
2225
+ # @return [String]
2226
+ #
2227
+ # @!attribute [rw] standing
2228
+ # The current standing or status of the network.
2229
+ # @return [Integer]
2230
+ #
2231
+ # @!attribute [rw] free_trial_expiration
2232
+ # The expiration date and time for the network's free trial period,
2233
+ # if applicable.
2234
+ # @return [String]
2235
+ #
2236
+ # @!attribute [rw] migration_state
2237
+ # The SSO redirect URI migration state, managed by the SSO redirect
2238
+ # migration wizard. Values: 0 (not started), 1 (in progress), or 2
2239
+ # (completed).
2240
+ # @return [Integer]
2241
+ #
2242
+ # @!attribute [rw] encryption_key_arn
2243
+ # The ARN of the Amazon Web Services KMS customer managed key used for
2244
+ # encrypting sensitive data in the network.
2245
+ # @return [String]
2246
+ #
2247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/Network AWS API Documentation
2248
+ #
2249
+ class Network < Struct.new(
2250
+ :network_id,
2251
+ :network_name,
2252
+ :access_level,
2253
+ :aws_account_id,
2254
+ :network_arn,
2255
+ :standing,
2256
+ :free_trial_expiration,
2257
+ :migration_state,
2258
+ :encryption_key_arn)
2259
+ SENSITIVE = []
2260
+ include Aws::Structure
2261
+ end
2262
+
2263
+ # Contains network-level configuration settings that apply to all users
2264
+ # and security groups within a Wickr network.
2265
+ #
2266
+ # @!attribute [rw] enable_client_metrics
2267
+ # Allows Wickr clients to send anonymized performance and usage
2268
+ # metrics to the Wickr backend server for service improvement and
2269
+ # troubleshooting.
2270
+ # @return [Boolean]
2271
+ #
2272
+ # @!attribute [rw] read_receipt_config
2273
+ # Configuration for read receipts at the network level, controlling
2274
+ # the default behavior for whether senders can see when their messages
2275
+ # have been read.
2276
+ # @return [Types::ReadReceiptConfig]
2277
+ #
2278
+ # @!attribute [rw] data_retention
2279
+ # Indicates whether the data retention feature is enabled for the
2280
+ # network. When true, messages are captured by the data retention bot
2281
+ # for compliance and archiving purposes.
2282
+ # @return [Boolean]
2283
+ #
2284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/NetworkSettings AWS API Documentation
2285
+ #
2286
+ class NetworkSettings < Struct.new(
2287
+ :enable_client_metrics,
2288
+ :read_receipt_config,
2289
+ :data_retention)
2290
+ SENSITIVE = []
2291
+ include Aws::Structure
2292
+ end
2293
+
2294
+ # Contains the OpenID Connect (OIDC) configuration information for
2295
+ # Single Sign-On (SSO) authentication, including identity provider
2296
+ # settings and client credentials.
2297
+ #
2298
+ # @!attribute [rw] application_name
2299
+ # The name of the OIDC application as registered with the identity
2300
+ # provider.
2301
+ # @return [String]
2302
+ #
2303
+ # @!attribute [rw] client_id
2304
+ # The OAuth client ID assigned by the identity provider for
2305
+ # authentication requests.
2306
+ # @return [String]
2307
+ #
2308
+ # @!attribute [rw] company_id
2309
+ # Custom identifier your end users will use to sign in with SSO.
2310
+ # @return [String]
2311
+ #
2312
+ # @!attribute [rw] scopes
2313
+ # The OAuth scopes requested from the identity provider, which
2314
+ # determine what user information is accessible (e.g., 'openid
2315
+ # profile email').
2316
+ # @return [String]
2317
+ #
2318
+ # @!attribute [rw] issuer
2319
+ # The issuer URL of the identity provider, which serves as the base
2320
+ # URL for OIDC endpoints and configuration discovery.
2321
+ # @return [String]
2322
+ #
2323
+ # @!attribute [rw] client_secret
2324
+ # The OAuth client secret used to authenticate the application with
2325
+ # the identity provider.
2326
+ # @return [String]
2327
+ #
2328
+ # @!attribute [rw] secret
2329
+ # An additional secret credential used by the identity provider for
2330
+ # authentication.
2331
+ # @return [String]
2332
+ #
2333
+ # @!attribute [rw] redirect_url
2334
+ # The callback URL where the identity provider redirects users after
2335
+ # successful authentication. This URL must be registered with the
2336
+ # identity provider.
2337
+ # @return [String]
2338
+ #
2339
+ # @!attribute [rw] user_id
2340
+ # The claim field from the OIDC token to use as the unique user
2341
+ # identifier (e.g., 'email', 'sub', or a custom claim).
2342
+ # @return [String]
2343
+ #
2344
+ # @!attribute [rw] custom_username
2345
+ # A custom field mapping to extract the username from the OIDC token
2346
+ # when the standard username claim is insufficient.
2347
+ # @return [String]
2348
+ #
2349
+ # @!attribute [rw] ca_certificate
2350
+ # The X.509 CA certificate for validating SSL/TLS connections to the
2351
+ # identity provider when using self-signed or enterprise certificates.
2352
+ # @return [String]
2353
+ #
2354
+ # @!attribute [rw] application_id
2355
+ # The unique identifier for the registered OIDC application. Valid
2356
+ # range is 1-10.
2357
+ # @return [Integer]
2358
+ #
2359
+ # @!attribute [rw] sso_token_buffer_minutes
2360
+ # The grace period in minutes before the SSO token expires when the
2361
+ # system should proactively refresh the token to maintain seamless
2362
+ # user access.
2363
+ # @return [Integer]
2364
+ #
2365
+ # @!attribute [rw] extra_auth_params
2366
+ # Additional authentication parameters to include in the OIDC
2367
+ # authorization request as a query string. Useful for
2368
+ # provider-specific extensions.
2369
+ # @return [String]
2370
+ #
2371
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/OidcConfigInfo AWS API Documentation
2372
+ #
2373
+ class OidcConfigInfo < Struct.new(
2374
+ :application_name,
2375
+ :client_id,
2376
+ :company_id,
2377
+ :scopes,
2378
+ :issuer,
2379
+ :client_secret,
2380
+ :secret,
2381
+ :redirect_url,
2382
+ :user_id,
2383
+ :custom_username,
2384
+ :ca_certificate,
2385
+ :application_id,
2386
+ :sso_token_buffer_minutes,
2387
+ :extra_auth_params)
2388
+ SENSITIVE = [:client_secret, :secret]
2389
+ include Aws::Structure
2390
+ end
2391
+
2392
+ # Contains OAuth token information returned from the identity provider,
2393
+ # including access tokens, ID tokens, and PKCE parameters used for
2394
+ # secure authentication.
2395
+ #
2396
+ # @!attribute [rw] code_verifier
2397
+ # The PKCE (Proof Key for Code Exchange) code verifier, a
2398
+ # cryptographically random string used to enhance security in the
2399
+ # OAuth flow.
2400
+ # @return [String]
2401
+ #
2402
+ # @!attribute [rw] code_challenge
2403
+ # The PKCE code challenge, a transformed version of the code verifier
2404
+ # sent during the authorization request for verification.
2405
+ # @return [String]
2406
+ #
2407
+ # @!attribute [rw] access_token
2408
+ # The OAuth access token that can be used to access protected
2409
+ # resources on behalf of the authenticated user.
2410
+ # @return [String]
2411
+ #
2412
+ # @!attribute [rw] id_token
2413
+ # The OpenID Connect ID token containing user identity information and
2414
+ # authentication context as a signed JWT.
2415
+ # @return [String]
2416
+ #
2417
+ # @!attribute [rw] refresh_token
2418
+ # The OAuth refresh token that can be used to obtain new access tokens
2419
+ # without requiring the user to re-authenticate.
2420
+ # @return [String]
2421
+ #
2422
+ # @!attribute [rw] token_type
2423
+ # The type of access token issued, typically 'Bearer', which
2424
+ # indicates how the token should be used in API requests.
2425
+ # @return [String]
2426
+ #
2427
+ # @!attribute [rw] expires_in
2428
+ # The lifetime of the access token in seconds, indicating when the
2429
+ # token will expire and need to be refreshed.
2430
+ # @return [Integer]
2431
+ #
2432
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/OidcTokenInfo AWS API Documentation
2433
+ #
2434
+ class OidcTokenInfo < Struct.new(
2435
+ :code_verifier,
2436
+ :code_challenge,
2437
+ :access_token,
2438
+ :id_token,
2439
+ :refresh_token,
2440
+ :token_type,
2441
+ :expires_in)
2442
+ SENSITIVE = []
2443
+ include Aws::Structure
2444
+ end
2445
+
2446
+ # Defines password complexity requirements for users in a security
2447
+ # group, including minimum length and character type requirements.
2448
+ #
2449
+ # @!attribute [rw] lowercase
2450
+ # The minimum number of lowercase letters required in passwords.
2451
+ # @return [Integer]
2452
+ #
2453
+ # @!attribute [rw] min_length
2454
+ # The minimum password length in characters.
2455
+ # @return [Integer]
2456
+ #
2457
+ # @!attribute [rw] numbers
2458
+ # The minimum number of numeric characters required in passwords.
2459
+ # @return [Integer]
2460
+ #
2461
+ # @!attribute [rw] symbols
2462
+ # The minimum number of special symbol characters required in
2463
+ # passwords.
2464
+ # @return [Integer]
2465
+ #
2466
+ # @!attribute [rw] uppercase
2467
+ # The minimum number of uppercase letters required in passwords.
2468
+ # @return [Integer]
2469
+ #
2470
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/PasswordRequirements AWS API Documentation
2471
+ #
2472
+ class PasswordRequirements < Struct.new(
2473
+ :lowercase,
2474
+ :min_length,
2475
+ :numbers,
2476
+ :symbols,
2477
+ :uppercase)
2478
+ SENSITIVE = []
2479
+ include Aws::Structure
2480
+ end
2481
+
2482
+ # Identifies a Wickr enterprise network that is permitted for global
2483
+ # federation, allowing users to communicate with members of the
2484
+ # specified network.
2485
+ #
2486
+ # @!attribute [rw] domain
2487
+ # The domain identifier for the permitted Wickr enterprise network.
2488
+ # @return [String]
2489
+ #
2490
+ # @!attribute [rw] network_id
2491
+ # The network ID of the permitted Wickr enterprise network.
2492
+ # @return [String]
2493
+ #
2494
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/PermittedWickrEnterpriseNetwork AWS API Documentation
2495
+ #
2496
+ class PermittedWickrEnterpriseNetwork < Struct.new(
2497
+ :domain,
2498
+ :network_id)
2499
+ SENSITIVE = []
2500
+ include Aws::Structure
2501
+ end
2502
+
2503
+ # The request was throttled because too many requests were sent in a
2504
+ # short period of time. Wait a moment and retry the request. Consider
2505
+ # implementing exponential backoff in your application.
2506
+ #
2507
+ # @!attribute [rw] message
2508
+ # A message indicating that the rate limit was exceeded and suggesting
2509
+ # when to retry.
2510
+ # @return [String]
2511
+ #
2512
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/RateLimitError AWS API Documentation
2513
+ #
2514
+ class RateLimitError < Struct.new(
2515
+ :message)
2516
+ SENSITIVE = []
2517
+ include Aws::Structure
2518
+ end
2519
+
2520
+ # Configuration for read receipts at the network level, controlling
2521
+ # whether senders can see when their messages have been read.
2522
+ #
2523
+ # @!attribute [rw] status
2524
+ # The read receipt status mode for the network.
2525
+ # @return [String]
2526
+ #
2527
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ReadReceiptConfig AWS API Documentation
2528
+ #
2529
+ class ReadReceiptConfig < Struct.new(
2530
+ :status)
2531
+ SENSITIVE = []
2532
+ include Aws::Structure
2533
+ end
2534
+
2535
+ # @!attribute [rw] network_id
2536
+ # The ID of the Wickr network for which OIDC will be configured.
2537
+ # @return [String]
2538
+ #
2539
+ # @!attribute [rw] company_id
2540
+ # Custom identifier your end users will use to sign in with SSO.
2541
+ # @return [String]
2542
+ #
2543
+ # @!attribute [rw] custom_username
2544
+ # A custom field mapping to extract the username from the OIDC token
2545
+ # (optional).
2546
+ #
2547
+ # <note markdown="1"> The customUsername is only required if you use something other than
2548
+ # email as the username field.
2549
+ #
2550
+ # </note>
2551
+ # @return [String]
2552
+ #
2553
+ # @!attribute [rw] extra_auth_params
2554
+ # Additional authentication parameters to include in the OIDC flow
2555
+ # (optional).
2556
+ # @return [String]
2557
+ #
2558
+ # @!attribute [rw] issuer
2559
+ # The issuer URL of the OIDC provider (e.g.,
2560
+ # 'https://login.example.com').
2561
+ # @return [String]
2562
+ #
2563
+ # @!attribute [rw] scopes
2564
+ # The OAuth scopes to request from the OIDC provider (e.g., 'openid
2565
+ # profile email').
2566
+ # @return [String]
2567
+ #
2568
+ # @!attribute [rw] secret
2569
+ # The client secret for authenticating with the OIDC provider
2570
+ # (optional).
2571
+ # @return [String]
2572
+ #
2573
+ # @!attribute [rw] sso_token_buffer_minutes
2574
+ # The buffer time in minutes before the SSO token expires to refresh
2575
+ # it (optional).
2576
+ # @return [Integer]
2577
+ #
2578
+ # @!attribute [rw] user_id
2579
+ # Unique identifier provided by your identity provider to authenticate
2580
+ # the access request. Also referred to as clientID.
2581
+ # @return [String]
2582
+ #
2583
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/RegisterOidcConfigRequest AWS API Documentation
2584
+ #
2585
+ class RegisterOidcConfigRequest < Struct.new(
2586
+ :network_id,
2587
+ :company_id,
2588
+ :custom_username,
2589
+ :extra_auth_params,
2590
+ :issuer,
2591
+ :scopes,
2592
+ :secret,
2593
+ :sso_token_buffer_minutes,
2594
+ :user_id)
2595
+ SENSITIVE = [:secret]
2596
+ include Aws::Structure
2597
+ end
2598
+
2599
+ # @!attribute [rw] application_name
2600
+ # The name of the registered OIDC application.
2601
+ # @return [String]
2602
+ #
2603
+ # @!attribute [rw] client_id
2604
+ # The OAuth client ID assigned to the application.
2605
+ # @return [String]
2606
+ #
2607
+ # @!attribute [rw] company_id
2608
+ # Custom identifier your end users will use to sign in with SSO.
2609
+ # @return [String]
2610
+ #
2611
+ # @!attribute [rw] scopes
2612
+ # The OAuth scopes configured for the application.
2613
+ # @return [String]
2614
+ #
2615
+ # @!attribute [rw] issuer
2616
+ # The issuer URL of the OIDC provider.
2617
+ # @return [String]
2618
+ #
2619
+ # @!attribute [rw] client_secret
2620
+ # The OAuth client secret for the application.
2621
+ # @return [String]
2622
+ #
2623
+ # @!attribute [rw] secret
2624
+ # The client secret for authenticating with the OIDC provider.
2625
+ # @return [String]
2626
+ #
2627
+ # @!attribute [rw] redirect_url
2628
+ # The redirect URL configured for the OAuth flow.
2629
+ # @return [String]
2630
+ #
2631
+ # @!attribute [rw] user_id
2632
+ # The claim field being used as the user identifier.
2633
+ # @return [String]
2634
+ #
2635
+ # @!attribute [rw] custom_username
2636
+ # The custom field mapping used for extracting the username.
2637
+ # @return [String]
2638
+ #
2639
+ # @!attribute [rw] ca_certificate
2640
+ # The CA certificate used for secure communication with the OIDC
2641
+ # provider.
2642
+ # @return [String]
2643
+ #
2644
+ # @!attribute [rw] application_id
2645
+ # The unique identifier for the registered OIDC application.
2646
+ # @return [Integer]
2647
+ #
2648
+ # @!attribute [rw] sso_token_buffer_minutes
2649
+ # The buffer time in minutes before the SSO token expires.
2650
+ # @return [Integer]
2651
+ #
2652
+ # @!attribute [rw] extra_auth_params
2653
+ # The additional authentication parameters configured for the OIDC
2654
+ # flow.
2655
+ # @return [String]
2656
+ #
2657
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/RegisterOidcConfigResponse AWS API Documentation
2658
+ #
2659
+ class RegisterOidcConfigResponse < Struct.new(
2660
+ :application_name,
2661
+ :client_id,
2662
+ :company_id,
2663
+ :scopes,
2664
+ :issuer,
2665
+ :client_secret,
2666
+ :secret,
2667
+ :redirect_url,
2668
+ :user_id,
2669
+ :custom_username,
2670
+ :ca_certificate,
2671
+ :application_id,
2672
+ :sso_token_buffer_minutes,
2673
+ :extra_auth_params)
2674
+ SENSITIVE = [:client_secret, :secret]
2675
+ include Aws::Structure
2676
+ end
2677
+
2678
+ # @!attribute [rw] network_id
2679
+ # The ID of the Wickr network for which the OIDC configuration will be
2680
+ # tested.
2681
+ # @return [String]
2682
+ #
2683
+ # @!attribute [rw] extra_auth_params
2684
+ # Additional authentication parameters to include in the test
2685
+ # (optional).
2686
+ # @return [String]
2687
+ #
2688
+ # @!attribute [rw] issuer
2689
+ # The issuer URL of the OIDC provider to test.
2690
+ # @return [String]
2691
+ #
2692
+ # @!attribute [rw] scopes
2693
+ # The OAuth scopes to test with the OIDC provider.
2694
+ # @return [String]
2695
+ #
2696
+ # @!attribute [rw] certificate
2697
+ # The CA certificate for secure communication with the OIDC provider
2698
+ # (optional).
2699
+ # @return [String]
2700
+ #
2701
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/RegisterOidcConfigTestRequest AWS API Documentation
2702
+ #
2703
+ class RegisterOidcConfigTestRequest < Struct.new(
2704
+ :network_id,
2705
+ :extra_auth_params,
2706
+ :issuer,
2707
+ :scopes,
2708
+ :certificate)
2709
+ SENSITIVE = []
2710
+ include Aws::Structure
2711
+ end
2712
+
2713
+ # @!attribute [rw] token_endpoint
2714
+ # The token endpoint URL discovered from the OIDC provider.
2715
+ # @return [String]
2716
+ #
2717
+ # @!attribute [rw] userinfo_endpoint
2718
+ # The user info endpoint URL discovered from the OIDC provider.
2719
+ # @return [String]
2720
+ #
2721
+ # @!attribute [rw] response_types_supported
2722
+ # The OAuth response types supported by the OIDC provider.
2723
+ # @return [Array<String>]
2724
+ #
2725
+ # @!attribute [rw] scopes_supported
2726
+ # The OAuth scopes supported by the OIDC provider.
2727
+ # @return [Array<String>]
2728
+ #
2729
+ # @!attribute [rw] issuer
2730
+ # The issuer URL confirmed by the OIDC provider.
2731
+ # @return [String]
2732
+ #
2733
+ # @!attribute [rw] authorization_endpoint
2734
+ # The authorization endpoint URL discovered from the OIDC provider.
2735
+ # @return [String]
2736
+ #
2737
+ # @!attribute [rw] end_session_endpoint
2738
+ # The end session endpoint URL for logging out users from the OIDC
2739
+ # provider.
2740
+ # @return [String]
2741
+ #
2742
+ # @!attribute [rw] logout_endpoint
2743
+ # The logout endpoint URL for terminating user sessions.
2744
+ # @return [String]
2745
+ #
2746
+ # @!attribute [rw] grant_types_supported
2747
+ # The OAuth grant types supported by the OIDC provider.
2748
+ # @return [Array<String>]
2749
+ #
2750
+ # @!attribute [rw] revocation_endpoint
2751
+ # The token revocation endpoint URL for invalidating tokens.
2752
+ # @return [String]
2753
+ #
2754
+ # @!attribute [rw] token_endpoint_auth_methods_supported
2755
+ # The authentication methods supported by the token endpoint.
2756
+ # @return [Array<String>]
2757
+ #
2758
+ # @!attribute [rw] microsoft_multi_refresh_token
2759
+ # Indicates whether the provider supports Microsoft multi-refresh
2760
+ # tokens.
2761
+ # @return [Boolean]
2762
+ #
2763
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/RegisterOidcConfigTestResponse AWS API Documentation
2764
+ #
2765
+ class RegisterOidcConfigTestResponse < Struct.new(
2766
+ :token_endpoint,
2767
+ :userinfo_endpoint,
2768
+ :response_types_supported,
2769
+ :scopes_supported,
2770
+ :issuer,
2771
+ :authorization_endpoint,
2772
+ :end_session_endpoint,
2773
+ :logout_endpoint,
2774
+ :grant_types_supported,
2775
+ :revocation_endpoint,
2776
+ :token_endpoint_auth_methods_supported,
2777
+ :microsoft_multi_refresh_token)
2778
+ SENSITIVE = []
2779
+ include Aws::Structure
2780
+ end
2781
+
2782
+ # The requested resource could not be found. This error occurs when you
2783
+ # try to access or modify a network, user, bot, security group, or other
2784
+ # resource that doesn't exist or has been deleted.
2785
+ #
2786
+ # @!attribute [rw] message
2787
+ # A message identifying which resource was not found.
2788
+ # @return [String]
2789
+ #
2790
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ResourceNotFoundError AWS API Documentation
2791
+ #
2792
+ class ResourceNotFoundError < Struct.new(
2793
+ :message)
2794
+ SENSITIVE = []
2795
+ include Aws::Structure
2796
+ end
2797
+
2798
+ # Represents a security group in a Wickr network, containing membership
2799
+ # statistics, configuration, and all permission settings that apply to
2800
+ # its members.
2801
+ #
2802
+ # @!attribute [rw] active_members
2803
+ # The number of active user members currently in the security group.
2804
+ # @return [Integer]
2805
+ #
2806
+ # @!attribute [rw] bot_members
2807
+ # The number of bot members currently in the security group.
2808
+ # @return [Integer]
2809
+ #
2810
+ # @!attribute [rw] active_directory_guid
2811
+ # The GUID of the Active Directory group associated with this security
2812
+ # group, if synchronized with LDAP.
2813
+ # @return [String]
2814
+ #
2815
+ # @!attribute [rw] id
2816
+ # The unique identifier of the security group.
2817
+ # @return [String]
2818
+ #
2819
+ # @!attribute [rw] is_default
2820
+ # Indicates whether this is the default security group for the
2821
+ # network. Each network has only one default group.
2822
+ # @return [Boolean]
2823
+ #
2824
+ # @!attribute [rw] name
2825
+ # The human-readable name of the security group.
2826
+ # @return [String]
2827
+ #
2828
+ # @!attribute [rw] modified
2829
+ # The timestamp when the security group was last modified, specified
2830
+ # in epoch seconds.
2831
+ # @return [Integer]
2832
+ #
2833
+ # @!attribute [rw] security_group_settings
2834
+ # The comprehensive configuration settings that define capabilities
2835
+ # and restrictions for members of this security group.
2836
+ # @return [Types::SecurityGroupSettings]
2837
+ #
2838
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/SecurityGroup AWS API Documentation
2839
+ #
2840
+ class SecurityGroup < Struct.new(
2841
+ :active_members,
2842
+ :bot_members,
2843
+ :active_directory_guid,
2844
+ :id,
2845
+ :is_default,
2846
+ :name,
2847
+ :modified,
2848
+ :security_group_settings)
2849
+ SENSITIVE = []
2850
+ include Aws::Structure
2851
+ end
2852
+
2853
+ # Comprehensive configuration settings that define all user
2854
+ # capabilities, restrictions, and features for members of a security
2855
+ # group. These settings control everything from calling permissions to
2856
+ # federation settings to security policies.
2857
+ #
2858
+ # @!attribute [rw] always_reauthenticate
2859
+ # Requires users to reauthenticate every time they return to the
2860
+ # application, providing an additional layer of security.
2861
+ # @return [Boolean]
2862
+ #
2863
+ # @!attribute [rw] atak_package_values
2864
+ # Configuration values for ATAK (Android Team Awareness Kit) package
2865
+ # integration, when ATAK is enabled.
2866
+ # @return [Array<String>]
2867
+ #
2868
+ # @!attribute [rw] calling
2869
+ # The calling feature permissions and settings that control what types
2870
+ # of calls users can initiate and participate in.
2871
+ # @return [Types::CallingSettings]
2872
+ #
2873
+ # @!attribute [rw] check_for_updates
2874
+ # Enables automatic checking for Wickr client updates to ensure users
2875
+ # stay current with the latest version.
2876
+ # @return [Boolean]
2877
+ #
2878
+ # @!attribute [rw] enable_atak
2879
+ # Enables ATAK (Android Team Awareness Kit) integration for tactical
2880
+ # communication and situational awareness.
2881
+ # @return [Boolean]
2882
+ #
2883
+ # @!attribute [rw] enable_crash_reports
2884
+ # Allow users to report crashes.
2885
+ # @return [Boolean]
2886
+ #
2887
+ # @!attribute [rw] enable_file_download
2888
+ # Specifies whether users can download files from messages to their
2889
+ # devices.
2890
+ # @return [Boolean]
2891
+ #
2892
+ # @!attribute [rw] enable_guest_federation
2893
+ # Allows users to communicate with guest users from other Wickr
2894
+ # networks and federated external networks.
2895
+ # @return [Boolean]
2896
+ #
2897
+ # @!attribute [rw] enable_notification_preview
2898
+ # Enables message preview text in push notifications, allowing users
2899
+ # to see message content before opening the app.
2900
+ # @return [Boolean]
2901
+ #
2902
+ # @!attribute [rw] enable_open_access_option
2903
+ # Allow users to avoid censorship when they are geo-blocked or have
2904
+ # network limitations.
2905
+ # @return [Boolean]
2906
+ #
2907
+ # @!attribute [rw] enable_restricted_global_federation
2908
+ # Enables restricted global federation, limiting external
2909
+ # communication to only specified permitted networks.
2910
+ # @return [Boolean]
2911
+ #
2912
+ # @!attribute [rw] files_enabled
2913
+ # Enables file sharing capabilities, allowing users to send and
2914
+ # receive files in conversations.
2915
+ # @return [Boolean]
2916
+ #
2917
+ # @!attribute [rw] force_device_lockout
2918
+ # Defines the number of failed login attempts before data stored on
2919
+ # the device is reset. Should be less than lockoutThreshold.
2920
+ # @return [Integer]
2921
+ #
2922
+ # @!attribute [rw] force_open_access
2923
+ # Automatically enable and enforce Wickr open access on all devices.
2924
+ # Valid only if enableOpenAccessOption settings is enabled.
2925
+ # @return [Boolean]
2926
+ #
2927
+ # @!attribute [rw] force_read_receipts
2928
+ # Allow user approved bots to read messages in rooms without using a
2929
+ # slash command.
2930
+ # @return [Boolean]
2931
+ #
2932
+ # @!attribute [rw] global_federation
2933
+ # Allows users to communicate with users on other Wickr instances
2934
+ # (Wickr Enterprise) outside the current network.
2935
+ # @return [Boolean]
2936
+ #
2937
+ # @!attribute [rw] is_ato_enabled
2938
+ # Enforces a two-factor authentication when a user adds a new device
2939
+ # to their account.
2940
+ # @return [Boolean]
2941
+ #
2942
+ # @!attribute [rw] is_link_preview_enabled
2943
+ # Enables automatic preview of links shared in messages, showing
2944
+ # webpage thumbnails and descriptions.
2945
+ # @return [Boolean]
2946
+ #
2947
+ # @!attribute [rw] location_allow_maps
2948
+ # Allows map integration in location sharing, enabling users to view
2949
+ # shared locations on interactive maps. Only allowed when location
2950
+ # setting is enabled.
2951
+ # @return [Boolean]
2952
+ #
2953
+ # @!attribute [rw] location_enabled
2954
+ # Enables location sharing features, allowing users to share their
2955
+ # current location with others.
2956
+ # @return [Boolean]
2957
+ #
2958
+ # @!attribute [rw] max_auto_download_size
2959
+ # The maximum file size in bytes that will be automatically downloaded
2960
+ # without user confirmation. Only allowed if fileDownload is enabled.
2961
+ # Valid Values \[512000 (low\_quality), 7340032 (high\_quality) \]
2962
+ # @return [Integer]
2963
+ #
2964
+ # @!attribute [rw] max_bor
2965
+ # The maximum burn-on-read (BOR) time in seconds, which determines how
2966
+ # long messages remain visible before auto-deletion after being read.
2967
+ # @return [Integer]
2968
+ #
2969
+ # @!attribute [rw] max_ttl
2970
+ # The maximum time-to-live (TTL) in seconds for messages, after which
2971
+ # they will be automatically deleted from all devices.
2972
+ # @return [Integer]
2973
+ #
2974
+ # @!attribute [rw] message_forwarding_enabled
2975
+ # Enables message forwarding, allowing users to forward messages from
2976
+ # one conversation to another.
2977
+ # @return [Boolean]
2978
+ #
2979
+ # @!attribute [rw] password_requirements
2980
+ # The password complexity requirements that users must follow when
2981
+ # creating or changing passwords.
2982
+ # @return [Types::PasswordRequirements]
2983
+ #
2984
+ # @!attribute [rw] presence_enabled
2985
+ # Enables presence indicators that show whether users are online,
2986
+ # away, or offline.
2987
+ # @return [Boolean]
2988
+ #
2989
+ # @!attribute [rw] quick_responses
2990
+ # A list of pre-defined quick response message templates that users
2991
+ # can send with a single tap.
2992
+ # @return [Array<String>]
2993
+ #
2994
+ # @!attribute [rw] show_master_recovery_key
2995
+ # Users will get a master recovery key that can be used to securely
2996
+ # sign in to their Wickr account without having access to their
2997
+ # primary device for authentication. Available in SSO enabled network.
2998
+ # @return [Boolean]
2999
+ #
3000
+ # @!attribute [rw] shredder
3001
+ # The message shredder configuration that controls secure deletion of
3002
+ # messages and files from devices.
3003
+ # @return [Types::ShredderSettings]
3004
+ #
3005
+ # @!attribute [rw] sso_max_idle_minutes
3006
+ # The duration for which users SSO session remains inactive before
3007
+ # automatically logging them out for security. Available in SSO
3008
+ # enabled network.
3009
+ # @return [Integer]
3010
+ #
3011
+ # @!attribute [rw] federation_mode
3012
+ # The local federation mode controlling how users can communicate with
3013
+ # other networks. Values: 0 (none), 1 (federated), 2 (restricted).
3014
+ # @return [Integer]
3015
+ #
3016
+ # @!attribute [rw] lockout_threshold
3017
+ # The number of failed password attempts before a user account is
3018
+ # locked out.
3019
+ # @return [Integer]
3020
+ #
3021
+ # @!attribute [rw] permitted_networks
3022
+ # A list of network IDs that are permitted for local federation when
3023
+ # federation mode is set to restricted.
3024
+ # @return [Array<String>]
3025
+ #
3026
+ # @!attribute [rw] permitted_wickr_aws_networks
3027
+ # A list of permitted Wickr networks for global federation,
3028
+ # restricting communication to specific approved networks.
3029
+ # @return [Array<Types::WickrAwsNetworks>]
3030
+ #
3031
+ # @!attribute [rw] permitted_wickr_enterprise_networks
3032
+ # A list of permitted Wickr Enterprise networks for global federation,
3033
+ # restricting communication to specific approved networks.
3034
+ # @return [Array<Types::PermittedWickrEnterpriseNetwork>]
3035
+ #
3036
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/SecurityGroupSettings AWS API Documentation
3037
+ #
3038
+ class SecurityGroupSettings < Struct.new(
3039
+ :always_reauthenticate,
3040
+ :atak_package_values,
3041
+ :calling,
3042
+ :check_for_updates,
3043
+ :enable_atak,
3044
+ :enable_crash_reports,
3045
+ :enable_file_download,
3046
+ :enable_guest_federation,
3047
+ :enable_notification_preview,
3048
+ :enable_open_access_option,
3049
+ :enable_restricted_global_federation,
3050
+ :files_enabled,
3051
+ :force_device_lockout,
3052
+ :force_open_access,
3053
+ :force_read_receipts,
3054
+ :global_federation,
3055
+ :is_ato_enabled,
3056
+ :is_link_preview_enabled,
3057
+ :location_allow_maps,
3058
+ :location_enabled,
3059
+ :max_auto_download_size,
3060
+ :max_bor,
3061
+ :max_ttl,
3062
+ :message_forwarding_enabled,
3063
+ :password_requirements,
3064
+ :presence_enabled,
3065
+ :quick_responses,
3066
+ :show_master_recovery_key,
3067
+ :shredder,
3068
+ :sso_max_idle_minutes,
3069
+ :federation_mode,
3070
+ :lockout_threshold,
3071
+ :permitted_networks,
3072
+ :permitted_wickr_aws_networks,
3073
+ :permitted_wickr_enterprise_networks)
3074
+ SENSITIVE = []
3075
+ include Aws::Structure
3076
+ end
3077
+
3078
+ # Contains the security group configuration settings that can be
3079
+ # specified when creating or updating a security group. This is a subset
3080
+ # of SecurityGroupSettings containing only the modifiable federation and
3081
+ # security settings.
3082
+ #
3083
+ # @!attribute [rw] lockout_threshold
3084
+ # The number of failed password attempts before a user account is
3085
+ # locked out.
3086
+ # @return [Integer]
3087
+ #
3088
+ # @!attribute [rw] permitted_networks
3089
+ # A list of network IDs that are permitted for local federation when
3090
+ # federation mode is set to restricted.
3091
+ # @return [Array<String>]
3092
+ #
3093
+ # @!attribute [rw] enable_guest_federation
3094
+ # Guest users let you work with people outside your organization that
3095
+ # only have limited access to Wickr. Only valid when federationMode is
3096
+ # set to Global.
3097
+ # @return [Boolean]
3098
+ #
3099
+ # @!attribute [rw] global_federation
3100
+ # Allow users to securely federate with all Amazon Web Services Wickr
3101
+ # networks and Amazon Web Services Enterprise networks.
3102
+ # @return [Boolean]
3103
+ #
3104
+ # @!attribute [rw] federation_mode
3105
+ # The local federation mode. Values: 0 (none), 1 (federated - all
3106
+ # networks), 2 (restricted - only permitted networks).
3107
+ # @return [Integer]
3108
+ #
3109
+ # @!attribute [rw] enable_restricted_global_federation
3110
+ # Enables restricted global federation to limit communication to
3111
+ # specific permitted networks only. Requires globalFederation to be
3112
+ # enabled.
3113
+ # @return [Boolean]
3114
+ #
3115
+ # @!attribute [rw] permitted_wickr_aws_networks
3116
+ # A list of permitted Amazon Web Services Wickr networks for
3117
+ # restricted global federation.
3118
+ # @return [Array<Types::WickrAwsNetworks>]
3119
+ #
3120
+ # @!attribute [rw] permitted_wickr_enterprise_networks
3121
+ # A list of permitted Wickr Enterprise networks for restricted global
3122
+ # federation.
3123
+ # @return [Array<Types::PermittedWickrEnterpriseNetwork>]
3124
+ #
3125
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/SecurityGroupSettingsRequest AWS API Documentation
3126
+ #
3127
+ class SecurityGroupSettingsRequest < Struct.new(
3128
+ :lockout_threshold,
3129
+ :permitted_networks,
3130
+ :enable_guest_federation,
3131
+ :global_federation,
3132
+ :federation_mode,
3133
+ :enable_restricted_global_federation,
3134
+ :permitted_wickr_aws_networks,
3135
+ :permitted_wickr_enterprise_networks)
3136
+ SENSITIVE = []
3137
+ include Aws::Structure
3138
+ end
3139
+
3140
+ # Represents a single network-level configuration setting with its name,
3141
+ # value, and data type. Settings control network-wide behaviors and
3142
+ # features.
3143
+ #
3144
+ # @!attribute [rw] option_name
3145
+ # The name of the network setting (e.g., 'enableClientMetrics',
3146
+ # 'dataRetention').
3147
+ # @return [String]
3148
+ #
3149
+ # @!attribute [rw] value
3150
+ # The current value of the setting as a string. Boolean values are
3151
+ # represented as 'true' or 'false'.
3152
+ # @return [String]
3153
+ #
3154
+ # @!attribute [rw] type
3155
+ # The data type of the setting value (e.g., 'boolean', 'string',
3156
+ # 'number').
3157
+ # @return [String]
3158
+ #
3159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/Setting AWS API Documentation
3160
+ #
3161
+ class Setting < Struct.new(
3162
+ :option_name,
3163
+ :value,
3164
+ :type)
3165
+ SENSITIVE = []
3166
+ include Aws::Structure
3167
+ end
3168
+
3169
+ # Configuration for the message shredder feature, which securely deletes
3170
+ # messages and files from devices to prevent data recovery.
3171
+ #
3172
+ # @!attribute [rw] can_process_manually
3173
+ # Specifies whether users can manually trigger the shredder to delete
3174
+ # content.
3175
+ # @return [Boolean]
3176
+ #
3177
+ # @!attribute [rw] intensity
3178
+ # Prevents Wickr data from being recovered by overwriting deleted
3179
+ # Wickr data. Valid Values: Must be one of \[0, 20, 60, 100\]
3180
+ # @return [Integer]
3181
+ #
3182
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ShredderSettings AWS API Documentation
3183
+ #
3184
+ class ShredderSettings < Struct.new(
3185
+ :can_process_manually,
3186
+ :intensity)
3187
+ SENSITIVE = []
3188
+ include Aws::Structure
3189
+ end
3190
+
3191
+ # The request was not authenticated or the authentication credentials
3192
+ # were invalid. This error occurs when the request lacks valid
3193
+ # authentication credentials or the credentials have expired.
3194
+ #
3195
+ # @!attribute [rw] message
3196
+ # A message explaining why the authentication failed.
3197
+ # @return [String]
3198
+ #
3199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UnauthorizedError AWS API Documentation
3200
+ #
3201
+ class UnauthorizedError < Struct.new(
3202
+ :message)
3203
+ SENSITIVE = []
3204
+ include Aws::Structure
3205
+ end
3206
+
3207
+ # @!attribute [rw] network_id
3208
+ # The ID of the Wickr network containing the bot to update.
3209
+ # @return [String]
3210
+ #
3211
+ # @!attribute [rw] bot_id
3212
+ # The unique identifier of the bot to update.
3213
+ # @return [String]
3214
+ #
3215
+ # @!attribute [rw] display_name
3216
+ # The new display name for the bot.
3217
+ # @return [String]
3218
+ #
3219
+ # @!attribute [rw] group_id
3220
+ # The ID of the new security group to assign the bot to.
3221
+ # @return [String]
3222
+ #
3223
+ # @!attribute [rw] challenge
3224
+ # The new password for the bot account.
3225
+ # @return [String]
3226
+ #
3227
+ # @!attribute [rw] suspend
3228
+ # Set to true to suspend the bot or false to unsuspend it. Omit this
3229
+ # field for standard updates that don't affect suspension status.
3230
+ # @return [Boolean]
3231
+ #
3232
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateBotRequest AWS API Documentation
3233
+ #
3234
+ class UpdateBotRequest < Struct.new(
3235
+ :network_id,
3236
+ :bot_id,
3237
+ :display_name,
3238
+ :group_id,
3239
+ :challenge,
3240
+ :suspend)
3241
+ SENSITIVE = [:challenge]
3242
+ include Aws::Structure
3243
+ end
3244
+
3245
+ # @!attribute [rw] message
3246
+ # A message indicating the result of the bot update operation.
3247
+ # @return [String]
3248
+ #
3249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateBotResponse AWS API Documentation
3250
+ #
3251
+ class UpdateBotResponse < Struct.new(
3252
+ :message)
3253
+ SENSITIVE = []
3254
+ include Aws::Structure
3255
+ end
3256
+
3257
+ # @!attribute [rw] network_id
3258
+ # The ID of the Wickr network containing the data retention bot.
3259
+ # @return [String]
3260
+ #
3261
+ # @!attribute [rw] action_type
3262
+ # The action to perform. Valid values are 'ENABLE' (to enable the
3263
+ # data retention service), 'DISABLE' (to disable the service), or
3264
+ # 'PUBKEY\_MSG\_ACK' (to acknowledge the public key message).
3265
+ # @return [String]
3266
+ #
3267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateDataRetentionRequest AWS API Documentation
3268
+ #
3269
+ class UpdateDataRetentionRequest < Struct.new(
3270
+ :network_id,
3271
+ :action_type)
3272
+ SENSITIVE = []
3273
+ include Aws::Structure
3274
+ end
3275
+
3276
+ # @!attribute [rw] message
3277
+ # A message indicating the result of the update operation.
3278
+ # @return [String]
3279
+ #
3280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateDataRetentionResponse AWS API Documentation
3281
+ #
3282
+ class UpdateDataRetentionResponse < Struct.new(
3283
+ :message)
3284
+ SENSITIVE = []
3285
+ include Aws::Structure
3286
+ end
3287
+
3288
+ # @!attribute [rw] network_id
3289
+ # The ID of the Wickr network where the guest user's status will be
3290
+ # updated.
3291
+ # @return [String]
3292
+ #
3293
+ # @!attribute [rw] username_hash
3294
+ # The username hash (unique identifier) of the guest user to update.
3295
+ # @return [String]
3296
+ #
3297
+ # @!attribute [rw] block
3298
+ # Set to true to block the guest user or false to unblock them.
3299
+ # @return [Boolean]
3300
+ #
3301
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateGuestUserRequest AWS API Documentation
3302
+ #
3303
+ class UpdateGuestUserRequest < Struct.new(
3304
+ :network_id,
3305
+ :username_hash,
3306
+ :block)
3307
+ SENSITIVE = []
3308
+ include Aws::Structure
3309
+ end
3310
+
3311
+ # @!attribute [rw] message
3312
+ # A message indicating the result of the update operation.
3313
+ # @return [String]
3314
+ #
3315
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateGuestUserResponse AWS API Documentation
3316
+ #
3317
+ class UpdateGuestUserResponse < Struct.new(
3318
+ :message)
3319
+ SENSITIVE = []
3320
+ include Aws::Structure
3321
+ end
3322
+
3323
+ # @!attribute [rw] network_id
3324
+ # The ID of the Wickr network to update.
3325
+ # @return [String]
3326
+ #
3327
+ # @!attribute [rw] network_name
3328
+ # The new name for the network. Must be between 1 and 20 characters.
3329
+ # @return [String]
3330
+ #
3331
+ # @!attribute [rw] client_token
3332
+ # A unique identifier for this request to ensure idempotency.
3333
+ #
3334
+ # **A suitable default value is auto-generated.** You should normally
3335
+ # not need to pass this option.
3336
+ # @return [String]
3337
+ #
3338
+ # @!attribute [rw] encryption_key_arn
3339
+ # The ARN of the Amazon Web Services KMS customer managed key to use
3340
+ # for encrypting sensitive data in the network.
3341
+ # @return [String]
3342
+ #
3343
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateNetworkRequest AWS API Documentation
3344
+ #
3345
+ class UpdateNetworkRequest < Struct.new(
3346
+ :network_id,
3347
+ :network_name,
3348
+ :client_token,
3349
+ :encryption_key_arn)
3350
+ SENSITIVE = []
3351
+ include Aws::Structure
3352
+ end
3353
+
3354
+ # @!attribute [rw] message
3355
+ # A message indicating that the network was updated successfully.
3356
+ # @return [String]
3357
+ #
3358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateNetworkResponse AWS API Documentation
3359
+ #
3360
+ class UpdateNetworkResponse < Struct.new(
3361
+ :message)
3362
+ SENSITIVE = []
3363
+ include Aws::Structure
3364
+ end
3365
+
3366
+ # @!attribute [rw] network_id
3367
+ # The ID of the Wickr network whose settings will be updated.
3368
+ # @return [String]
3369
+ #
3370
+ # @!attribute [rw] settings
3371
+ # A map of setting names to their new values. Each setting should be
3372
+ # provided with its appropriate type (boolean, string, number, etc.).
3373
+ # @return [Types::NetworkSettings]
3374
+ #
3375
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateNetworkSettingsRequest AWS API Documentation
3376
+ #
3377
+ class UpdateNetworkSettingsRequest < Struct.new(
3378
+ :network_id,
3379
+ :settings)
3380
+ SENSITIVE = []
3381
+ include Aws::Structure
3382
+ end
3383
+
3384
+ # @!attribute [rw] settings
3385
+ # A list of the updated network settings, showing the new values for
3386
+ # each modified setting.
3387
+ # @return [Array<Types::Setting>]
3388
+ #
3389
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateNetworkSettingsResponse AWS API Documentation
3390
+ #
3391
+ class UpdateNetworkSettingsResponse < Struct.new(
3392
+ :settings)
3393
+ SENSITIVE = []
3394
+ include Aws::Structure
3395
+ end
3396
+
3397
+ # @!attribute [rw] network_id
3398
+ # The ID of the Wickr network containing the security group to update.
3399
+ # @return [String]
3400
+ #
3401
+ # @!attribute [rw] group_id
3402
+ # The unique identifier of the security group to update.
3403
+ # @return [String]
3404
+ #
3405
+ # @!attribute [rw] name
3406
+ # The new name for the security group.
3407
+ # @return [String]
3408
+ #
3409
+ # @!attribute [rw] security_group_settings
3410
+ # The updated configuration settings for the security group.
3411
+ #
3412
+ # Federation mode - 0 (Local federation), 1 (Restricted federation), 2
3413
+ # (Global federation)
3414
+ # @return [Types::SecurityGroupSettings]
3415
+ #
3416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateSecurityGroupRequest AWS API Documentation
3417
+ #
3418
+ class UpdateSecurityGroupRequest < Struct.new(
3419
+ :network_id,
3420
+ :group_id,
3421
+ :name,
3422
+ :security_group_settings)
3423
+ SENSITIVE = []
3424
+ include Aws::Structure
3425
+ end
3426
+
3427
+ # @!attribute [rw] security_group
3428
+ # The updated security group details, including the new settings.
3429
+ # @return [Types::SecurityGroup]
3430
+ #
3431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateSecurityGroupResponse AWS API Documentation
3432
+ #
3433
+ class UpdateSecurityGroupResponse < Struct.new(
3434
+ :security_group)
3435
+ SENSITIVE = []
3436
+ include Aws::Structure
3437
+ end
3438
+
3439
+ # Contains the modifiable details for updating an existing user,
3440
+ # including name, password, security group membership, and invitation
3441
+ # settings.
3442
+ #
3443
+ # <note markdown="1"> A user can only be assigned to a single security group. Attempting to
3444
+ # add a user to multiple security groups is not supported and will
3445
+ # result in an error.
3446
+ #
3447
+ # </note>
3448
+ #
3449
+ # @!attribute [rw] first_name
3450
+ # The new first name for the user.
3451
+ # @return [String]
3452
+ #
3453
+ # @!attribute [rw] last_name
3454
+ # The new last name for the user.
3455
+ # @return [String]
3456
+ #
3457
+ # @!attribute [rw] username
3458
+ # The new username or email address for the user.
3459
+ # @return [String]
3460
+ #
3461
+ # @!attribute [rw] security_group_ids
3462
+ # The updated list of security group IDs to which the user should
3463
+ # belong.
3464
+ # @return [Array<String>]
3465
+ #
3466
+ # @!attribute [rw] invite_code
3467
+ # A new custom invite code for the user.
3468
+ # @return [String]
3469
+ #
3470
+ # @!attribute [rw] invite_code_ttl
3471
+ # The new time-to-live for the invite code in days.
3472
+ # @return [Integer]
3473
+ #
3474
+ # @!attribute [rw] code_validation
3475
+ # Indicates whether the user can be verified through a custom invite
3476
+ # code.
3477
+ # @return [Boolean]
3478
+ #
3479
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateUserDetails AWS API Documentation
3480
+ #
3481
+ class UpdateUserDetails < Struct.new(
3482
+ :first_name,
3483
+ :last_name,
3484
+ :username,
3485
+ :security_group_ids,
3486
+ :invite_code,
3487
+ :invite_code_ttl,
3488
+ :code_validation)
3489
+ SENSITIVE = [:first_name, :last_name]
3490
+ include Aws::Structure
3491
+ end
3492
+
3493
+ # @!attribute [rw] network_id
3494
+ # The ID of the Wickr network containing the user to update.
3495
+ # @return [String]
3496
+ #
3497
+ # @!attribute [rw] user_id
3498
+ # The unique identifier of the user to update.
3499
+ # @return [String]
3500
+ #
3501
+ # @!attribute [rw] user_details
3502
+ # An object containing the user details to be updated, such as name,
3503
+ # password, security groups, and invite code settings.
3504
+ # @return [Types::UpdateUserDetails]
3505
+ #
3506
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateUserRequest AWS API Documentation
3507
+ #
3508
+ class UpdateUserRequest < Struct.new(
3509
+ :network_id,
3510
+ :user_id,
3511
+ :user_details)
3512
+ SENSITIVE = []
3513
+ include Aws::Structure
3514
+ end
3515
+
3516
+ # @!attribute [rw] user_id
3517
+ # The unique identifier of the updated user.
3518
+ # @return [String]
3519
+ #
3520
+ # @!attribute [rw] network_id
3521
+ # The ID of the network where the user was updated.
3522
+ # @return [String]
3523
+ #
3524
+ # @!attribute [rw] security_group_ids
3525
+ # The list of security group IDs to which the user now belongs after
3526
+ # the update.
3527
+ # @return [Array<String>]
3528
+ #
3529
+ # @!attribute [rw] first_name
3530
+ # The updated first name of the user.
3531
+ # @return [String]
3532
+ #
3533
+ # @!attribute [rw] last_name
3534
+ # The updated last name of the user.
3535
+ # @return [String]
3536
+ #
3537
+ # @!attribute [rw] middle_name
3538
+ # The middle name of the user (currently not used).
3539
+ # @return [String]
3540
+ #
3541
+ # @!attribute [rw] suspended
3542
+ # Indicates whether the user is suspended after the update.
3543
+ # @return [Boolean]
3544
+ #
3545
+ # @!attribute [rw] modified
3546
+ # The timestamp when the user was last modified, specified in epoch
3547
+ # seconds.
3548
+ # @return [Integer]
3549
+ #
3550
+ # @!attribute [rw] status
3551
+ # The user's status after the update.
3552
+ # @return [Integer]
3553
+ #
3554
+ # @!attribute [rw] invite_code
3555
+ # The updated invite code for the user, if applicable.
3556
+ # @return [String]
3557
+ #
3558
+ # @!attribute [rw] invite_expiration
3559
+ # The expiration time of the user's invite code, specified in epoch
3560
+ # seconds.
3561
+ # @return [Integer]
3562
+ #
3563
+ # @!attribute [rw] code_validation
3564
+ # Indicates whether the user can be verified through a custom invite
3565
+ # code.
3566
+ # @return [Boolean]
3567
+ #
3568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/UpdateUserResponse AWS API Documentation
3569
+ #
3570
+ class UpdateUserResponse < Struct.new(
3571
+ :user_id,
3572
+ :network_id,
3573
+ :security_group_ids,
3574
+ :first_name,
3575
+ :last_name,
3576
+ :middle_name,
3577
+ :suspended,
3578
+ :modified,
3579
+ :status,
3580
+ :invite_code,
3581
+ :invite_expiration,
3582
+ :code_validation)
3583
+ SENSITIVE = [:first_name, :last_name]
3584
+ include Aws::Structure
3585
+ end
3586
+
3587
+ # Represents a user account in a Wickr network with detailed profile
3588
+ # information, status, security settings, and authentication details.
3589
+ #
3590
+ # <note markdown="1"> codeValidation, inviteCode and inviteCodeTtl are restricted to
3591
+ # networks under preview only.
3592
+ #
3593
+ # </note>
3594
+ #
3595
+ # @!attribute [rw] user_id
3596
+ # The unique identifier for the user within the network.
3597
+ # @return [String]
3598
+ #
3599
+ # @!attribute [rw] first_name
3600
+ # The first name of the user.
3601
+ # @return [String]
3602
+ #
3603
+ # @!attribute [rw] last_name
3604
+ # The last name of the user.
3605
+ # @return [String]
3606
+ #
3607
+ # @!attribute [rw] username
3608
+ # The email address or username of the user. For bots, this must end
3609
+ # in 'bot'.
3610
+ # @return [String]
3611
+ #
3612
+ # @!attribute [rw] security_groups
3613
+ # A list of security group IDs to which the user is assigned,
3614
+ # determining their permissions and feature access.
3615
+ # @return [Array<String>]
3616
+ #
3617
+ # @!attribute [rw] is_admin
3618
+ # Indicates whether the user has administrator privileges in the
3619
+ # network.
3620
+ # @return [Boolean]
3621
+ #
3622
+ # @!attribute [rw] suspended
3623
+ # Indicates whether the user is currently suspended and unable to
3624
+ # access the network.
3625
+ # @return [Boolean]
3626
+ #
3627
+ # @!attribute [rw] status
3628
+ # The current status of the user (1 for pending invitation, 2 for
3629
+ # active).
3630
+ # @return [Integer]
3631
+ #
3632
+ # @!attribute [rw] otp_enabled
3633
+ # Indicates whether one-time password (OTP) authentication is enabled
3634
+ # for the user.
3635
+ # @return [Boolean]
3636
+ #
3637
+ # @!attribute [rw] scim_id
3638
+ # The SCIM (System for Cross-domain Identity Management) identifier
3639
+ # for the user, used for identity synchronization. Currently not used.
3640
+ # @return [String]
3641
+ #
3642
+ # @!attribute [rw] type
3643
+ # The descriptive type of the user account (e.g., 'user').
3644
+ # @return [String]
3645
+ #
3646
+ # @!attribute [rw] cell
3647
+ # The phone number minus country code, used for cloud deployments.
3648
+ # @return [String]
3649
+ #
3650
+ # @!attribute [rw] country_code
3651
+ # The country code for the user's phone number, used for cloud
3652
+ # deployments.
3653
+ # @return [String]
3654
+ #
3655
+ # @!attribute [rw] challenge_failures
3656
+ # The number of failed password attempts for enterprise deployments,
3657
+ # used for account lockout policies.
3658
+ # @return [Integer]
3659
+ #
3660
+ # @!attribute [rw] is_invite_expired
3661
+ # Indicates whether the user's email invitation code has expired,
3662
+ # applicable to cloud deployments.
3663
+ # @return [Boolean]
3664
+ #
3665
+ # @!attribute [rw] is_user
3666
+ # Indicates whether this account is a user (as opposed to a bot or
3667
+ # other account type).
3668
+ # @return [Boolean]
3669
+ #
3670
+ # @!attribute [rw] invite_code
3671
+ # The invitation code for this user, used during registration to join
3672
+ # the network.
3673
+ # @return [String]
3674
+ #
3675
+ # @!attribute [rw] code_validation
3676
+ # Indicates whether the user can be verified through a custom invite
3677
+ # code.
3678
+ # @return [Boolean]
3679
+ #
3680
+ # @!attribute [rw] uname
3681
+ # The unique identifier for the user.
3682
+ # @return [String]
3683
+ #
3684
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/User AWS API Documentation
3685
+ #
3686
+ class User < Struct.new(
3687
+ :user_id,
3688
+ :first_name,
3689
+ :last_name,
3690
+ :username,
3691
+ :security_groups,
3692
+ :is_admin,
3693
+ :suspended,
3694
+ :status,
3695
+ :otp_enabled,
3696
+ :scim_id,
3697
+ :type,
3698
+ :cell,
3699
+ :country_code,
3700
+ :challenge_failures,
3701
+ :is_invite_expired,
3702
+ :is_user,
3703
+ :invite_code,
3704
+ :code_validation,
3705
+ :uname)
3706
+ SENSITIVE = [:first_name, :last_name]
3707
+ include Aws::Structure
3708
+ end
3709
+
3710
+ # One or more fields in the request failed validation. This error
3711
+ # provides detailed information about which fields were invalid and why,
3712
+ # allowing you to correct the request and retry.
3713
+ #
3714
+ # @!attribute [rw] reasons
3715
+ # A list of validation error details, where each item identifies a
3716
+ # specific field that failed validation and explains the reason for
3717
+ # the failure.
3718
+ # @return [Array<Types::ErrorDetail>]
3719
+ #
3720
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/ValidationError AWS API Documentation
3721
+ #
3722
+ class ValidationError < Struct.new(
3723
+ :reasons)
3724
+ SENSITIVE = []
3725
+ include Aws::Structure
3726
+ end
3727
+
3728
+ # Identifies a Amazon Web Services Wickr network by region and network
3729
+ # ID, used for configuring permitted networks for global federation.
3730
+ #
3731
+ # @!attribute [rw] region
3732
+ # The Amazon Web Services region identifier where the network is
3733
+ # hosted (e.g., 'us-east-1').
3734
+ # @return [String]
3735
+ #
3736
+ # @!attribute [rw] network_id
3737
+ # The network ID of the Wickr Amazon Web Services network.
3738
+ # @return [String]
3739
+ #
3740
+ # @see http://docs.aws.amazon.com/goto/WebAPI/wickr-2024-02-01/WickrAwsNetworks AWS API Documentation
3741
+ #
3742
+ class WickrAwsNetworks < Struct.new(
3743
+ :region,
3744
+ :network_id)
3745
+ SENSITIVE = []
3746
+ include Aws::Structure
3747
+ end
3748
+
3749
+ end
3750
+ end
3751
+