aws-sdk-partnercentralbenefits 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,1766 @@
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::PartnerCentralBenefits
11
+ module Types
12
+
13
+ # Thrown when the caller does not have sufficient permissions to perform
14
+ # the requested operation.
15
+ #
16
+ # @!attribute [rw] message
17
+ # A message describing the access denial.
18
+ # @return [String]
19
+ #
20
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AccessDeniedException AWS API Documentation
21
+ #
22
+ class AccessDeniedException < Struct.new(
23
+ :message)
24
+ SENSITIVE = []
25
+ include Aws::Structure
26
+ end
27
+
28
+ # Contains information about access-based benefit fulfillment, such as
29
+ # service permissions or feature access.
30
+ #
31
+ # @!attribute [rw] description
32
+ # A description of the access privileges or permissions granted by
33
+ # this benefit.
34
+ # @return [String]
35
+ #
36
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AccessDetails AWS API Documentation
37
+ #
38
+ class AccessDetails < Struct.new(
39
+ :description)
40
+ SENSITIVE = []
41
+ include Aws::Structure
42
+ end
43
+
44
+ # @!attribute [rw] catalog
45
+ # The catalog identifier that specifies which benefit catalog the
46
+ # application belongs to.
47
+ # @return [String]
48
+ #
49
+ # @!attribute [rw] client_token
50
+ # A unique, case-sensitive identifier to ensure idempotent processing
51
+ # of the amendment request.
52
+ # @return [String]
53
+ #
54
+ # @!attribute [rw] revision
55
+ # The current revision number of the benefit application to ensure
56
+ # optimistic concurrency control.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] identifier
60
+ # The unique identifier of the benefit application to be amended.
61
+ # @return [String]
62
+ #
63
+ # @!attribute [rw] amendment_reason
64
+ # A descriptive reason explaining why the benefit application is being
65
+ # amended.
66
+ # @return [String]
67
+ #
68
+ # @!attribute [rw] amendments
69
+ # A list of specific field amendments to apply to the benefit
70
+ # application.
71
+ # @return [Array<Types::Amendment>]
72
+ #
73
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AmendBenefitApplicationInput AWS API Documentation
74
+ #
75
+ class AmendBenefitApplicationInput < Struct.new(
76
+ :catalog,
77
+ :client_token,
78
+ :revision,
79
+ :identifier,
80
+ :amendment_reason,
81
+ :amendments)
82
+ SENSITIVE = []
83
+ include Aws::Structure
84
+ end
85
+
86
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AmendBenefitApplicationOutput AWS API Documentation
87
+ #
88
+ class AmendBenefitApplicationOutput < Aws::EmptyStructure; end
89
+
90
+ # Represents a specific change to be made to a benefit application
91
+ # field.
92
+ #
93
+ # @!attribute [rw] field_path
94
+ # The JSON path or field identifier specifying which field in the
95
+ # benefit application to modify.
96
+ # @return [String]
97
+ #
98
+ # @!attribute [rw] new_value
99
+ # The new value to set for the specified field in the benefit
100
+ # application.
101
+ # @return [String]
102
+ #
103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/Amendment AWS API Documentation
104
+ #
105
+ class Amendment < Struct.new(
106
+ :field_path,
107
+ :new_value)
108
+ SENSITIVE = []
109
+ include Aws::Structure
110
+ end
111
+
112
+ # @!attribute [rw] catalog
113
+ # The catalog identifier that specifies which benefit catalog the
114
+ # application belongs to.
115
+ # @return [String]
116
+ #
117
+ # @!attribute [rw] benefit_application_identifier
118
+ # The unique identifier of the benefit application to associate the
119
+ # resource with.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] resource_arn
123
+ # The Amazon Resource Name (ARN) of the AWS resource to associate with
124
+ # the benefit application.
125
+ # @return [String]
126
+ #
127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AssociateBenefitApplicationResourceInput AWS API Documentation
128
+ #
129
+ class AssociateBenefitApplicationResourceInput < Struct.new(
130
+ :catalog,
131
+ :benefit_application_identifier,
132
+ :resource_arn)
133
+ SENSITIVE = []
134
+ include Aws::Structure
135
+ end
136
+
137
+ # @!attribute [rw] id
138
+ # The unique identifier of the benefit application after the resource
139
+ # association.
140
+ # @return [String]
141
+ #
142
+ # @!attribute [rw] arn
143
+ # The Amazon Resource Name (ARN) of the benefit application after the
144
+ # resource association.
145
+ # @return [String]
146
+ #
147
+ # @!attribute [rw] revision
148
+ # The updated revision number of the benefit application after the
149
+ # resource association.
150
+ # @return [String]
151
+ #
152
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AssociateBenefitApplicationResourceOutput AWS API Documentation
153
+ #
154
+ class AssociateBenefitApplicationResourceOutput < Struct.new(
155
+ :id,
156
+ :arn,
157
+ :revision)
158
+ SENSITIVE = []
159
+ include Aws::Structure
160
+ end
161
+
162
+ # Represents an AWS resource that is associated with a benefit
163
+ # application for tracking and management.
164
+ #
165
+ # @!attribute [rw] resource_type
166
+ # The type of AWS resource (e.g., EC2 instance, S3 bucket, Lambda
167
+ # function).
168
+ # @return [String]
169
+ #
170
+ # @!attribute [rw] resource_identifier
171
+ # The unique identifier of the AWS resource within its service.
172
+ # @return [String]
173
+ #
174
+ # @!attribute [rw] resource_arn
175
+ # The Amazon Resource Name (ARN) that uniquely identifies the AWS
176
+ # resource.
177
+ # @return [String]
178
+ #
179
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/AssociatedResource AWS API Documentation
180
+ #
181
+ class AssociatedResource < Struct.new(
182
+ :resource_type,
183
+ :resource_identifier,
184
+ :resource_arn)
185
+ SENSITIVE = []
186
+ include Aws::Structure
187
+ end
188
+
189
+ # A summary view of a benefit allocation containing key information for
190
+ # list operations.
191
+ #
192
+ # @!attribute [rw] id
193
+ # The unique identifier of the benefit allocation.
194
+ # @return [String]
195
+ #
196
+ # @!attribute [rw] catalog
197
+ # The catalog identifier that the benefit allocation belongs to.
198
+ # @return [String]
199
+ #
200
+ # @!attribute [rw] arn
201
+ # The Amazon Resource Name (ARN) of the benefit allocation.
202
+ # @return [String]
203
+ #
204
+ # @!attribute [rw] status
205
+ # The current status of the benefit allocation.
206
+ # @return [String]
207
+ #
208
+ # @!attribute [rw] status_reason
209
+ # Additional information explaining the current status of the benefit
210
+ # allocation.
211
+ # @return [String]
212
+ #
213
+ # @!attribute [rw] name
214
+ # The human-readable name of the benefit allocation.
215
+ # @return [String]
216
+ #
217
+ # @!attribute [rw] benefit_id
218
+ # The identifier of the benefit that this allocation is based on.
219
+ # @return [String]
220
+ #
221
+ # @!attribute [rw] benefit_application_id
222
+ # The identifier of the benefit application that resulted in this
223
+ # allocation.
224
+ # @return [String]
225
+ #
226
+ # @!attribute [rw] fulfillment_types
227
+ # The fulfillment types used for this benefit allocation.
228
+ # @return [Array<String>]
229
+ #
230
+ # @!attribute [rw] created_at
231
+ # The timestamp when the benefit allocation was created.
232
+ # @return [Time]
233
+ #
234
+ # @!attribute [rw] expires_at
235
+ # The timestamp when the benefit allocation expires.
236
+ # @return [Time]
237
+ #
238
+ # @!attribute [rw] applicable_benefit_ids
239
+ # The identifiers of the benefits applicable for this allocation.
240
+ # @return [Array<String>]
241
+ #
242
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/BenefitAllocationSummary AWS API Documentation
243
+ #
244
+ class BenefitAllocationSummary < Struct.new(
245
+ :id,
246
+ :catalog,
247
+ :arn,
248
+ :status,
249
+ :status_reason,
250
+ :name,
251
+ :benefit_id,
252
+ :benefit_application_id,
253
+ :fulfillment_types,
254
+ :created_at,
255
+ :expires_at,
256
+ :applicable_benefit_ids)
257
+ SENSITIVE = []
258
+ include Aws::Structure
259
+ end
260
+
261
+ # A summary view of a benefit application containing key information for
262
+ # list operations.
263
+ #
264
+ # @!attribute [rw] catalog
265
+ # The catalog identifier that the benefit application belongs to.
266
+ # @return [String]
267
+ #
268
+ # @!attribute [rw] name
269
+ # The human-readable name of the benefit application.
270
+ # @return [String]
271
+ #
272
+ # @!attribute [rw] id
273
+ # The unique identifier of the benefit application.
274
+ # @return [String]
275
+ #
276
+ # @!attribute [rw] arn
277
+ # The Amazon Resource Name (ARN) of the benefit application.
278
+ # @return [String]
279
+ #
280
+ # @!attribute [rw] benefit_id
281
+ # The identifier of the benefit being requested in this application.
282
+ # @return [String]
283
+ #
284
+ # @!attribute [rw] programs
285
+ # The AWS partner programs associated with this benefit application.
286
+ # @return [Array<String>]
287
+ #
288
+ # @!attribute [rw] fulfillment_types
289
+ # The fulfillment types requested for this benefit application.
290
+ # @return [Array<String>]
291
+ #
292
+ # @!attribute [rw] status
293
+ # The current processing status of the benefit application.
294
+ # @return [String]
295
+ #
296
+ # @!attribute [rw] stage
297
+ # The current stage in the benefit application processing workflow..
298
+ # @return [String]
299
+ #
300
+ # @!attribute [rw] created_at
301
+ # The timestamp when the benefit application was created.
302
+ # @return [Time]
303
+ #
304
+ # @!attribute [rw] updated_at
305
+ # The timestamp when the benefit application was last updated.
306
+ # @return [Time]
307
+ #
308
+ # @!attribute [rw] benefit_application_details
309
+ # Additional attributes and metadata associated with the benefit
310
+ # application.
311
+ # @return [Hash<String,String>]
312
+ #
313
+ # @!attribute [rw] associated_resources
314
+ # AWS resources that are associated with this benefit application.
315
+ # @return [Array<String>]
316
+ #
317
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/BenefitApplicationSummary AWS API Documentation
318
+ #
319
+ class BenefitApplicationSummary < Struct.new(
320
+ :catalog,
321
+ :name,
322
+ :id,
323
+ :arn,
324
+ :benefit_id,
325
+ :programs,
326
+ :fulfillment_types,
327
+ :status,
328
+ :stage,
329
+ :created_at,
330
+ :updated_at,
331
+ :benefit_application_details,
332
+ :associated_resources)
333
+ SENSITIVE = []
334
+ include Aws::Structure
335
+ end
336
+
337
+ # A summary view of a benefit containing key information for list
338
+ # operations.
339
+ #
340
+ # @!attribute [rw] id
341
+ # The unique identifier of the benefit.
342
+ # @return [String]
343
+ #
344
+ # @!attribute [rw] catalog
345
+ # The catalog identifier that the benefit belongs to.
346
+ # @return [String]
347
+ #
348
+ # @!attribute [rw] arn
349
+ # The Amazon Resource Name (ARN) of the benefit.
350
+ # @return [String]
351
+ #
352
+ # @!attribute [rw] name
353
+ # The human-readable name of the benefit.
354
+ # @return [String]
355
+ #
356
+ # @!attribute [rw] description
357
+ # A brief description of the benefit and its purpose.
358
+ # @return [String]
359
+ #
360
+ # @!attribute [rw] programs
361
+ # The AWS partner programs that this benefit is associated with.
362
+ # @return [Array<String>]
363
+ #
364
+ # @!attribute [rw] fulfillment_types
365
+ # The available fulfillment types for this benefit.
366
+ # @return [Array<String>]
367
+ #
368
+ # @!attribute [rw] status
369
+ # The current status of the benefit.
370
+ # @return [String]
371
+ #
372
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/BenefitSummary AWS API Documentation
373
+ #
374
+ class BenefitSummary < Struct.new(
375
+ :id,
376
+ :catalog,
377
+ :arn,
378
+ :name,
379
+ :description,
380
+ :programs,
381
+ :fulfillment_types,
382
+ :status)
383
+ SENSITIVE = []
384
+ include Aws::Structure
385
+ end
386
+
387
+ # @!attribute [rw] catalog
388
+ # The catalog identifier that specifies which benefit catalog the
389
+ # application belongs to.
390
+ # @return [String]
391
+ #
392
+ # @!attribute [rw] client_token
393
+ # A unique, case-sensitive identifier to ensure idempotent processing
394
+ # of the cancellation request.
395
+ # @return [String]
396
+ #
397
+ # @!attribute [rw] identifier
398
+ # The unique identifier of the benefit application to cancel.
399
+ # @return [String]
400
+ #
401
+ # @!attribute [rw] reason
402
+ # A descriptive reason explaining why the benefit application is being
403
+ # cancelled.
404
+ # @return [String]
405
+ #
406
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/CancelBenefitApplicationInput AWS API Documentation
407
+ #
408
+ class CancelBenefitApplicationInput < Struct.new(
409
+ :catalog,
410
+ :client_token,
411
+ :identifier,
412
+ :reason)
413
+ SENSITIVE = []
414
+ include Aws::Structure
415
+ end
416
+
417
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/CancelBenefitApplicationOutput AWS API Documentation
418
+ #
419
+ class CancelBenefitApplicationOutput < Aws::EmptyStructure; end
420
+
421
+ # Thrown when the request conflicts with the current state of the
422
+ # resource, such as attempting to modify a resource that has been
423
+ # changed by another process.
424
+ #
425
+ # @!attribute [rw] message
426
+ # A message describing the conflict.
427
+ # @return [String]
428
+ #
429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ConflictException AWS API Documentation
430
+ #
431
+ class ConflictException < Struct.new(
432
+ :message)
433
+ SENSITIVE = []
434
+ include Aws::Structure
435
+ end
436
+
437
+ # Contains information about consumable benefit fulfillment, such as
438
+ # usage quotas or service limits.
439
+ #
440
+ # @!attribute [rw] allocated_amount
441
+ # The total amount of the consumable benefit that has been allocated.
442
+ # @return [Types::MonetaryValue]
443
+ #
444
+ # @!attribute [rw] remaining_amount
445
+ # The remaining amount of the consumable benefit that is still
446
+ # available for use.
447
+ # @return [Types::MonetaryValue]
448
+ #
449
+ # @!attribute [rw] utilized_amount
450
+ # The amount of the consumable benefit that has already been used.
451
+ # @return [Types::MonetaryValue]
452
+ #
453
+ # @!attribute [rw] issuance_details
454
+ # Detailed information about how the consumable benefit was issued and
455
+ # distributed.
456
+ # @return [Types::IssuanceDetail]
457
+ #
458
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ConsumableDetails AWS API Documentation
459
+ #
460
+ class ConsumableDetails < Struct.new(
461
+ :allocated_amount,
462
+ :remaining_amount,
463
+ :utilized_amount,
464
+ :issuance_details)
465
+ SENSITIVE = []
466
+ include Aws::Structure
467
+ end
468
+
469
+ # Represents contact information for a partner representative.
470
+ #
471
+ # @!attribute [rw] email
472
+ # The email address of the contact person.
473
+ # @return [String]
474
+ #
475
+ # @!attribute [rw] first_name
476
+ # The first name of the contact person.
477
+ # @return [String]
478
+ #
479
+ # @!attribute [rw] last_name
480
+ # The last name of the contact person.
481
+ # @return [String]
482
+ #
483
+ # @!attribute [rw] business_title
484
+ # The business title or role of the contact person within the
485
+ # organization.
486
+ # @return [String]
487
+ #
488
+ # @!attribute [rw] phone
489
+ # The phone number of the contact person.
490
+ # @return [String]
491
+ #
492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/Contact AWS API Documentation
493
+ #
494
+ class Contact < Struct.new(
495
+ :email,
496
+ :first_name,
497
+ :last_name,
498
+ :business_title,
499
+ :phone)
500
+ SENSITIVE = [:email, :first_name, :last_name, :phone]
501
+ include Aws::Structure
502
+ end
503
+
504
+ # @!attribute [rw] catalog
505
+ # The catalog identifier that specifies which benefit catalog to
506
+ # create the application in.
507
+ # @return [String]
508
+ #
509
+ # @!attribute [rw] client_token
510
+ # A unique, case-sensitive identifier to ensure idempotent processing
511
+ # of the creation request.
512
+ # @return [String]
513
+ #
514
+ # @!attribute [rw] name
515
+ # A human-readable name for the benefit application.
516
+ # @return [String]
517
+ #
518
+ # @!attribute [rw] description
519
+ # A detailed description of the benefit application and its intended
520
+ # use.
521
+ # @return [String]
522
+ #
523
+ # @!attribute [rw] benefit_identifier
524
+ # The unique identifier of the benefit being requested in this
525
+ # application.
526
+ # @return [String]
527
+ #
528
+ # @!attribute [rw] fulfillment_types
529
+ # The types of fulfillment requested for this benefit application
530
+ # (e.g., credits, access, disbursement).
531
+ # @return [Array<String>]
532
+ #
533
+ # @!attribute [rw] benefit_application_details
534
+ # Detailed information and requirements specific to the benefit being
535
+ # requested.
536
+ # @return [Hash,Array,String,Numeric,Boolean]
537
+ #
538
+ # @!attribute [rw] tags
539
+ # Key-value pairs to categorize and organize the benefit application.
540
+ # @return [Array<Types::Tag>]
541
+ #
542
+ # @!attribute [rw] associated_resources
543
+ # AWS resources that are associated with this benefit application.
544
+ # @return [Array<String>]
545
+ #
546
+ # @!attribute [rw] partner_contacts
547
+ # Contact information for partner representatives responsible for this
548
+ # benefit application.
549
+ # @return [Array<Types::Contact>]
550
+ #
551
+ # @!attribute [rw] file_details
552
+ # Supporting documents and files attached to the benefit application.
553
+ # @return [Array<Types::FileInput>]
554
+ #
555
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/CreateBenefitApplicationInput AWS API Documentation
556
+ #
557
+ class CreateBenefitApplicationInput < Struct.new(
558
+ :catalog,
559
+ :client_token,
560
+ :name,
561
+ :description,
562
+ :benefit_identifier,
563
+ :fulfillment_types,
564
+ :benefit_application_details,
565
+ :tags,
566
+ :associated_resources,
567
+ :partner_contacts,
568
+ :file_details)
569
+ SENSITIVE = []
570
+ include Aws::Structure
571
+ end
572
+
573
+ # @!attribute [rw] id
574
+ # The unique identifier assigned to the newly created benefit
575
+ # application.
576
+ # @return [String]
577
+ #
578
+ # @!attribute [rw] arn
579
+ # The Amazon Resource Name (ARN) of the newly created benefit
580
+ # application.
581
+ # @return [String]
582
+ #
583
+ # @!attribute [rw] revision
584
+ # The initial revision number of the newly created benefit
585
+ # application.
586
+ # @return [String]
587
+ #
588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/CreateBenefitApplicationOutput AWS API Documentation
589
+ #
590
+ class CreateBenefitApplicationOutput < Struct.new(
591
+ :id,
592
+ :arn,
593
+ :revision)
594
+ SENSITIVE = []
595
+ include Aws::Structure
596
+ end
597
+
598
+ # Represents an AWS credit code that can be applied to an AWS account
599
+ # for billing purposes.
600
+ #
601
+ # @!attribute [rw] aws_account_id
602
+ # The AWS account ID that the credit code is associated with or can be
603
+ # applied to.
604
+ # @return [String]
605
+ #
606
+ # @!attribute [rw] value
607
+ # The monetary value of the credit code.
608
+ # @return [Types::MonetaryValue]
609
+ #
610
+ # @!attribute [rw] aws_credit_code
611
+ # The actual credit code string that can be redeemed in the AWS
612
+ # billing console.
613
+ # @return [String]
614
+ #
615
+ # @!attribute [rw] status
616
+ # The current status of the credit code (e.g., active, redeemed,
617
+ # expired).
618
+ # @return [String]
619
+ #
620
+ # @!attribute [rw] issued_at
621
+ # The timestamp when the credit code was issued.
622
+ # @return [Time]
623
+ #
624
+ # @!attribute [rw] expires_at
625
+ # The timestamp when the credit code expires and can no longer be
626
+ # redeemed.
627
+ # @return [Time]
628
+ #
629
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/CreditCode AWS API Documentation
630
+ #
631
+ class CreditCode < Struct.new(
632
+ :aws_account_id,
633
+ :value,
634
+ :aws_credit_code,
635
+ :status,
636
+ :issued_at,
637
+ :expires_at)
638
+ SENSITIVE = []
639
+ include Aws::Structure
640
+ end
641
+
642
+ # Contains information about credit-based benefit fulfillment, including
643
+ # AWS promotional credits.
644
+ #
645
+ # @!attribute [rw] allocated_amount
646
+ # The total amount of credits that have been allocated for this
647
+ # benefit.
648
+ # @return [Types::MonetaryValue]
649
+ #
650
+ # @!attribute [rw] issued_amount
651
+ # The amount of credits that have actually been issued and are
652
+ # available for use.
653
+ # @return [Types::MonetaryValue]
654
+ #
655
+ # @!attribute [rw] codes
656
+ # A list of credit codes that have been generated for this benefit
657
+ # allocation.
658
+ # @return [Array<Types::CreditCode>]
659
+ #
660
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/CreditDetails AWS API Documentation
661
+ #
662
+ class CreditDetails < Struct.new(
663
+ :allocated_amount,
664
+ :issued_amount,
665
+ :codes)
666
+ SENSITIVE = []
667
+ include Aws::Structure
668
+ end
669
+
670
+ # @!attribute [rw] catalog
671
+ # The catalog identifier that specifies which benefit catalog the
672
+ # application belongs to.
673
+ # @return [String]
674
+ #
675
+ # @!attribute [rw] benefit_application_identifier
676
+ # The unique identifier of the benefit application to disassociate the
677
+ # resource from.
678
+ # @return [String]
679
+ #
680
+ # @!attribute [rw] resource_arn
681
+ # The Amazon Resource Name (ARN) of the AWS resource to disassociate
682
+ # from the benefit application.
683
+ # @return [String]
684
+ #
685
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/DisassociateBenefitApplicationResourceInput AWS API Documentation
686
+ #
687
+ class DisassociateBenefitApplicationResourceInput < Struct.new(
688
+ :catalog,
689
+ :benefit_application_identifier,
690
+ :resource_arn)
691
+ SENSITIVE = []
692
+ include Aws::Structure
693
+ end
694
+
695
+ # @!attribute [rw] id
696
+ # The unique identifier of the benefit application after the resource
697
+ # disassociation.
698
+ # @return [String]
699
+ #
700
+ # @!attribute [rw] arn
701
+ # The Amazon Resource Name (ARN) of the benefit application after the
702
+ # resource disassociation.
703
+ # @return [String]
704
+ #
705
+ # @!attribute [rw] revision
706
+ # The updated revision number of the benefit application after the
707
+ # resource disassociation.
708
+ # @return [String]
709
+ #
710
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/DisassociateBenefitApplicationResourceOutput AWS API Documentation
711
+ #
712
+ class DisassociateBenefitApplicationResourceOutput < Struct.new(
713
+ :id,
714
+ :arn,
715
+ :revision)
716
+ SENSITIVE = []
717
+ include Aws::Structure
718
+ end
719
+
720
+ # Contains information about disbursement-based benefit fulfillment,
721
+ # such as direct payments or reimbursements.
722
+ #
723
+ # @!attribute [rw] disbursed_amount
724
+ # The total amount that has been disbursed for this benefit
725
+ # allocation.
726
+ # @return [Types::MonetaryValue]
727
+ #
728
+ # @!attribute [rw] issuance_details
729
+ # Detailed information about how the disbursement was issued and
730
+ # processed.
731
+ # @return [Types::IssuanceDetail]
732
+ #
733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/DisbursementDetails AWS API Documentation
734
+ #
735
+ class DisbursementDetails < Struct.new(
736
+ :disbursed_amount,
737
+ :issuance_details)
738
+ SENSITIVE = []
739
+ include Aws::Structure
740
+ end
741
+
742
+ # Represents detailed information about a file attached to a benefit
743
+ # application.
744
+ #
745
+ # @!attribute [rw] file_uri
746
+ # The URI or location where the file is stored.
747
+ # @return [String]
748
+ #
749
+ # @!attribute [rw] business_use_case
750
+ # The business purpose or use case that this file supports in the
751
+ # benefit application.
752
+ # @return [String]
753
+ #
754
+ # @!attribute [rw] file_name
755
+ # The original name of the uploaded file.
756
+ # @return [String]
757
+ #
758
+ # @!attribute [rw] file_status
759
+ # The current processing status of the file (e.g., uploaded,
760
+ # processing, approved, rejected).
761
+ # @return [String]
762
+ #
763
+ # @!attribute [rw] file_status_reason
764
+ # The reason for that particulat file status.
765
+ # @return [String]
766
+ #
767
+ # @!attribute [rw] file_type
768
+ # The type or category of the file (e.g., document, image,
769
+ # spreadsheet).
770
+ # @return [String]
771
+ #
772
+ # @!attribute [rw] created_by
773
+ # The identifier of the user who uploaded the file.
774
+ # @return [String]
775
+ #
776
+ # @!attribute [rw] created_at
777
+ # The timestamp when the file was uploaded.
778
+ # @return [Time]
779
+ #
780
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/FileDetail AWS API Documentation
781
+ #
782
+ class FileDetail < Struct.new(
783
+ :file_uri,
784
+ :business_use_case,
785
+ :file_name,
786
+ :file_status,
787
+ :file_status_reason,
788
+ :file_type,
789
+ :created_by,
790
+ :created_at)
791
+ SENSITIVE = []
792
+ include Aws::Structure
793
+ end
794
+
795
+ # Represents input information for uploading a file to a benefit
796
+ # application.
797
+ #
798
+ # @!attribute [rw] file_uri
799
+ # The URI or location where the file should be stored or has been
800
+ # uploaded.
801
+ # @return [String]
802
+ #
803
+ # @!attribute [rw] business_use_case
804
+ # The business purpose or use case that this file supports in the
805
+ # benefit application.
806
+ # @return [String]
807
+ #
808
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/FileInput AWS API Documentation
809
+ #
810
+ class FileInput < Struct.new(
811
+ :file_uri,
812
+ :business_use_case)
813
+ SENSITIVE = []
814
+ include Aws::Structure
815
+ end
816
+
817
+ # Contains comprehensive information about how a benefit allocation is
818
+ # fulfilled across different fulfillment types.
819
+ #
820
+ # @note FulfillmentDetails is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of FulfillmentDetails corresponding to the set member.
821
+ #
822
+ # @!attribute [rw] disbursement_details
823
+ # Details about disbursement-based fulfillment, if applicable to this
824
+ # benefit allocation.
825
+ # @return [Types::DisbursementDetails]
826
+ #
827
+ # @!attribute [rw] consumable_details
828
+ # Details about consumable-based fulfillment, if applicable to this
829
+ # benefit allocation.
830
+ # @return [Types::ConsumableDetails]
831
+ #
832
+ # @!attribute [rw] credit_details
833
+ # Details about credit-based fulfillment, if applicable to this
834
+ # benefit allocation.
835
+ # @return [Types::CreditDetails]
836
+ #
837
+ # @!attribute [rw] access_details
838
+ # Details about access-based fulfillment, if applicable to this
839
+ # benefit allocation.
840
+ # @return [Types::AccessDetails]
841
+ #
842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/FulfillmentDetails AWS API Documentation
843
+ #
844
+ class FulfillmentDetails < Struct.new(
845
+ :disbursement_details,
846
+ :consumable_details,
847
+ :credit_details,
848
+ :access_details,
849
+ :unknown)
850
+ SENSITIVE = []
851
+ include Aws::Structure
852
+ include Aws::Structure::Union
853
+
854
+ class DisbursementDetails < FulfillmentDetails; end
855
+ class ConsumableDetails < FulfillmentDetails; end
856
+ class CreditDetails < FulfillmentDetails; end
857
+ class AccessDetails < FulfillmentDetails; end
858
+ class Unknown < FulfillmentDetails; end
859
+ end
860
+
861
+ # @!attribute [rw] catalog
862
+ # The catalog identifier that specifies which benefit catalog to
863
+ # query.
864
+ # @return [String]
865
+ #
866
+ # @!attribute [rw] identifier
867
+ # The unique identifier of the benefit allocation to retrieve.
868
+ # @return [String]
869
+ #
870
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/GetBenefitAllocationInput AWS API Documentation
871
+ #
872
+ class GetBenefitAllocationInput < Struct.new(
873
+ :catalog,
874
+ :identifier)
875
+ SENSITIVE = []
876
+ include Aws::Structure
877
+ end
878
+
879
+ # @!attribute [rw] id
880
+ # The unique identifier of the benefit allocation.
881
+ # @return [String]
882
+ #
883
+ # @!attribute [rw] catalog
884
+ # The catalog identifier that the benefit allocation belongs to.
885
+ # @return [String]
886
+ #
887
+ # @!attribute [rw] arn
888
+ # The Amazon Resource Name (ARN) of the benefit allocation.
889
+ # @return [String]
890
+ #
891
+ # @!attribute [rw] name
892
+ # The human-readable name of the benefit allocation.
893
+ # @return [String]
894
+ #
895
+ # @!attribute [rw] description
896
+ # A detailed description of the benefit allocation.
897
+ # @return [String]
898
+ #
899
+ # @!attribute [rw] status
900
+ # The current status of the benefit allocation (e.g., active, expired,
901
+ # consumed).
902
+ # @return [String]
903
+ #
904
+ # @!attribute [rw] status_reason
905
+ # Additional information explaining the current status of the benefit
906
+ # allocation.
907
+ # @return [String]
908
+ #
909
+ # @!attribute [rw] benefit_application_id
910
+ # The identifier of the benefit application that resulted in this
911
+ # allocation.
912
+ # @return [String]
913
+ #
914
+ # @!attribute [rw] benefit_id
915
+ # The identifier of the benefit that this allocation is based on.
916
+ # @return [String]
917
+ #
918
+ # @!attribute [rw] fulfillment_type
919
+ # The fulfillment type used for this benefit allocation.
920
+ # @return [String]
921
+ #
922
+ # @!attribute [rw] applicable_benefit_ids
923
+ # A list of benefit identifiers that this allocation can be applied
924
+ # to.
925
+ # @return [Array<String>]
926
+ #
927
+ # @!attribute [rw] fulfillment_detail
928
+ # Detailed information about how the benefit allocation is fulfilled.
929
+ # @return [Types::FulfillmentDetails]
930
+ #
931
+ # @!attribute [rw] created_at
932
+ # The timestamp when the benefit allocation was created.
933
+ # @return [Time]
934
+ #
935
+ # @!attribute [rw] updated_at
936
+ # The timestamp when the benefit allocation was last updated.
937
+ # @return [Time]
938
+ #
939
+ # @!attribute [rw] starts_at
940
+ # The timestamp when the benefit allocation becomes active and usable.
941
+ # @return [Time]
942
+ #
943
+ # @!attribute [rw] expires_at
944
+ # The timestamp when the benefit allocation expires and is no longer
945
+ # usable.
946
+ # @return [Time]
947
+ #
948
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/GetBenefitAllocationOutput AWS API Documentation
949
+ #
950
+ class GetBenefitAllocationOutput < Struct.new(
951
+ :id,
952
+ :catalog,
953
+ :arn,
954
+ :name,
955
+ :description,
956
+ :status,
957
+ :status_reason,
958
+ :benefit_application_id,
959
+ :benefit_id,
960
+ :fulfillment_type,
961
+ :applicable_benefit_ids,
962
+ :fulfillment_detail,
963
+ :created_at,
964
+ :updated_at,
965
+ :starts_at,
966
+ :expires_at)
967
+ SENSITIVE = []
968
+ include Aws::Structure
969
+ end
970
+
971
+ # @!attribute [rw] catalog
972
+ # The catalog identifier that specifies which benefit catalog to
973
+ # query.
974
+ # @return [String]
975
+ #
976
+ # @!attribute [rw] identifier
977
+ # The unique identifier of the benefit application to retrieve.
978
+ # @return [String]
979
+ #
980
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/GetBenefitApplicationInput AWS API Documentation
981
+ #
982
+ class GetBenefitApplicationInput < Struct.new(
983
+ :catalog,
984
+ :identifier)
985
+ SENSITIVE = []
986
+ include Aws::Structure
987
+ end
988
+
989
+ # @!attribute [rw] id
990
+ # The unique identifier of the benefit application.
991
+ # @return [String]
992
+ #
993
+ # @!attribute [rw] arn
994
+ # The Amazon Resource Name (ARN) of the benefit application.
995
+ # @return [String]
996
+ #
997
+ # @!attribute [rw] catalog
998
+ # The catalog identifier that the benefit application belongs to.
999
+ # @return [String]
1000
+ #
1001
+ # @!attribute [rw] benefit_id
1002
+ # The identifier of the benefit being requested in this application.
1003
+ # @return [String]
1004
+ #
1005
+ # @!attribute [rw] name
1006
+ # The human-readable name of the benefit application.
1007
+ # @return [String]
1008
+ #
1009
+ # @!attribute [rw] description
1010
+ # A detailed description of the benefit application.
1011
+ # @return [String]
1012
+ #
1013
+ # @!attribute [rw] fulfillment_types
1014
+ # The fulfillment types requested for this benefit application.
1015
+ # @return [Array<String>]
1016
+ #
1017
+ # @!attribute [rw] benefit_application_details
1018
+ # Detailed information and requirements specific to the benefit being
1019
+ # requested.
1020
+ # @return [Hash,Array,String,Numeric,Boolean]
1021
+ #
1022
+ # @!attribute [rw] programs
1023
+ # The AWS partner programs associated with this benefit application.
1024
+ # @return [Array<String>]
1025
+ #
1026
+ # @!attribute [rw] status
1027
+ # The current processing status of the benefit application.
1028
+ # @return [String]
1029
+ #
1030
+ # @!attribute [rw] stage
1031
+ # The current stage in the benefit application processing workflow.
1032
+ # @return [String]
1033
+ #
1034
+ # @!attribute [rw] status_reason
1035
+ # Additional information explaining the current status of the benefit
1036
+ # application.
1037
+ # @return [String]
1038
+ #
1039
+ # @!attribute [rw] status_reason_code
1040
+ # A standardized code representing the reason for the current status.
1041
+ # @return [String]
1042
+ #
1043
+ # @!attribute [rw] status_reason_codes
1044
+ # The list of standardized codes representing the reason for the
1045
+ # current status.
1046
+ # @return [Array<String>]
1047
+ #
1048
+ # @!attribute [rw] created_at
1049
+ # The timestamp when the benefit application was created.
1050
+ # @return [Time]
1051
+ #
1052
+ # @!attribute [rw] updated_at
1053
+ # The timestamp when the benefit application was last updated.
1054
+ # @return [Time]
1055
+ #
1056
+ # @!attribute [rw] revision
1057
+ # The current revision number of the benefit application.
1058
+ # @return [String]
1059
+ #
1060
+ # @!attribute [rw] associated_resources
1061
+ # AWS resources that are associated with this benefit application.
1062
+ # @return [Array<String>]
1063
+ #
1064
+ # @!attribute [rw] partner_contacts
1065
+ # Contact information for partner representatives responsible for this
1066
+ # benefit application.
1067
+ # @return [Array<Types::Contact>]
1068
+ #
1069
+ # @!attribute [rw] file_details
1070
+ # Supporting documents and files attached to the benefit application.
1071
+ # @return [Array<Types::FileDetail>]
1072
+ #
1073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/GetBenefitApplicationOutput AWS API Documentation
1074
+ #
1075
+ class GetBenefitApplicationOutput < Struct.new(
1076
+ :id,
1077
+ :arn,
1078
+ :catalog,
1079
+ :benefit_id,
1080
+ :name,
1081
+ :description,
1082
+ :fulfillment_types,
1083
+ :benefit_application_details,
1084
+ :programs,
1085
+ :status,
1086
+ :stage,
1087
+ :status_reason,
1088
+ :status_reason_code,
1089
+ :status_reason_codes,
1090
+ :created_at,
1091
+ :updated_at,
1092
+ :revision,
1093
+ :associated_resources,
1094
+ :partner_contacts,
1095
+ :file_details)
1096
+ SENSITIVE = []
1097
+ include Aws::Structure
1098
+ end
1099
+
1100
+ # @!attribute [rw] catalog
1101
+ # The catalog identifier that specifies which benefit catalog to
1102
+ # query.
1103
+ # @return [String]
1104
+ #
1105
+ # @!attribute [rw] identifier
1106
+ # The unique identifier of the benefit to retrieve.
1107
+ # @return [String]
1108
+ #
1109
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/GetBenefitInput AWS API Documentation
1110
+ #
1111
+ class GetBenefitInput < Struct.new(
1112
+ :catalog,
1113
+ :identifier)
1114
+ SENSITIVE = []
1115
+ include Aws::Structure
1116
+ end
1117
+
1118
+ # @!attribute [rw] id
1119
+ # The unique identifier of the benefit.
1120
+ # @return [String]
1121
+ #
1122
+ # @!attribute [rw] catalog
1123
+ # The catalog identifier that the benefit belongs to.
1124
+ # @return [String]
1125
+ #
1126
+ # @!attribute [rw] arn
1127
+ # The Amazon Resource Name (ARN) of the benefit.
1128
+ # @return [String]
1129
+ #
1130
+ # @!attribute [rw] name
1131
+ # The human-readable name of the benefit.
1132
+ # @return [String]
1133
+ #
1134
+ # @!attribute [rw] description
1135
+ # A detailed description of the benefit and its purpose.
1136
+ # @return [String]
1137
+ #
1138
+ # @!attribute [rw] programs
1139
+ # The AWS partner programs that this benefit is associated with.
1140
+ # @return [Array<String>]
1141
+ #
1142
+ # @!attribute [rw] fulfillment_types
1143
+ # The available fulfillment types for this benefit (e.g., credits,
1144
+ # access, disbursement).
1145
+ # @return [Array<String>]
1146
+ #
1147
+ # @!attribute [rw] benefit_request_schema
1148
+ # The schema definition that describes the required fields for
1149
+ # requesting this benefit.
1150
+ # @return [Hash,Array,String,Numeric,Boolean]
1151
+ #
1152
+ # @!attribute [rw] status
1153
+ # The current status of the benefit (e.g., active, inactive,
1154
+ # deprecated).
1155
+ # @return [String]
1156
+ #
1157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/GetBenefitOutput AWS API Documentation
1158
+ #
1159
+ class GetBenefitOutput < Struct.new(
1160
+ :id,
1161
+ :catalog,
1162
+ :arn,
1163
+ :name,
1164
+ :description,
1165
+ :programs,
1166
+ :fulfillment_types,
1167
+ :benefit_request_schema,
1168
+ :status)
1169
+ SENSITIVE = []
1170
+ include Aws::Structure
1171
+ end
1172
+
1173
+ # Thrown when an unexpected error occurs on the server side during
1174
+ # request processing.
1175
+ #
1176
+ # @!attribute [rw] message
1177
+ # A message describing the internal server error.
1178
+ # @return [String]
1179
+ #
1180
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/InternalServerException AWS API Documentation
1181
+ #
1182
+ class InternalServerException < Struct.new(
1183
+ :message)
1184
+ SENSITIVE = []
1185
+ include Aws::Structure
1186
+ end
1187
+
1188
+ # Represents detailed information about a specific issuance of benefit
1189
+ # value.
1190
+ #
1191
+ # @!attribute [rw] issuance_id
1192
+ # The unique identifier for this specific issuance.
1193
+ # @return [String]
1194
+ #
1195
+ # @!attribute [rw] issuance_amount
1196
+ # The monetary amount or value that was issued in this specific
1197
+ # issuance.
1198
+ # @return [Types::MonetaryValue]
1199
+ #
1200
+ # @!attribute [rw] issued_at
1201
+ # The timestamp when this specific issuance was processed.
1202
+ # @return [Time]
1203
+ #
1204
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/IssuanceDetail AWS API Documentation
1205
+ #
1206
+ class IssuanceDetail < Struct.new(
1207
+ :issuance_id,
1208
+ :issuance_amount,
1209
+ :issued_at)
1210
+ SENSITIVE = []
1211
+ include Aws::Structure
1212
+ end
1213
+
1214
+ # @!attribute [rw] catalog
1215
+ # The catalog identifier to filter benefit allocations by catalog.
1216
+ # @return [String]
1217
+ #
1218
+ # @!attribute [rw] fulfillment_types
1219
+ # Filter benefit allocations by specific fulfillment types.
1220
+ # @return [Array<String>]
1221
+ #
1222
+ # @!attribute [rw] benefit_identifiers
1223
+ # Filter benefit allocations by specific benefit identifiers.
1224
+ # @return [Array<String>]
1225
+ #
1226
+ # @!attribute [rw] benefit_application_identifiers
1227
+ # Filter benefit allocations by specific benefit application
1228
+ # identifiers.
1229
+ # @return [Array<String>]
1230
+ #
1231
+ # @!attribute [rw] status
1232
+ # Filter benefit allocations by their current status.
1233
+ # @return [Array<String>]
1234
+ #
1235
+ # @!attribute [rw] max_results
1236
+ # The maximum number of benefit allocations to return in a single
1237
+ # response.
1238
+ # @return [Integer]
1239
+ #
1240
+ # @!attribute [rw] next_token
1241
+ # A pagination token to retrieve the next set of results from a
1242
+ # previous request.
1243
+ # @return [String]
1244
+ #
1245
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListBenefitAllocationsInput AWS API Documentation
1246
+ #
1247
+ class ListBenefitAllocationsInput < Struct.new(
1248
+ :catalog,
1249
+ :fulfillment_types,
1250
+ :benefit_identifiers,
1251
+ :benefit_application_identifiers,
1252
+ :status,
1253
+ :max_results,
1254
+ :next_token)
1255
+ SENSITIVE = []
1256
+ include Aws::Structure
1257
+ end
1258
+
1259
+ # @!attribute [rw] benefit_allocation_summaries
1260
+ # A list of benefit allocation summaries matching the specified
1261
+ # criteria.
1262
+ # @return [Array<Types::BenefitAllocationSummary>]
1263
+ #
1264
+ # @!attribute [rw] next_token
1265
+ # A pagination token to retrieve the next set of results, if more
1266
+ # results are available.
1267
+ # @return [String]
1268
+ #
1269
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListBenefitAllocationsOutput AWS API Documentation
1270
+ #
1271
+ class ListBenefitAllocationsOutput < Struct.new(
1272
+ :benefit_allocation_summaries,
1273
+ :next_token)
1274
+ SENSITIVE = []
1275
+ include Aws::Structure
1276
+ end
1277
+
1278
+ # @!attribute [rw] catalog
1279
+ # The catalog identifier to filter benefit applications by catalog.
1280
+ # @return [String]
1281
+ #
1282
+ # @!attribute [rw] programs
1283
+ # Filter benefit applications by specific AWS partner programs.
1284
+ # @return [Array<String>]
1285
+ #
1286
+ # @!attribute [rw] fulfillment_types
1287
+ # Filter benefit applications by specific fulfillment types.
1288
+ # @return [Array<String>]
1289
+ #
1290
+ # @!attribute [rw] benefit_identifiers
1291
+ # Filter benefit applications by specific benefit identifiers.
1292
+ # @return [Array<String>]
1293
+ #
1294
+ # @!attribute [rw] status
1295
+ # Filter benefit applications by their current processing status.
1296
+ # @return [Array<String>]
1297
+ #
1298
+ # @!attribute [rw] stages
1299
+ # Filter benefit applications by their current processing stage.
1300
+ # @return [Array<String>]
1301
+ #
1302
+ # @!attribute [rw] associated_resources
1303
+ # Filter benefit applications by associated AWS resources.
1304
+ # @return [Array<Types::AssociatedResource>]
1305
+ #
1306
+ # @!attribute [rw] associated_resource_arns
1307
+ # Filter benefit applications by specific AWS resource ARNs.
1308
+ # @return [Array<String>]
1309
+ #
1310
+ # @!attribute [rw] max_results
1311
+ # The maximum number of benefit applications to return in a single
1312
+ # response.
1313
+ # @return [Integer]
1314
+ #
1315
+ # @!attribute [rw] next_token
1316
+ # A pagination token to retrieve the next set of results from a
1317
+ # previous request.
1318
+ # @return [String]
1319
+ #
1320
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListBenefitApplicationsInput AWS API Documentation
1321
+ #
1322
+ class ListBenefitApplicationsInput < Struct.new(
1323
+ :catalog,
1324
+ :programs,
1325
+ :fulfillment_types,
1326
+ :benefit_identifiers,
1327
+ :status,
1328
+ :stages,
1329
+ :associated_resources,
1330
+ :associated_resource_arns,
1331
+ :max_results,
1332
+ :next_token)
1333
+ SENSITIVE = []
1334
+ include Aws::Structure
1335
+ end
1336
+
1337
+ # @!attribute [rw] benefit_application_summaries
1338
+ # A list of benefit application summaries matching the specified
1339
+ # criteria.
1340
+ # @return [Array<Types::BenefitApplicationSummary>]
1341
+ #
1342
+ # @!attribute [rw] next_token
1343
+ # A pagination token to retrieve the next set of results, if more
1344
+ # results are available.
1345
+ # @return [String]
1346
+ #
1347
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListBenefitApplicationsOutput AWS API Documentation
1348
+ #
1349
+ class ListBenefitApplicationsOutput < Struct.new(
1350
+ :benefit_application_summaries,
1351
+ :next_token)
1352
+ SENSITIVE = []
1353
+ include Aws::Structure
1354
+ end
1355
+
1356
+ # @!attribute [rw] catalog
1357
+ # The catalog identifier to filter benefits by catalog.
1358
+ # @return [String]
1359
+ #
1360
+ # @!attribute [rw] programs
1361
+ # Filter benefits by specific AWS partner programs.
1362
+ # @return [Array<String>]
1363
+ #
1364
+ # @!attribute [rw] fulfillment_types
1365
+ # Filter benefits by specific fulfillment types.
1366
+ # @return [Array<String>]
1367
+ #
1368
+ # @!attribute [rw] status
1369
+ # Filter benefits by their current status.
1370
+ # @return [Array<String>]
1371
+ #
1372
+ # @!attribute [rw] max_results
1373
+ # The maximum number of benefits to return in a single response.
1374
+ # @return [Integer]
1375
+ #
1376
+ # @!attribute [rw] next_token
1377
+ # A pagination token to retrieve the next set of results from a
1378
+ # previous request.
1379
+ # @return [String]
1380
+ #
1381
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListBenefitsInput AWS API Documentation
1382
+ #
1383
+ class ListBenefitsInput < Struct.new(
1384
+ :catalog,
1385
+ :programs,
1386
+ :fulfillment_types,
1387
+ :status,
1388
+ :max_results,
1389
+ :next_token)
1390
+ SENSITIVE = []
1391
+ include Aws::Structure
1392
+ end
1393
+
1394
+ # @!attribute [rw] benefit_summaries
1395
+ # A list of benefit summaries matching the specified criteria.
1396
+ # @return [Array<Types::BenefitSummary>]
1397
+ #
1398
+ # @!attribute [rw] next_token
1399
+ # A pagination token to retrieve the next set of results, if more
1400
+ # results are available.
1401
+ # @return [String]
1402
+ #
1403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListBenefitsOutput AWS API Documentation
1404
+ #
1405
+ class ListBenefitsOutput < Struct.new(
1406
+ :benefit_summaries,
1407
+ :next_token)
1408
+ SENSITIVE = []
1409
+ include Aws::Structure
1410
+ end
1411
+
1412
+ # @!attribute [rw] resource_arn
1413
+ # The Amazon Resource Name (ARN) of the resource to list tags for.
1414
+ # @return [String]
1415
+ #
1416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListTagsForResourceRequest AWS API Documentation
1417
+ #
1418
+ class ListTagsForResourceRequest < Struct.new(
1419
+ :resource_arn)
1420
+ SENSITIVE = []
1421
+ include Aws::Structure
1422
+ end
1423
+
1424
+ # @!attribute [rw] tags
1425
+ # A list of key-value pairs representing the tags associated with the
1426
+ # resource.
1427
+ # @return [Array<Types::Tag>]
1428
+ #
1429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ListTagsForResourceResponse AWS API Documentation
1430
+ #
1431
+ class ListTagsForResourceResponse < Struct.new(
1432
+ :tags)
1433
+ SENSITIVE = []
1434
+ include Aws::Structure
1435
+ end
1436
+
1437
+ # Represents a monetary amount with its associated currency.
1438
+ #
1439
+ # @!attribute [rw] amount
1440
+ # The numeric amount of the monetary value.
1441
+ # @return [String]
1442
+ #
1443
+ # @!attribute [rw] currency_code
1444
+ # The ISO 4217 currency code (e.g., USD, EUR) for the monetary amount.
1445
+ # @return [String]
1446
+ #
1447
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/MonetaryValue AWS API Documentation
1448
+ #
1449
+ class MonetaryValue < Struct.new(
1450
+ :amount,
1451
+ :currency_code)
1452
+ SENSITIVE = []
1453
+ include Aws::Structure
1454
+ end
1455
+
1456
+ # @!attribute [rw] catalog
1457
+ # The catalog identifier that specifies which benefit catalog the
1458
+ # application belongs to.
1459
+ # @return [String]
1460
+ #
1461
+ # @!attribute [rw] client_token
1462
+ # A unique, case-sensitive identifier to ensure idempotent processing
1463
+ # of the recall request.
1464
+ # @return [String]
1465
+ #
1466
+ # @!attribute [rw] identifier
1467
+ # The unique identifier of the benefit application to recall.
1468
+ # @return [String]
1469
+ #
1470
+ # @!attribute [rw] reason
1471
+ # A descriptive reason explaining why the benefit application is being
1472
+ # recalled.
1473
+ # @return [String]
1474
+ #
1475
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/RecallBenefitApplicationInput AWS API Documentation
1476
+ #
1477
+ class RecallBenefitApplicationInput < Struct.new(
1478
+ :catalog,
1479
+ :client_token,
1480
+ :identifier,
1481
+ :reason)
1482
+ SENSITIVE = []
1483
+ include Aws::Structure
1484
+ end
1485
+
1486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/RecallBenefitApplicationOutput AWS API Documentation
1487
+ #
1488
+ class RecallBenefitApplicationOutput < Aws::EmptyStructure; end
1489
+
1490
+ # Thrown when the requested resource cannot be found or does not exist.
1491
+ #
1492
+ # @!attribute [rw] message
1493
+ # A message describing the resource not found error.
1494
+ # @return [String]
1495
+ #
1496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ResourceNotFoundException AWS API Documentation
1497
+ #
1498
+ class ResourceNotFoundException < Struct.new(
1499
+ :message)
1500
+ SENSITIVE = []
1501
+ include Aws::Structure
1502
+ end
1503
+
1504
+ # Thrown when the request would exceed the service quotas or limits for
1505
+ # the account.
1506
+ #
1507
+ # @!attribute [rw] message
1508
+ # A message describing the service quota exceeded error.
1509
+ # @return [String]
1510
+ #
1511
+ # @!attribute [rw] resource_id
1512
+ # The identifier of the resource that would exceed the quota.
1513
+ # @return [String]
1514
+ #
1515
+ # @!attribute [rw] resource_type
1516
+ # The type of the resource that would exceed the quota.
1517
+ # @return [String]
1518
+ #
1519
+ # @!attribute [rw] quota_code
1520
+ # The code identifying the specific quota that would be exceeded.
1521
+ # @return [String]
1522
+ #
1523
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ServiceQuotaExceededException AWS API Documentation
1524
+ #
1525
+ class ServiceQuotaExceededException < Struct.new(
1526
+ :message,
1527
+ :resource_id,
1528
+ :resource_type,
1529
+ :quota_code)
1530
+ SENSITIVE = []
1531
+ include Aws::Structure
1532
+ end
1533
+
1534
+ # @!attribute [rw] catalog
1535
+ # The catalog identifier that specifies which benefit catalog the
1536
+ # application belongs to.
1537
+ # @return [String]
1538
+ #
1539
+ # @!attribute [rw] identifier
1540
+ # The unique identifier of the benefit application to submit.
1541
+ # @return [String]
1542
+ #
1543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/SubmitBenefitApplicationInput AWS API Documentation
1544
+ #
1545
+ class SubmitBenefitApplicationInput < Struct.new(
1546
+ :catalog,
1547
+ :identifier)
1548
+ SENSITIVE = []
1549
+ include Aws::Structure
1550
+ end
1551
+
1552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/SubmitBenefitApplicationOutput AWS API Documentation
1553
+ #
1554
+ class SubmitBenefitApplicationOutput < Aws::EmptyStructure; end
1555
+
1556
+ # Represents a key-value pair used for categorizing and organizing AWS
1557
+ # resources.
1558
+ #
1559
+ # @!attribute [rw] key
1560
+ # The tag key, which acts as a category or label for the tag.
1561
+ # @return [String]
1562
+ #
1563
+ # @!attribute [rw] value
1564
+ # The tag value, which provides additional information or context for
1565
+ # the tag key.
1566
+ # @return [String]
1567
+ #
1568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/Tag AWS API Documentation
1569
+ #
1570
+ class Tag < Struct.new(
1571
+ :key,
1572
+ :value)
1573
+ SENSITIVE = []
1574
+ include Aws::Structure
1575
+ end
1576
+
1577
+ # @!attribute [rw] resource_arn
1578
+ # The Amazon Resource Name (ARN) of the resource to add tags to.
1579
+ # @return [String]
1580
+ #
1581
+ # @!attribute [rw] tags
1582
+ # A list of key-value pairs to add as tags to the resource.
1583
+ # @return [Array<Types::Tag>]
1584
+ #
1585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/TagResourceRequest AWS API Documentation
1586
+ #
1587
+ class TagResourceRequest < Struct.new(
1588
+ :resource_arn,
1589
+ :tags)
1590
+ SENSITIVE = []
1591
+ include Aws::Structure
1592
+ end
1593
+
1594
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/TagResourceResponse AWS API Documentation
1595
+ #
1596
+ class TagResourceResponse < Aws::EmptyStructure; end
1597
+
1598
+ # Thrown when the request rate exceeds the allowed limits and the
1599
+ # request is being throttled.
1600
+ #
1601
+ # @!attribute [rw] message
1602
+ # A message describing the throttling error.
1603
+ # @return [String]
1604
+ #
1605
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ThrottlingException AWS API Documentation
1606
+ #
1607
+ class ThrottlingException < Struct.new(
1608
+ :message)
1609
+ SENSITIVE = []
1610
+ include Aws::Structure
1611
+ end
1612
+
1613
+ # @!attribute [rw] resource_arn
1614
+ # The Amazon Resource Name (ARN) of the resource to remove tags from.
1615
+ # @return [String]
1616
+ #
1617
+ # @!attribute [rw] tag_keys
1618
+ # A list of tag keys to remove from the resource.
1619
+ # @return [Array<String>]
1620
+ #
1621
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/UntagResourceRequest AWS API Documentation
1622
+ #
1623
+ class UntagResourceRequest < Struct.new(
1624
+ :resource_arn,
1625
+ :tag_keys)
1626
+ SENSITIVE = []
1627
+ include Aws::Structure
1628
+ end
1629
+
1630
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/UntagResourceResponse AWS API Documentation
1631
+ #
1632
+ class UntagResourceResponse < Aws::EmptyStructure; end
1633
+
1634
+ # @!attribute [rw] catalog
1635
+ # The catalog identifier that specifies which benefit catalog the
1636
+ # application belongs to.
1637
+ # @return [String]
1638
+ #
1639
+ # @!attribute [rw] client_token
1640
+ # A unique, case-sensitive identifier to ensure idempotent processing
1641
+ # of the update request.
1642
+ # @return [String]
1643
+ #
1644
+ # @!attribute [rw] name
1645
+ # The updated human-readable name for the benefit application.
1646
+ # @return [String]
1647
+ #
1648
+ # @!attribute [rw] description
1649
+ # The updated detailed description of the benefit application.
1650
+ # @return [String]
1651
+ #
1652
+ # @!attribute [rw] identifier
1653
+ # The unique identifier of the benefit application to update.
1654
+ # @return [String]
1655
+ #
1656
+ # @!attribute [rw] revision
1657
+ # The current revision number of the benefit application to ensure
1658
+ # optimistic concurrency control.
1659
+ # @return [String]
1660
+ #
1661
+ # @!attribute [rw] benefit_application_details
1662
+ # Updated detailed information and requirements specific to the
1663
+ # benefit being requested.
1664
+ # @return [Hash,Array,String,Numeric,Boolean]
1665
+ #
1666
+ # @!attribute [rw] partner_contacts
1667
+ # Updated contact information for partner representatives responsible
1668
+ # for this benefit application.
1669
+ # @return [Array<Types::Contact>]
1670
+ #
1671
+ # @!attribute [rw] file_details
1672
+ # Updated supporting documents and files attached to the benefit
1673
+ # application.
1674
+ # @return [Array<Types::FileInput>]
1675
+ #
1676
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/UpdateBenefitApplicationInput AWS API Documentation
1677
+ #
1678
+ class UpdateBenefitApplicationInput < Struct.new(
1679
+ :catalog,
1680
+ :client_token,
1681
+ :name,
1682
+ :description,
1683
+ :identifier,
1684
+ :revision,
1685
+ :benefit_application_details,
1686
+ :partner_contacts,
1687
+ :file_details)
1688
+ SENSITIVE = []
1689
+ include Aws::Structure
1690
+ end
1691
+
1692
+ # @!attribute [rw] id
1693
+ # The unique identifier of the updated benefit application.
1694
+ # @return [String]
1695
+ #
1696
+ # @!attribute [rw] arn
1697
+ # The Amazon Resource Name (ARN) of the updated benefit application.
1698
+ # @return [String]
1699
+ #
1700
+ # @!attribute [rw] revision
1701
+ # The new revision number of the benefit application after the update.
1702
+ # @return [String]
1703
+ #
1704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/UpdateBenefitApplicationOutput AWS API Documentation
1705
+ #
1706
+ class UpdateBenefitApplicationOutput < Struct.new(
1707
+ :id,
1708
+ :arn,
1709
+ :revision)
1710
+ SENSITIVE = []
1711
+ include Aws::Structure
1712
+ end
1713
+
1714
+ # Thrown when the request contains invalid parameters or fails input
1715
+ # validation requirements.
1716
+ #
1717
+ # @!attribute [rw] message
1718
+ # A message describing the validation error.
1719
+ # @return [String]
1720
+ #
1721
+ # @!attribute [rw] reason
1722
+ # The reason for the validation failure.
1723
+ # @return [String]
1724
+ #
1725
+ # @!attribute [rw] field_list
1726
+ # A list of fields that failed validation.
1727
+ # @return [Array<Types::ValidationExceptionField>]
1728
+ #
1729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ValidationException AWS API Documentation
1730
+ #
1731
+ class ValidationException < Struct.new(
1732
+ :message,
1733
+ :reason,
1734
+ :field_list)
1735
+ SENSITIVE = []
1736
+ include Aws::Structure
1737
+ end
1738
+
1739
+ # Represents a field-specific validation error with detailed
1740
+ # information.
1741
+ #
1742
+ # @!attribute [rw] name
1743
+ # The name of the field that failed validation.
1744
+ # @return [String]
1745
+ #
1746
+ # @!attribute [rw] message
1747
+ # A detailed message explaining why the field validation failed.
1748
+ # @return [String]
1749
+ #
1750
+ # @!attribute [rw] code
1751
+ # An error code explaining why the field validation failed.
1752
+ # @return [String]
1753
+ #
1754
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-benefits-2018-05-10/ValidationExceptionField AWS API Documentation
1755
+ #
1756
+ class ValidationExceptionField < Struct.new(
1757
+ :name,
1758
+ :message,
1759
+ :code)
1760
+ SENSITIVE = []
1761
+ include Aws::Structure
1762
+ end
1763
+
1764
+ end
1765
+ end
1766
+