aws-sdk-partnercentralselling 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,3457 @@
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::PartnerCentralSelling
11
+ module Types
12
+
13
+ # This error occurs when you don't have permission to perform the
14
+ # requested action.
15
+ #
16
+ # You don’t have access to this action or resource. Review IAM policies
17
+ # or contact your AWS administrator for assistance.
18
+ #
19
+ # @!attribute [rw] message
20
+ # @return [String]
21
+ #
22
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AccessDeniedException AWS API Documentation
23
+ #
24
+ class AccessDeniedException < Struct.new(
25
+ :message)
26
+ SENSITIVE = []
27
+ include Aws::Structure
28
+ end
29
+
30
+ # Specifies the `Customer`'s account details associated with the
31
+ # `Opportunity`.
32
+ #
33
+ # @!attribute [rw] address
34
+ # Specifies the end `Customer`'s address details associated with the
35
+ # `Opportunity`.
36
+ # @return [Types::Address]
37
+ #
38
+ # @!attribute [rw] aws_account_id
39
+ # Specifies the `Customer` Amazon Web Services account ID associated
40
+ # with the `Opportunity`.
41
+ # @return [String]
42
+ #
43
+ # @!attribute [rw] company_name
44
+ # Specifies the end `Customer`'s company name associated with the
45
+ # `Opportunity`.
46
+ # @return [String]
47
+ #
48
+ # @!attribute [rw] duns
49
+ # Indicates the `Customer` DUNS number, if available.
50
+ # @return [String]
51
+ #
52
+ # @!attribute [rw] industry
53
+ # Specifies the industry the end `Customer` belongs to that's
54
+ # associated with the `Opportunity` . It refers to the category or
55
+ # sector where the customer's business operates. This is a required
56
+ # field.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] other_industry
60
+ # Specifies the end `Customer`'s industry associated with the
61
+ # `Opportunity`, when the selected value in the `Industry` field is
62
+ # `Other`.
63
+ # @return [String]
64
+ #
65
+ # @!attribute [rw] website_url
66
+ # Specifies the end customer's company website URL associated with
67
+ # the `Opportunity`. This value is crucial to map the customer within
68
+ # the Amazon Web Services CRM system. This field is required in all
69
+ # cases except when the opportunity is related to national security.
70
+ # @return [String]
71
+ #
72
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Account AWS API Documentation
73
+ #
74
+ class Account < Struct.new(
75
+ :address,
76
+ :aws_account_id,
77
+ :company_name,
78
+ :duns,
79
+ :industry,
80
+ :other_industry,
81
+ :website_url)
82
+ SENSITIVE = [:aws_account_id, :company_name, :duns, :website_url]
83
+ include Aws::Structure
84
+ end
85
+
86
+ # Contains the account details of the partner who received the
87
+ # Engagement Invitation, including the AWS account ID and company name.
88
+ #
89
+ # @!attribute [rw] alias
90
+ # Represents the alias of the partner account receiving the Engagement
91
+ # Invitation, making it easier to identify and track the recipient in
92
+ # reports or logs.
93
+ # @return [String]
94
+ #
95
+ # @!attribute [rw] aws_account_id
96
+ # Indicates the AWS account ID of the partner who received the
97
+ # Engagement Invitation. This is a unique identifier for managing
98
+ # engagements with specific AWS accounts.
99
+ # @return [String]
100
+ #
101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AccountReceiver AWS API Documentation
102
+ #
103
+ class AccountReceiver < Struct.new(
104
+ :alias,
105
+ :aws_account_id)
106
+ SENSITIVE = [:aws_account_id]
107
+ include Aws::Structure
108
+ end
109
+
110
+ # An object that contains an `Account`'s subset of fields.
111
+ #
112
+ # @!attribute [rw] address
113
+ # Specifies the end `Customer`'s address details associated with the
114
+ # `Opportunity`.
115
+ # @return [Types::AddressSummary]
116
+ #
117
+ # @!attribute [rw] company_name
118
+ # Specifies the end `Customer`'s company name associated with the
119
+ # `Opportunity`.
120
+ # @return [String]
121
+ #
122
+ # @!attribute [rw] industry
123
+ # Specifies which industry the end `Customer` belongs to associated
124
+ # with the `Opportunity` . It refers to the category or sector that
125
+ # the customer's business operates in.
126
+ #
127
+ # To submit a value outside the picklist, use `Other`.
128
+ #
129
+ # Conditionally mandatory if `Other` is selected for Industry Vertical
130
+ # in LOVs.
131
+ # @return [String]
132
+ #
133
+ # @!attribute [rw] other_industry
134
+ # Specifies the end `Customer`'s industry associated with the `
135
+ # Opportunity`, when the selected value in the `Industry` field is
136
+ # `Other`. This field is relevant when the customer's industry
137
+ # doesn't fall under the predefined picklist values and requires a
138
+ # custom description.
139
+ # @return [String]
140
+ #
141
+ # @!attribute [rw] website_url
142
+ # Specifies the end customer's company website URL associated with
143
+ # the `Opportunity`. This value is crucial to map the customer within
144
+ # the Amazon Web Services CRM system.
145
+ # @return [String]
146
+ #
147
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AccountSummary AWS API Documentation
148
+ #
149
+ class AccountSummary < Struct.new(
150
+ :address,
151
+ :company_name,
152
+ :industry,
153
+ :other_industry,
154
+ :website_url)
155
+ SENSITIVE = [:company_name, :website_url]
156
+ include Aws::Structure
157
+ end
158
+
159
+ # Specifies the end `Customer`'s address details associated with the
160
+ # `Opportunity`.
161
+ #
162
+ # @!attribute [rw] city
163
+ # Specifies the end `Customer`'s city associated with the
164
+ # `Opportunity`.
165
+ # @return [String]
166
+ #
167
+ # @!attribute [rw] country_code
168
+ # Specifies the end `Customer`'s country associated with the
169
+ # `Opportunity`.
170
+ # @return [String]
171
+ #
172
+ # @!attribute [rw] postal_code
173
+ # Specifies the end `Customer`'s postal code associated with the
174
+ # `Opportunity`.
175
+ # @return [String]
176
+ #
177
+ # @!attribute [rw] state_or_region
178
+ # Specifies the end `Customer`'s state or region associated with the
179
+ # `Opportunity`.
180
+ #
181
+ # Valid values: `Alabama | Alaska | American Samoa | Arizona |
182
+ # Arkansas | California | Colorado | Connecticut | Delaware | Dist. of
183
+ # Columbia | Federated States of Micronesia | Florida | Georgia | Guam
184
+ # | Hawaii | Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky |
185
+ # Louisiana | Maine | Marshall Islands | Maryland | Massachusetts |
186
+ # Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska |
187
+ # Nevada | New Hampshire | New Jersey | New Mexico | New York | North
188
+ # Carolina | North Dakota | Northern Mariana Islands | Ohio | Oklahoma
189
+ # | Oregon | Palau | Pennsylvania | Puerto Rico | Rhode Island | South
190
+ # Carolina | South Dakota | Tennessee | Texas | Utah | Vermont |
191
+ # Virginia | Virgin Islands | Washington | West Virginia | Wisconsin |
192
+ # Wyoming | APO/AE | AFO/FPO | FPO, AP`
193
+ # @return [String]
194
+ #
195
+ # @!attribute [rw] street_address
196
+ # Specifies the end `Customer`'s street address associated with the
197
+ # `Opportunity`.
198
+ # @return [String]
199
+ #
200
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Address AWS API Documentation
201
+ #
202
+ class Address < Struct.new(
203
+ :city,
204
+ :country_code,
205
+ :postal_code,
206
+ :state_or_region,
207
+ :street_address)
208
+ SENSITIVE = [:city, :country_code, :postal_code, :state_or_region, :street_address]
209
+ include Aws::Structure
210
+ end
211
+
212
+ # An object that contains an `Address` object's subset of fields.
213
+ #
214
+ # @!attribute [rw] city
215
+ # Specifies the end `Customer`'s city associated with the
216
+ # `Opportunity`.
217
+ # @return [String]
218
+ #
219
+ # @!attribute [rw] country_code
220
+ # Specifies the end `Customer`'s country associated with the
221
+ # `Opportunity`.
222
+ # @return [String]
223
+ #
224
+ # @!attribute [rw] postal_code
225
+ # Specifies the end `Customer`'s postal code associated with the
226
+ # `Opportunity`.
227
+ # @return [String]
228
+ #
229
+ # @!attribute [rw] state_or_region
230
+ # Specifies the end `Customer`'s state or region associated with the
231
+ # `Opportunity`.
232
+ #
233
+ # Valid values: `Alabama | Alaska | American Samoa | Arizona |
234
+ # Arkansas | California | Colorado | Connecticut | Delaware | Dist. of
235
+ # Columbia | Federated States of Micronesia | Florida | Georgia | Guam
236
+ # | Hawaii | Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky |
237
+ # Louisiana | Maine | Marshall Islands | Maryland | Massachusetts |
238
+ # Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska |
239
+ # Nevada | New Hampshire | New Jersey | New Mexico | New York | North
240
+ # Carolina | North Dakota | Northern Mariana Islands | Ohio | Oklahoma
241
+ # | Oregon | Palau | Pennsylvania | Puerto Rico | Rhode Island | South
242
+ # Carolina | South Dakota | Tennessee | Texas | Utah | Vermont |
243
+ # Virginia | Virgin Islands | Washington | West Virginia | Wisconsin |
244
+ # Wyoming | APO/AE | AFO/FPO | FPO, AP`
245
+ # @return [String]
246
+ #
247
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AddressSummary AWS API Documentation
248
+ #
249
+ class AddressSummary < Struct.new(
250
+ :city,
251
+ :country_code,
252
+ :postal_code,
253
+ :state_or_region)
254
+ SENSITIVE = [:city, :country_code, :postal_code, :state_or_region]
255
+ include Aws::Structure
256
+ end
257
+
258
+ # @!attribute [rw] assignee
259
+ # Specifies the user or team member responsible for managing the
260
+ # assigned opportunity. This field identifies the *Assignee* based on
261
+ # the partner's internal team structure. Ensure that the email
262
+ # address is associated with a registered user in your Partner Central
263
+ # account.
264
+ # @return [Types::AssigneeContact]
265
+ #
266
+ # @!attribute [rw] catalog
267
+ # Specifies the catalog associated with the request. This field takes
268
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
269
+ # catalog determines which environment the opportunity is assigned in.
270
+ # Use `AWS` to assign real opportunities in the Amazon Web Services
271
+ # catalog, and `Sandbox` to test in a secure and isolated environment.
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] identifier
275
+ # Requires the `Opportunity`'s unique identifier when you want to
276
+ # assign it to another user. Provide the correct identifier so the
277
+ # intended opportunity is reassigned.
278
+ # @return [String]
279
+ #
280
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AssignOpportunityRequest AWS API Documentation
281
+ #
282
+ class AssignOpportunityRequest < Struct.new(
283
+ :assignee,
284
+ :catalog,
285
+ :identifier)
286
+ SENSITIVE = []
287
+ include Aws::Structure
288
+ end
289
+
290
+ # Represents the contact details of the individual assigned to manage
291
+ # the opportunity within the partner organization. This ensures that
292
+ # there is a clear point of contact for the opportunity's progress and
293
+ # updates.
294
+ #
295
+ # @!attribute [rw] business_title
296
+ # Specifies the business title of the assignee managing the
297
+ # opportunity. This helps clarify the individual's role and
298
+ # responsibilities within the organization.
299
+ # @return [String]
300
+ #
301
+ # @!attribute [rw] email
302
+ # Provides the email address of the assignee. This email is used for
303
+ # communications and notifications related to the opportunity.
304
+ # @return [String]
305
+ #
306
+ # @!attribute [rw] first_name
307
+ # Specifies the first name of the assignee managing the opportunity.
308
+ # @return [String]
309
+ #
310
+ # @!attribute [rw] last_name
311
+ # Specifies the last name of the assignee managing the opportunity.
312
+ # @return [String]
313
+ #
314
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AssigneeContact AWS API Documentation
315
+ #
316
+ class AssigneeContact < Struct.new(
317
+ :business_title,
318
+ :email,
319
+ :first_name,
320
+ :last_name)
321
+ SENSITIVE = [:business_title, :email, :first_name, :last_name]
322
+ include Aws::Structure
323
+ end
324
+
325
+ # @!attribute [rw] catalog
326
+ # Specifies the catalog associated with the request. This field takes
327
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
328
+ # catalog determines whichenvironment the opportunity association is
329
+ # made in. Use `AWS` to associate opportunities in the Amazon Web
330
+ # Services catalog, and `Sandbox` to test in a secure and isolated
331
+ # environment.
332
+ # @return [String]
333
+ #
334
+ # @!attribute [rw] opportunity_identifier
335
+ # Requires the `Opportunity`'s unique identifier when you want to
336
+ # associate it with a related entity. Provide the correct identifier
337
+ # so the intended opportunity is updated with the association.
338
+ # @return [String]
339
+ #
340
+ # @!attribute [rw] related_entity_identifier
341
+ # Requires the related entity's unique identifier when you want to
342
+ # associate it with the ` Opportunity`. For Amazon Web Services
343
+ # Marketplace entities, provide the Amazon Resource Name (ARN). Use
344
+ # the [ Amazon Web Services Marketplace API][1] to obtain the ARN.
345
+ #
346
+ #
347
+ #
348
+ # [1]: https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html
349
+ # @return [String]
350
+ #
351
+ # @!attribute [rw] related_entity_type
352
+ # Specifies the type of the related entity you're associating with
353
+ # the ` Opportunity`. This helps to categorize and properly process
354
+ # the association.
355
+ # @return [String]
356
+ #
357
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AssociateOpportunityRequest AWS API Documentation
358
+ #
359
+ class AssociateOpportunityRequest < Struct.new(
360
+ :catalog,
361
+ :opportunity_identifier,
362
+ :related_entity_identifier,
363
+ :related_entity_type)
364
+ SENSITIVE = []
365
+ include Aws::Structure
366
+ end
367
+
368
+ # Represents the customer associated with the AWS opportunity. This
369
+ # field captures key details about the customer that are necessary for
370
+ # managing the opportunity.
371
+ #
372
+ # @!attribute [rw] contacts
373
+ # Provides a list of customer contacts involved in the opportunity.
374
+ # These contacts may include decision-makers, influencers, and other
375
+ # key stakeholders within the customer's organization.
376
+ # @return [Array<Types::Contact>]
377
+ #
378
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsOpportunityCustomer AWS API Documentation
379
+ #
380
+ class AwsOpportunityCustomer < Struct.new(
381
+ :contacts)
382
+ SENSITIVE = []
383
+ include Aws::Structure
384
+ end
385
+
386
+ # Contains insights provided by AWS for the opportunity, offering
387
+ # recommendations and analysis that can help the partner optimize their
388
+ # engagement and strategy.
389
+ #
390
+ # @!attribute [rw] engagement_score
391
+ # Represents a score assigned by AWS to indicate the level of
392
+ # engagement and potential success for the opportunity. This score
393
+ # helps partners prioritize their efforts.
394
+ # @return [String]
395
+ #
396
+ # @!attribute [rw] next_best_actions
397
+ # Provides recommendations from AWS on the next best actions to take
398
+ # in order to move the opportunity forward and increase the likelihood
399
+ # of success.
400
+ # @return [String]
401
+ #
402
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsOpportunityInsights AWS API Documentation
403
+ #
404
+ class AwsOpportunityInsights < Struct.new(
405
+ :engagement_score,
406
+ :next_best_actions)
407
+ SENSITIVE = []
408
+ include Aws::Structure
409
+ end
410
+
411
+ # Tracks the lifecycle of the AWS opportunity, including stages such as
412
+ # qualification, validation, and closure. This field helps partners
413
+ # understand the current status and progression of the opportunity.
414
+ #
415
+ # @!attribute [rw] closed_lost_reason
416
+ # Indicates the reason why an opportunity was marked as `Closed Lost`.
417
+ # This helps in understanding the context behind the lost opportunity
418
+ # and aids in refining future strategies.
419
+ # @return [String]
420
+ #
421
+ # @!attribute [rw] next_steps
422
+ # Specifies the immediate next steps required to progress the
423
+ # opportunity. These steps are based on AWS's guidance and the
424
+ # current stage of the opportunity.
425
+ # @return [String]
426
+ #
427
+ # @!attribute [rw] next_steps_history
428
+ # Provides a historical log of previous next steps that were taken to
429
+ # move the opportunity forward. This helps in tracking the
430
+ # decision-making process and identifying any delays or obstacles
431
+ # encountered.
432
+ # @return [Array<Types::ProfileNextStepsHistory>]
433
+ #
434
+ # @!attribute [rw] stage
435
+ # Represents the current stage of the opportunity in its lifecycle,
436
+ # such as `Qualification`, `Validation`, or `Closed Won`. This helps
437
+ # in understanding the opportunity's progress.
438
+ # @return [String]
439
+ #
440
+ # @!attribute [rw] target_close_date
441
+ # Indicates the expected date by which the opportunity is projected to
442
+ # close. This field helps in planning resources and timelines for both
443
+ # the partner and AWS.
444
+ # @return [String]
445
+ #
446
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsOpportunityLifeCycle AWS API Documentation
447
+ #
448
+ class AwsOpportunityLifeCycle < Struct.new(
449
+ :closed_lost_reason,
450
+ :next_steps,
451
+ :next_steps_history,
452
+ :stage,
453
+ :target_close_date)
454
+ SENSITIVE = [:next_steps]
455
+ include Aws::Structure
456
+ end
457
+
458
+ # Captures details about the project associated with the opportunity,
459
+ # including objectives, scope, and customer requirements.
460
+ #
461
+ # @!attribute [rw] expected_customer_spend
462
+ # Indicates the expected spending by the customer over the course of
463
+ # the project. This value helps partners and AWS estimate the
464
+ # financial impact of the opportunity. Use the [AWS Pricing
465
+ # Calculator][1] to create an estimate of the customer’s total spend.
466
+ # If only annual recurring revenue (ARR) is available, distribute it
467
+ # across 12 months to provide an average monthly value.
468
+ #
469
+ #
470
+ #
471
+ # [1]: https://calculator.aws/#/
472
+ # @return [Array<Types::ExpectedCustomerSpend>]
473
+ #
474
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsOpportunityProject AWS API Documentation
475
+ #
476
+ class AwsOpportunityProject < Struct.new(
477
+ :expected_customer_spend)
478
+ SENSITIVE = []
479
+ include Aws::Structure
480
+ end
481
+
482
+ # Represents other entities related to the AWS opportunity, such as AWS
483
+ # products, partner solutions, and marketplace offers. These
484
+ # associations help build a complete picture of the solution being sold.
485
+ #
486
+ # @!attribute [rw] aws_products
487
+ # Specifies the AWS products associated with the opportunity. This
488
+ # field helps track the specific products that are part of the
489
+ # proposed solution.
490
+ # @return [Array<String>]
491
+ #
492
+ # @!attribute [rw] solutions
493
+ # Specifies the partner solutions related to the opportunity. These
494
+ # solutions represent the partner's offerings that are being
495
+ # positioned as part of the overall AWS opportunity.
496
+ # @return [Array<String>]
497
+ #
498
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsOpportunityRelatedEntities AWS API Documentation
499
+ #
500
+ class AwsOpportunityRelatedEntities < Struct.new(
501
+ :aws_products,
502
+ :solutions)
503
+ SENSITIVE = []
504
+ include Aws::Structure
505
+ end
506
+
507
+ # Indicates the level of AWS involvement in the opportunity. This field
508
+ # helps track AWS's role and participation throughout the engagement,
509
+ # such as providing technical support, deal assistance, or sales
510
+ # support.
511
+ #
512
+ # @!attribute [rw] involvement_type
513
+ # Specifies the type of AWS involvement in the opportunity, such as
514
+ # co-selling, deal support, or technical consultation. This helps
515
+ # categorize the nature of AWS's participation.
516
+ # @return [String]
517
+ #
518
+ # @!attribute [rw] visibility
519
+ # Determines who can view AWS's involvement in the opportunity.
520
+ # Typically, this field is set to `Full` for most cases, but it may be
521
+ # restricted based on special program requirements or confidentiality
522
+ # needs.
523
+ # @return [String]
524
+ #
525
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsSubmission AWS API Documentation
526
+ #
527
+ class AwsSubmission < Struct.new(
528
+ :involvement_type,
529
+ :visibility)
530
+ SENSITIVE = []
531
+ include Aws::Structure
532
+ end
533
+
534
+ # Represents an Amazon Web Services team member for the engagement. This
535
+ # structure includes details such as name, email, and business title.
536
+ #
537
+ # @!attribute [rw] business_title
538
+ # Specifies the Amazon Web Services team member's business title and
539
+ # indicates their organizational role.
540
+ # @return [String]
541
+ #
542
+ # @!attribute [rw] email
543
+ # Provides the Amazon Web Services team member's email address.
544
+ # @return [String]
545
+ #
546
+ # @!attribute [rw] first_name
547
+ # Provides the Amazon Web Services team member's first name.
548
+ # @return [String]
549
+ #
550
+ # @!attribute [rw] last_name
551
+ # Provides the Amazon Web Services team member's last name.
552
+ # @return [String]
553
+ #
554
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsTeamMember AWS API Documentation
555
+ #
556
+ class AwsTeamMember < Struct.new(
557
+ :business_title,
558
+ :email,
559
+ :first_name,
560
+ :last_name)
561
+ SENSITIVE = [:email, :first_name, :last_name]
562
+ include Aws::Structure
563
+ end
564
+
565
+ # This error occurs when the request can’t be processed due to a
566
+ # conflict with the target resource's current state, which could result
567
+ # from updating or deleting the resource.
568
+ #
569
+ # Suggested action: Fetch the latest state of the resource, verify the
570
+ # state, and retry the request.
571
+ #
572
+ # @!attribute [rw] message
573
+ # @return [String]
574
+ #
575
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ConflictException AWS API Documentation
576
+ #
577
+ class ConflictException < Struct.new(
578
+ :message)
579
+ SENSITIVE = []
580
+ include Aws::Structure
581
+ end
582
+
583
+ # An object that contains a `Customer Partner`'s contact details.
584
+ #
585
+ # @!attribute [rw] business_title
586
+ # The partner contact's title (job title or role) associated with the
587
+ # `Opportunity`.
588
+ # @return [String]
589
+ #
590
+ # @!attribute [rw] email
591
+ # The contact's email address associated with the `Opportunity`.
592
+ # @return [String]
593
+ #
594
+ # @!attribute [rw] first_name
595
+ # The contact's first name associated with the `Opportunity`.
596
+ # @return [String]
597
+ #
598
+ # @!attribute [rw] last_name
599
+ # The contact's last name associated with the `Opportunity`.
600
+ # @return [String]
601
+ #
602
+ # @!attribute [rw] phone
603
+ # The contact's phone number associated with the `Opportunity`.
604
+ # @return [String]
605
+ #
606
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Contact AWS API Documentation
607
+ #
608
+ class Contact < Struct.new(
609
+ :business_title,
610
+ :email,
611
+ :first_name,
612
+ :last_name,
613
+ :phone)
614
+ SENSITIVE = [:business_title, :email, :first_name, :last_name, :phone]
615
+ include Aws::Structure
616
+ end
617
+
618
+ # @!attribute [rw] catalog
619
+ # Specifies the catalog associated with the request. This field takes
620
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
621
+ # catalog determines which environment the opportunity is created in.
622
+ # Use `AWS` to create opportunities in the Amazon Web Services
623
+ # catalog, and `Sandbox` to test in a secure and isolated environment.
624
+ # @return [String]
625
+ #
626
+ # @!attribute [rw] client_token
627
+ # Required to be unique, and should be unchanging, it can be randomly
628
+ # generated or a meaningful string.
629
+ #
630
+ # Default: None
631
+ #
632
+ # Best practice: To ensure uniqueness and avoid collisions, we
633
+ # recommend you use a UUID (Universally Unique Identifier) as the
634
+ # `ClientToken`. You can use standard libraries available in most
635
+ # programming languages to generated this. If you use the same client
636
+ # token, the API throws this error: "Conflicting client token
637
+ # submitted for a new request body".
638
+ #
639
+ # **A suitable default value is auto-generated.** You should normally
640
+ # not need to pass this option.
641
+ # @return [String]
642
+ #
643
+ # @!attribute [rw] customer
644
+ # Specifies customer details associated with the `Opportunity`.
645
+ # @return [Types::Customer]
646
+ #
647
+ # @!attribute [rw] life_cycle
648
+ # An object that contains lifecycle details for the `Opportunity`.
649
+ # @return [Types::LifeCycle]
650
+ #
651
+ # @!attribute [rw] marketing
652
+ # This object contains marketing details and is optional for an
653
+ # opportunity.
654
+ # @return [Types::Marketing]
655
+ #
656
+ # @!attribute [rw] national_security
657
+ # Indicates whether the `Opportunity` pertains to a national security
658
+ # project. This field must be set to `true` only when the customer's
659
+ # industry is *Government*. Additional privacy and security measures
660
+ # apply during the review and management process for opportunities
661
+ # marked as `NationalSecurity`.
662
+ # @return [String]
663
+ #
664
+ # @!attribute [rw] opportunity_team
665
+ # Represents the internal team handling the opportunity. Specify the
666
+ # members involved in collaborating on this opportunity within the
667
+ # partner's organization.
668
+ # @return [Array<Types::Contact>]
669
+ #
670
+ # @!attribute [rw] opportunity_type
671
+ # Specifies the opportunity type as a renewal, new, or expansion.
672
+ #
673
+ # Opportunity types:
674
+ #
675
+ # * New opportunity: Represents a new business opportunity with a
676
+ # potential customer that's not previously engaged with your
677
+ # solutions or services.
678
+ #
679
+ # * Renewal opportunity: Represents an opportunity to renew an
680
+ # existing contract or subscription with a current customer,
681
+ # ensuring continuity of service.
682
+ #
683
+ # * Expansion opportunity: Represents an opportunity to expand the
684
+ # scope of an existing contract or subscription, either by adding
685
+ # new services or increasing the volume of existing services for a
686
+ # current customer.
687
+ # @return [String]
688
+ #
689
+ # @!attribute [rw] origin
690
+ # Specifies the origin of the opportunity, indicating if it was
691
+ # sourced from Amazon Web Services or the partner. For all
692
+ # opportunities created with `Catalog: AWS`, this field must only be
693
+ # `Partner Referral`. However, when using `Catalog: Sandbox`, you can
694
+ # set this field to `AWS Referral` to simulate Amazon Web Services
695
+ # referral creation. This allows Amazon Web Services-originated flows
696
+ # testing in the sandbox catalog.
697
+ # @return [String]
698
+ #
699
+ # @!attribute [rw] partner_opportunity_identifier
700
+ # Specifies the opportunity's unique identifier in the partner's CRM
701
+ # system. This value is essential to track and reconcile because it's
702
+ # included in the outbound payload sent back to the partner.
703
+ #
704
+ # This field allows partners to link an opportunity to their CRM, to
705
+ # ensure seamless integration and accurate synchronization between the
706
+ # Partner Central API and the partner's internal systems.
707
+ # @return [String]
708
+ #
709
+ # @!attribute [rw] primary_needs_from_aws
710
+ # Identifies the type of support the partner needs from Amazon Web
711
+ # Services.
712
+ #
713
+ # Valid values:
714
+ #
715
+ # * Co-Sell - Architectural Validation: Confirmation from Amazon Web
716
+ # Services that the partner's proposed solution architecture is
717
+ # aligned with Amazon Web Services best practices and poses minimal
718
+ # architectural risks.
719
+ #
720
+ # * Co-Sell - Business Presentation: Request Amazon Web Services
721
+ # seller's participation in a joint customer presentation.
722
+ #
723
+ # * Co-Sell - Competitive Information: Access to Amazon Web Services
724
+ # competitive resources and support for the partner's proposed
725
+ # solution.
726
+ #
727
+ # * Co-Sell - Pricing Assistance: Connect with an Amazon Web Services
728
+ # seller for support situations where a partner may be receiving an
729
+ # upfront discount on a service (for example: EDP deals).
730
+ #
731
+ # * Co-Sell - Technical Consultation: Connect with an Amazon Web
732
+ # Services Solutions Architect to address the partner's questions
733
+ # about the proposed solution.
734
+ #
735
+ # * Co-Sell - Total Cost of Ownership Evaluation: Assistance with
736
+ # quoting different cost savings of proposed solutions on Amazon Web
737
+ # Services versus on-premises or a traditional hosting environment.
738
+ #
739
+ # * Co-Sell - Deal Support: Request Amazon Web Services seller's
740
+ # support to progress the opportunity (for example: joint customer
741
+ # call, strategic positioning).
742
+ #
743
+ # * Co-Sell - Support for Public Tender / RFx: Opportunity related to
744
+ # the public sector where the partner needs Amazon Web Services RFx
745
+ # support.
746
+ #
747
+ # * Do Not Need Support from AWS Sales Rep: Indicates that a partner
748
+ # doesn't need support from an Amazon Web Services sales
749
+ # representative, and the partner solely manages the opportunity.
750
+ # It's possible to request co-selling support on these
751
+ # opportunities at any stage during their lifecycle. Also known as,
752
+ # for-visibility-only (FVO) opportunity.
753
+ # @return [Array<String>]
754
+ #
755
+ # @!attribute [rw] project
756
+ # An object that contains project details for the `Opportunity`.
757
+ # @return [Types::Project]
758
+ #
759
+ # @!attribute [rw] software_revenue
760
+ # Specifies details of a customer's procurement terms. Required only
761
+ # for partners in eligible programs.
762
+ # @return [Types::SoftwareRevenue]
763
+ #
764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/CreateOpportunityRequest AWS API Documentation
765
+ #
766
+ class CreateOpportunityRequest < Struct.new(
767
+ :catalog,
768
+ :client_token,
769
+ :customer,
770
+ :life_cycle,
771
+ :marketing,
772
+ :national_security,
773
+ :opportunity_team,
774
+ :opportunity_type,
775
+ :origin,
776
+ :partner_opportunity_identifier,
777
+ :primary_needs_from_aws,
778
+ :project,
779
+ :software_revenue)
780
+ SENSITIVE = []
781
+ include Aws::Structure
782
+ end
783
+
784
+ # @!attribute [rw] id
785
+ # Read-only, system-generated `Opportunity` unique identifier. Amazon
786
+ # Web Services creates this identifier, and it's used for all
787
+ # subsequent actions on the opportunity, such as updates,
788
+ # associations, and submissions. It ensures that each opportunity can
789
+ # be accurately tracked and managed within the system.
790
+ # @return [String]
791
+ #
792
+ # @!attribute [rw] last_modified_date
793
+ # `DateTime` when the opportunity was last modified. When the
794
+ # `Opportunity` is created, its value is equal to `CreatedDate`.
795
+ # @return [Time]
796
+ #
797
+ # @!attribute [rw] partner_opportunity_identifier
798
+ # Specifies the opportunity's unique identifier in the partner's CRM
799
+ # system. This value is essential to track and reconcile because it's
800
+ # included in the outbound payload sent back to the partner.
801
+ # @return [String]
802
+ #
803
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/CreateOpportunityResponse AWS API Documentation
804
+ #
805
+ class CreateOpportunityResponse < Struct.new(
806
+ :id,
807
+ :last_modified_date,
808
+ :partner_opportunity_identifier)
809
+ SENSITIVE = []
810
+ include Aws::Structure
811
+ end
812
+
813
+ # An object that contains the customer's `Account` and `Contact`.
814
+ #
815
+ # @!attribute [rw] account
816
+ # An object that contains the customer's account details.
817
+ # @return [Types::Account]
818
+ #
819
+ # @!attribute [rw] contacts
820
+ # Represents the contact details for individuals associated with the
821
+ # customer of the `Opportunity`. This field captures relevant
822
+ # contacts, including decision-makers, influencers, and technical
823
+ # stakeholders within the customer organization. These contacts are
824
+ # key to progressing the opportunity.
825
+ # @return [Array<Types::Contact>]
826
+ #
827
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Customer AWS API Documentation
828
+ #
829
+ class Customer < Struct.new(
830
+ :account,
831
+ :contacts)
832
+ SENSITIVE = []
833
+ include Aws::Structure
834
+ end
835
+
836
+ # An object that contains a `Customer` object's subset of fields.
837
+ #
838
+ # @!attribute [rw] account
839
+ # An object that contains a customer's account details.
840
+ # @return [Types::AccountSummary]
841
+ #
842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/CustomerSummary AWS API Documentation
843
+ #
844
+ class CustomerSummary < Struct.new(
845
+ :account)
846
+ SENSITIVE = []
847
+ include Aws::Structure
848
+ end
849
+
850
+ # @!attribute [rw] catalog
851
+ # Specifies the catalog associated with the request. This field takes
852
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
853
+ # catalog determines which environment the opportunity disassociation
854
+ # is made in. Use `AWS` to disassociate opportunities in the Amazon
855
+ # Web Services catalog, and `Sandbox` to test in a secure and isolated
856
+ # environment.
857
+ # @return [String]
858
+ #
859
+ # @!attribute [rw] opportunity_identifier
860
+ # The opportunity's unique identifier for when you want to
861
+ # disassociate it from related entities. This identifier is crucial to
862
+ # ensure the correct opportunity is updated, especially in
863
+ # environments with numerous opportunities.
864
+ #
865
+ # Validation: Ensure that the identifier provided corresponds to an
866
+ # existing opportunity in the Amazon Web Services system because
867
+ # incorrect identifiers result in an error and no changes are made.
868
+ # @return [String]
869
+ #
870
+ # @!attribute [rw] related_entity_identifier
871
+ # The related entity's identifier that you want to disassociate from
872
+ # the opportunity. Depending on the type of entity, this could be a
873
+ # simple identifier or an Amazon Resource Name (ARN) for entities
874
+ # managed through Amazon Web Services Marketplace.
875
+ #
876
+ # For Amazon Web Services Marketplace entities, use the Amazon Web
877
+ # Services Marketplace API to obtain the necessary ARNs. For guidance
878
+ # on retrieving these ARNs, refer to [ Amazon Web Services Marketplace
879
+ # Catalog API][1] .
880
+ #
881
+ # Validation: Ensure the identifier or ARN is valid and corresponds to
882
+ # an existing related entity. An incorrect or invalid identifier
883
+ # results in an error.
884
+ #
885
+ #
886
+ #
887
+ # [1]: https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/welcome.html
888
+ # @return [String]
889
+ #
890
+ # @!attribute [rw] related_entity_type
891
+ # The type of the entity that you're disassociating from the
892
+ # opportunity. When you specify the entity type, it helps the system
893
+ # correctly process the disassociation request and ensures that the
894
+ # right connections are removed.
895
+ #
896
+ # Examples of entity types include Partner Solution, Amazon Web
897
+ # Services product, and Amazon Web Services Marketplace offer. Ensure
898
+ # that the value matches one of the expected entity types.
899
+ #
900
+ # Validation: Provide a valid entity type to ensure successful
901
+ # disassociation. Invalid or incorrect entity types result in an
902
+ # error.
903
+ # @return [String]
904
+ #
905
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/DisassociateOpportunityRequest AWS API Documentation
906
+ #
907
+ class DisassociateOpportunityRequest < Struct.new(
908
+ :catalog,
909
+ :opportunity_identifier,
910
+ :related_entity_identifier,
911
+ :related_entity_type)
912
+ SENSITIVE = []
913
+ include Aws::Structure
914
+ end
915
+
916
+ # Contains details about the customer associated with the Engagement
917
+ # Invitation, including key company information and industry.
918
+ #
919
+ # @!attribute [rw] company_name
920
+ # Represents the name of the customer’s company associated with the
921
+ # Engagement Invitation. This field is used to identify the customer.
922
+ # @return [String]
923
+ #
924
+ # @!attribute [rw] country_code
925
+ # Indicates the country in which the customer’s company operates. This
926
+ # field is useful for understanding regional requirements or
927
+ # compliance needs.
928
+ # @return [String]
929
+ #
930
+ # @!attribute [rw] industry
931
+ # Specifies the industry to which the customer’s company belongs. This
932
+ # field helps categorize the opportunity based on the customer’s
933
+ # business sector.
934
+ # @return [String]
935
+ #
936
+ # @!attribute [rw] website_url
937
+ # Provides the website URL of the customer’s company. This field helps
938
+ # partners verify the legitimacy and size of the customer
939
+ # organization.
940
+ # @return [String]
941
+ #
942
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/EngagementCustomer AWS API Documentation
943
+ #
944
+ class EngagementCustomer < Struct.new(
945
+ :company_name,
946
+ :country_code,
947
+ :industry,
948
+ :website_url)
949
+ SENSITIVE = [:country_code, :website_url]
950
+ include Aws::Structure
951
+ end
952
+
953
+ # Provides a summarized view of the Engagement Invitation, including key
954
+ # details like the identifier, status, and sender information. This
955
+ # summary helps partners track and manage AWS-originated opportunities.
956
+ #
957
+ # @!attribute [rw] arn
958
+ # The Amazon Resource Name (ARN) of the Engagement Invitation. The ARN
959
+ # is a unique identifier that allows partners to reference the
960
+ # invitation in their system and manage its lifecycle.
961
+ # @return [String]
962
+ #
963
+ # @!attribute [rw] catalog
964
+ # Specifies the catalog in which the Engagement Invitation resides.
965
+ # This can be either the `AWS` or `Sandbox` catalog, indicating
966
+ # whether the opportunity is live or being tested.
967
+ # @return [String]
968
+ #
969
+ # @!attribute [rw] engagement_title
970
+ # Provides a short title or description of the Engagement Invitation.
971
+ # This title helps partners quickly identify and differentiate between
972
+ # multiple engagement opportunities.
973
+ # @return [String]
974
+ #
975
+ # @!attribute [rw] expiration_date
976
+ # Indicates the date and time when the Engagement Invitation will
977
+ # expire. After this date, the invitation can no longer be accepted,
978
+ # and the opportunity will no longer be available for the partner to
979
+ # engage.
980
+ # @return [Time]
981
+ #
982
+ # @!attribute [rw] id
983
+ # Represents the unique identifier of the Engagement Invitation. This
984
+ # identifier is used to track the invitation and to manage responses
985
+ # like acceptance or rejection.
986
+ # @return [String]
987
+ #
988
+ # @!attribute [rw] invitation_date
989
+ # Indicates the date when the Engagement Invitation was sent to the
990
+ # partner. This provides context for when the opportunity was shared
991
+ # and helps in tracking the timeline for engagement.
992
+ # @return [Time]
993
+ #
994
+ # @!attribute [rw] payload_type
995
+ # Describes the type of payload associated with the Engagement
996
+ # Invitation, such as `Opportunity` or `MarketplaceOffer`. This helps
997
+ # partners understand the nature of the engagement request from AWS.
998
+ # @return [String]
999
+ #
1000
+ # @!attribute [rw] receiver
1001
+ # Specifies the partner company or individual that received the
1002
+ # Engagement Invitation. This field is important for tracking who the
1003
+ # invitation was sent to within the partner organization.
1004
+ # @return [Types::Receiver]
1005
+ #
1006
+ # @!attribute [rw] sender_aws_account_id
1007
+ # Specifies the AWS account ID of the sender who initiated the
1008
+ # Engagement Invitation. This allows the partner to identify the AWS
1009
+ # entity or representative responsible for sharing the opportunity.
1010
+ # @return [String]
1011
+ #
1012
+ # @!attribute [rw] sender_company_name
1013
+ # Indicates the name of the company or AWS division that sent the
1014
+ # Engagement Invitation. This information is useful for partners to
1015
+ # know which part of AWS is requesting engagement.
1016
+ # @return [String]
1017
+ #
1018
+ # @!attribute [rw] status
1019
+ # Represents the current status of the Engagement Invitation, such as
1020
+ # `Pending`, `Accepted`, or `Rejected`. The status helps track the
1021
+ # progress and response to the invitation.
1022
+ # @return [String]
1023
+ #
1024
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/EngagementInvitationSummary AWS API Documentation
1025
+ #
1026
+ class EngagementInvitationSummary < Struct.new(
1027
+ :arn,
1028
+ :catalog,
1029
+ :engagement_title,
1030
+ :expiration_date,
1031
+ :id,
1032
+ :invitation_date,
1033
+ :payload_type,
1034
+ :receiver,
1035
+ :sender_aws_account_id,
1036
+ :sender_company_name,
1037
+ :status)
1038
+ SENSITIVE = [:sender_aws_account_id]
1039
+ include Aws::Structure
1040
+ end
1041
+
1042
+ # Provides an estimate of the revenue that the partner is expected to
1043
+ # generate from the opportunity. This information helps partners assess
1044
+ # the financial value of the project.
1045
+ #
1046
+ # @!attribute [rw] amount
1047
+ # Represents the estimated monthly revenue that the partner expects to
1048
+ # earn from the opportunity. This helps in forecasting financial
1049
+ # returns.
1050
+ # @return [String]
1051
+ #
1052
+ # @!attribute [rw] currency_code
1053
+ # Indicates the currency in which the revenue estimate is provided.
1054
+ # This helps in understanding the financial impact across different
1055
+ # markets.
1056
+ # @return [String]
1057
+ #
1058
+ # @!attribute [rw] frequency
1059
+ # Indicates how frequently the customer is expected to spend the
1060
+ # projected amount. This can include values such as `Monthly`,
1061
+ # `Quarterly`, or `Annually`. The default value is `Monthly`,
1062
+ # representing recurring monthly spend.
1063
+ # @return [String]
1064
+ #
1065
+ # @!attribute [rw] target_company
1066
+ # Specifies the name of the partner company that is expected to
1067
+ # generate revenue from the opportunity. This field helps track the
1068
+ # partner’s involvement in the opportunity.
1069
+ # @return [String]
1070
+ #
1071
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ExpectedCustomerSpend AWS API Documentation
1072
+ #
1073
+ class ExpectedCustomerSpend < Struct.new(
1074
+ :amount,
1075
+ :currency_code,
1076
+ :frequency,
1077
+ :target_company)
1078
+ SENSITIVE = []
1079
+ include Aws::Structure
1080
+ end
1081
+
1082
+ # @!attribute [rw] catalog
1083
+ # Specifies the catalog in which the AWS Opportunity is located.
1084
+ # Accepted values include `AWS` for production opportunities or
1085
+ # `Sandbox` for testing purposes. The catalog determines which
1086
+ # environment the opportunity data is pulled from.
1087
+ # @return [String]
1088
+ #
1089
+ # @!attribute [rw] related_opportunity_identifier
1090
+ # The unique identifier for the related partner opportunity. Use this
1091
+ # field to correlate an AWS opportunity with its corresponding partner
1092
+ # opportunity in your CRM system.
1093
+ # @return [String]
1094
+ #
1095
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetAwsOpportunitySummaryRequest AWS API Documentation
1096
+ #
1097
+ class GetAwsOpportunitySummaryRequest < Struct.new(
1098
+ :catalog,
1099
+ :related_opportunity_identifier)
1100
+ SENSITIVE = []
1101
+ include Aws::Structure
1102
+ end
1103
+
1104
+ # @!attribute [rw] catalog
1105
+ # Specifies the catalog in which the AWS Opportunity exists. This is
1106
+ # the environment (e.g., `AWS` or `Sandbox`) where the opportunity is
1107
+ # being managed.
1108
+ # @return [String]
1109
+ #
1110
+ # @!attribute [rw] customer
1111
+ # Provides details about the customer associated with the AWS
1112
+ # Opportunity, including account information, industry, and other key
1113
+ # customer data. These details help partners understand the business
1114
+ # context of the opportunity.
1115
+ # @return [Types::AwsOpportunityCustomer]
1116
+ #
1117
+ # @!attribute [rw] insights
1118
+ # Provides insights into the AWS Opportunity, including engagement
1119
+ # score and recommended actions that AWS suggests for the partner.
1120
+ # @return [Types::AwsOpportunityInsights]
1121
+ #
1122
+ # @!attribute [rw] involvement_type
1123
+ # Specifies the type of involvement AWS has in the opportunity, such
1124
+ # as direct co-sell or advisory support. This field helps partners
1125
+ # understand the role AWS will play in advancing the opportunity.
1126
+ # @return [String]
1127
+ #
1128
+ # @!attribute [rw] involvement_type_change_reason
1129
+ # Provides a reason for any changes in the involvement type of AWS in
1130
+ # the opportunity. This field is used to track why the level of AWS
1131
+ # engagement has changed from `For Visibility Only` to `Co-sell`
1132
+ # offering transparency into the partnership dynamics.
1133
+ # @return [String]
1134
+ #
1135
+ # @!attribute [rw] life_cycle
1136
+ # Contains lifecycle information for the AWS Opportunity, including
1137
+ # review status, stage, and target close date. This field is crucial
1138
+ # for partners to monitor the progression of the opportunity.
1139
+ # @return [Types::AwsOpportunityLifeCycle]
1140
+ #
1141
+ # @!attribute [rw] opportunity_team
1142
+ # Details the AWS Opportunity team, including key members involved in
1143
+ # the opportunity. This information helps partners know who from AWS
1144
+ # is engaged and their roles in the opportunity.
1145
+ # @return [Array<Types::AwsTeamMember>]
1146
+ #
1147
+ # @!attribute [rw] origin
1148
+ # Specifies whether the AWS Opportunity originated from AWS or the
1149
+ # partner. This helps distinguish between opportunities that were
1150
+ # sourced by AWS and those referred by the partner.
1151
+ # @return [String]
1152
+ #
1153
+ # @!attribute [rw] project
1154
+ # Provides details about the project associated with the AWS
1155
+ # Opportunity, including the customer’s business problem, expected
1156
+ # outcomes, and project scope. This information is crucial for
1157
+ # understanding the broader context of the opportunity.
1158
+ # @return [Types::AwsOpportunityProject]
1159
+ #
1160
+ # @!attribute [rw] related_entity_ids
1161
+ # Lists related entity identifiers, such as AWS products or partner
1162
+ # solutions, associated with the AWS Opportunity. These identifiers
1163
+ # provide additional context and help partners understand which AWS
1164
+ # services are involved.
1165
+ # @return [Types::AwsOpportunityRelatedEntities]
1166
+ #
1167
+ # @!attribute [rw] related_opportunity_id
1168
+ # Provides the unique identifier of the related partner opportunity,
1169
+ # allowing partners to link the AWS Opportunity to their corresponding
1170
+ # opportunity in their CRM system.
1171
+ # @return [String]
1172
+ #
1173
+ # @!attribute [rw] visibility
1174
+ # Defines the visibility level for the AWS Opportunity. Use `Full`
1175
+ # visibility for most cases, while `Limited` visibility is reserved
1176
+ # for special programs or sensitive opportunities.
1177
+ # @return [String]
1178
+ #
1179
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetAwsOpportunitySummaryResponse AWS API Documentation
1180
+ #
1181
+ class GetAwsOpportunitySummaryResponse < Struct.new(
1182
+ :catalog,
1183
+ :customer,
1184
+ :insights,
1185
+ :involvement_type,
1186
+ :involvement_type_change_reason,
1187
+ :life_cycle,
1188
+ :opportunity_team,
1189
+ :origin,
1190
+ :project,
1191
+ :related_entity_ids,
1192
+ :related_opportunity_id,
1193
+ :visibility)
1194
+ SENSITIVE = []
1195
+ include Aws::Structure
1196
+ end
1197
+
1198
+ # @!attribute [rw] catalog
1199
+ # Specifies the catalog associated with the request. The field accepts
1200
+ # values from the predefined set: `AWS` for live operations or
1201
+ # `Sandbox` for testing environments.
1202
+ # @return [String]
1203
+ #
1204
+ # @!attribute [rw] identifier
1205
+ # Specifies the unique identifier for the engagement invitation being
1206
+ # retrieved.
1207
+ # @return [String]
1208
+ #
1209
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetEngagementInvitationRequest AWS API Documentation
1210
+ #
1211
+ class GetEngagementInvitationRequest < Struct.new(
1212
+ :catalog,
1213
+ :identifier)
1214
+ SENSITIVE = []
1215
+ include Aws::Structure
1216
+ end
1217
+
1218
+ # @!attribute [rw] arn
1219
+ # The Amazon Resource Name (ARN) that uniquely identifies the
1220
+ # engagement invitation.
1221
+ # @return [String]
1222
+ #
1223
+ # @!attribute [rw] catalog
1224
+ # Indicates the catalog from which the engagement invitation details
1225
+ # are retrieved. This field helps in identifying the appropriate
1226
+ # catalog (e.g., `AWS` or `Sandbox`) used in the request.
1227
+ # @return [String]
1228
+ #
1229
+ # @!attribute [rw] engagement_title
1230
+ # The title of the engagement invitation, summarizing the purpose or
1231
+ # key objectives of the opportunity shared by AWS.
1232
+ # @return [String]
1233
+ #
1234
+ # @!attribute [rw] expiration_date
1235
+ # Indicates the date on which the engagement invitation will expire if
1236
+ # not accepted by the partner.
1237
+ # @return [Time]
1238
+ #
1239
+ # @!attribute [rw] id
1240
+ # Unique identifier assigned to the engagement invitation being
1241
+ # retrieved.
1242
+ # @return [String]
1243
+ #
1244
+ # @!attribute [rw] invitation_date
1245
+ # The date when the engagement invitation was sent to the partner.
1246
+ # @return [Time]
1247
+ #
1248
+ # @!attribute [rw] payload
1249
+ # Details of the engagement invitation payload, including specific
1250
+ # data relevant to the invitation's contents, such as customer
1251
+ # information and opportunity insights.
1252
+ # @return [Types::Payload]
1253
+ #
1254
+ # @!attribute [rw] payload_type
1255
+ # The type of payload contained in the engagement invitation,
1256
+ # indicating what data or context the payload covers.
1257
+ # @return [String]
1258
+ #
1259
+ # @!attribute [rw] receiver
1260
+ # Information about the partner organization or team that received the
1261
+ # engagement invitation, including contact details and identifiers.
1262
+ # @return [Types::Receiver]
1263
+ #
1264
+ # @!attribute [rw] rejection_reason
1265
+ # If the engagement invitation was rejected, this field specifies the
1266
+ # reason provided by the partner for the rejection.
1267
+ # @return [String]
1268
+ #
1269
+ # @!attribute [rw] sender_aws_account_id
1270
+ # Specifies the AWS Account ID of the sender, which identifies the AWS
1271
+ # team responsible for sharing the engagement invitation.
1272
+ # @return [String]
1273
+ #
1274
+ # @!attribute [rw] sender_company_name
1275
+ # The name of the AWS organization or team that sent the engagement
1276
+ # invitation.
1277
+ # @return [String]
1278
+ #
1279
+ # @!attribute [rw] status
1280
+ # The current status of the engagement invitation (e.g., `Accepted`,
1281
+ # `Pending`, or `Rejected`).
1282
+ # @return [String]
1283
+ #
1284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetEngagementInvitationResponse AWS API Documentation
1285
+ #
1286
+ class GetEngagementInvitationResponse < Struct.new(
1287
+ :arn,
1288
+ :catalog,
1289
+ :engagement_title,
1290
+ :expiration_date,
1291
+ :id,
1292
+ :invitation_date,
1293
+ :payload,
1294
+ :payload_type,
1295
+ :receiver,
1296
+ :rejection_reason,
1297
+ :sender_aws_account_id,
1298
+ :sender_company_name,
1299
+ :status)
1300
+ SENSITIVE = [:sender_aws_account_id]
1301
+ include Aws::Structure
1302
+ end
1303
+
1304
+ # @!attribute [rw] catalog
1305
+ # Specifies the catalog associated with the request. This field takes
1306
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
1307
+ # catalog determines which environment the opportunity is fetched
1308
+ # from. Use `AWS` to retrieve opportunities in the Amazon Web Services
1309
+ # catalog, and `Sandbox` to retrieve opportunities in a secure and
1310
+ # isolated testing environment.
1311
+ # @return [String]
1312
+ #
1313
+ # @!attribute [rw] identifier
1314
+ # Read-only, system generated `Opportunity` unique identifier.
1315
+ # @return [String]
1316
+ #
1317
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetOpportunityRequest AWS API Documentation
1318
+ #
1319
+ class GetOpportunityRequest < Struct.new(
1320
+ :catalog,
1321
+ :identifier)
1322
+ SENSITIVE = []
1323
+ include Aws::Structure
1324
+ end
1325
+
1326
+ # @!attribute [rw] catalog
1327
+ # Specifies the catalog associated with the request. This field takes
1328
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
1329
+ # catalog determines which environment the opportunity information is
1330
+ # retrieved from. Use `AWS` to retrieve opportunities in the Amazon
1331
+ # Web Services catalog, and `Sandbox` to retrieve opportunities in a
1332
+ # secure and isolated testing environment.
1333
+ # @return [String]
1334
+ #
1335
+ # @!attribute [rw] created_date
1336
+ # `DateTime` when the `Opportunity` was last created.
1337
+ # @return [Time]
1338
+ #
1339
+ # @!attribute [rw] customer
1340
+ # Specifies details of the customer associated with the `Opportunity`.
1341
+ # @return [Types::Customer]
1342
+ #
1343
+ # @!attribute [rw] id
1344
+ # Read-only, system generated `Opportunity` unique identifier.
1345
+ # @return [String]
1346
+ #
1347
+ # @!attribute [rw] last_modified_date
1348
+ # `DateTime` when the opportunity was last modified.
1349
+ # @return [Time]
1350
+ #
1351
+ # @!attribute [rw] life_cycle
1352
+ # An object that contains lifecycle details for the `Opportunity`.
1353
+ # @return [Types::LifeCycle]
1354
+ #
1355
+ # @!attribute [rw] marketing
1356
+ # An object that contains marketing details for the `Opportunity`.
1357
+ # @return [Types::Marketing]
1358
+ #
1359
+ # @!attribute [rw] national_security
1360
+ # Indicates whether the `Opportunity` pertains to a national security
1361
+ # project. This field must be set to `true` only when the customer's
1362
+ # industry is *Government*. Additional privacy and security measures
1363
+ # apply during the review and management process for opportunities
1364
+ # marked as `NationalSecurity`.
1365
+ # @return [String]
1366
+ #
1367
+ # @!attribute [rw] opportunity_team
1368
+ # Represents the internal team handling the opportunity. Specify the
1369
+ # members involved in collaborating on this opportunity within the
1370
+ # partner's organization.
1371
+ # @return [Array<Types::Contact>]
1372
+ #
1373
+ # @!attribute [rw] opportunity_type
1374
+ # Specifies the opportunity type as renewal, new, or expansion.
1375
+ #
1376
+ # Opportunity types:
1377
+ #
1378
+ # * New opportunity: Represents a new business opportunity with a
1379
+ # potential customer that's not previously engaged with your
1380
+ # solutions or services.
1381
+ #
1382
+ # * Renewal opportunity: Represents an opportunity to renew an
1383
+ # existing contract or subscription with a current customer,
1384
+ # ensuring continuity of service.
1385
+ #
1386
+ # * Expansion opportunity: Represents an opportunity to expand the
1387
+ # scope of an existing contract or subscription, either by adding
1388
+ # new services or increasing the volume of existing services for a
1389
+ # current customer.
1390
+ # @return [String]
1391
+ #
1392
+ # @!attribute [rw] partner_opportunity_identifier
1393
+ # Specifies the opportunity's unique identifier in the partner's CRM
1394
+ # system. This value is essential to track and reconcile because it's
1395
+ # included in the outbound payload sent back to the partner.
1396
+ # @return [String]
1397
+ #
1398
+ # @!attribute [rw] primary_needs_from_aws
1399
+ # Identifies the type of support the partner needs from Amazon Web
1400
+ # Services.
1401
+ #
1402
+ # Valid values:
1403
+ #
1404
+ # * Co-Sell - Architectural Validation: Confirmation from Amazon Web
1405
+ # Services that the partner's proposed solution architecture is
1406
+ # aligned with Amazon Web Services best practices and poses minimal
1407
+ # architectural risks.
1408
+ #
1409
+ # * Co-Sell - Business Presentation: Request Amazon Web Services
1410
+ # seller's participation in a joint customer presentation.
1411
+ #
1412
+ # * Co-Sell - Competitive Information: Access to Amazon Web Services
1413
+ # competitive resources and support for the partner's proposed
1414
+ # solution.
1415
+ #
1416
+ # * Co-Sell - Pricing Assistance: Connect with an Amazon Web Services
1417
+ # seller for support situations where a partner may be receiving an
1418
+ # upfront discount on a service (for example: EDP deals).
1419
+ #
1420
+ # * Co-Sell - Technical Consultation: Connect with an Amazon Web
1421
+ # Services Solutions Architect to address the partner's questions
1422
+ # about the proposed solution.
1423
+ #
1424
+ # * Co-Sell - Total Cost of Ownership Evaluation: Assistance with
1425
+ # quoting different cost savings of proposed solutions on Amazon Web
1426
+ # Services versus on-premises or a traditional hosting environment.
1427
+ #
1428
+ # * Co-Sell - Deal Support: Request Amazon Web Services seller's
1429
+ # support to progress the opportunity (for example: joint customer
1430
+ # call, strategic positioning).
1431
+ #
1432
+ # * Co-Sell - Support for Public Tender / RFx: Opportunity related to
1433
+ # the public sector where the partner needs Amazon Web Services RFx
1434
+ # support.
1435
+ #
1436
+ # * Do Not Need Support from Amazon Web Services Sales Rep: Indicates
1437
+ # that a partner doesn't need support from an Amazon Web Services
1438
+ # sales representative, and the partner solely manages the
1439
+ # opportunity. It's possible to request co-selling support on these
1440
+ # opportunities at any stage during their lifecycle. Also known as,
1441
+ # for-visibility-only (FVO) opportunity.
1442
+ # @return [Array<String>]
1443
+ #
1444
+ # @!attribute [rw] project
1445
+ # An object that contains project details summary for the
1446
+ # `Opportunity`.
1447
+ # @return [Types::Project]
1448
+ #
1449
+ # @!attribute [rw] related_entity_identifiers
1450
+ # Provides information about the associations of other entities with
1451
+ # the opportunity. These entities include identifiers for
1452
+ # `AWSProducts`, `Partner Solutions`, and `AWSMarketplaceOffers`.
1453
+ # @return [Types::RelatedEntityIdentifiers]
1454
+ #
1455
+ # @!attribute [rw] software_revenue
1456
+ # Specifies details of a customer's procurement terms. Required only
1457
+ # for partners in eligible programs.
1458
+ # @return [Types::SoftwareRevenue]
1459
+ #
1460
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetOpportunityResponse AWS API Documentation
1461
+ #
1462
+ class GetOpportunityResponse < Struct.new(
1463
+ :catalog,
1464
+ :created_date,
1465
+ :customer,
1466
+ :id,
1467
+ :last_modified_date,
1468
+ :life_cycle,
1469
+ :marketing,
1470
+ :national_security,
1471
+ :opportunity_team,
1472
+ :opportunity_type,
1473
+ :partner_opportunity_identifier,
1474
+ :primary_needs_from_aws,
1475
+ :project,
1476
+ :related_entity_identifiers,
1477
+ :software_revenue)
1478
+ SENSITIVE = []
1479
+ include Aws::Structure
1480
+ end
1481
+
1482
+ # This error occurs when the specified resource can’t be found or
1483
+ # doesn't exist. Resource ID and type might be incorrect.
1484
+ #
1485
+ # Suggested action: This is usually a transient error. Retry after the
1486
+ # provided retry delay or a short interval. If the problem persists,
1487
+ # contact AWS support.
1488
+ #
1489
+ # @!attribute [rw] message
1490
+ # @return [String]
1491
+ #
1492
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/InternalServerException AWS API Documentation
1493
+ #
1494
+ class InternalServerException < Struct.new(
1495
+ :message)
1496
+ SENSITIVE = []
1497
+ include Aws::Structure
1498
+ end
1499
+
1500
+ # Defines a filter to retrieve opportunities based on the last modified
1501
+ # date. This filter is useful for tracking changes or updates to
1502
+ # opportunities over time.
1503
+ #
1504
+ # @!attribute [rw] after_last_modified_date
1505
+ # Specifies the date after which the opportunities were modified. Use
1506
+ # this filter to retrieve only those opportunities that were modified
1507
+ # after a given timestamp.
1508
+ # @return [Time]
1509
+ #
1510
+ # @!attribute [rw] before_last_modified_date
1511
+ # Specifies the date before which the opportunities were modified. Use
1512
+ # this filter to retrieve only those opportunities that were modified
1513
+ # before a given timestamp.
1514
+ # @return [Time]
1515
+ #
1516
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LastModifiedDate AWS API Documentation
1517
+ #
1518
+ class LastModifiedDate < Struct.new(
1519
+ :after_last_modified_date,
1520
+ :before_last_modified_date)
1521
+ SENSITIVE = []
1522
+ include Aws::Structure
1523
+ end
1524
+
1525
+ # An object that contains the `Opportunity` lifecycle's details.
1526
+ #
1527
+ # @!attribute [rw] closed_lost_reason
1528
+ # Specifies the reason code when an opportunity is marked as *Closed
1529
+ # Lost*. When you select an appropriate reason code, you communicate
1530
+ # the context for closing the `Opportunity`, and aid in accurate
1531
+ # reports and analysis of opportunity outcomes. The possible values
1532
+ # are:
1533
+ #
1534
+ # * Customer Deficiency: The customer lacked necessary resources or
1535
+ # capabilities.
1536
+ #
1537
+ # * Delay/Cancellation of Project: The project was delayed or
1538
+ # canceled.
1539
+ #
1540
+ # * Legal/Tax/Regulatory: Legal, tax, or regulatory issues prevented
1541
+ # progress.
1542
+ #
1543
+ # * Lost to Competitor - Google: The opportunity was lost to Google.
1544
+ #
1545
+ # * Lost to Competitor - Microsoft: The opportunity was lost to
1546
+ # Microsoft.
1547
+ #
1548
+ # * Lost to Competitor - SoftLayer: The opportunity was lost to
1549
+ # SoftLayer.
1550
+ #
1551
+ # * Lost to Competitor - VMWare: The opportunity was lost to VMWare.
1552
+ #
1553
+ # * Lost to Competitor - Other: The opportunity was lost to a
1554
+ # competitor not listed above.
1555
+ #
1556
+ # * No Opportunity: There was no opportunity to pursue.
1557
+ #
1558
+ # * On Premises Deployment: The customer chose an on-premises
1559
+ # solution.
1560
+ #
1561
+ # * Partner Gap: The partner lacked necessary resources or
1562
+ # capabilities.
1563
+ #
1564
+ # * Price: The price was not competitive or acceptable to the
1565
+ # customer.
1566
+ #
1567
+ # * Security/Compliance: Security or compliance issues prevented
1568
+ # progress.
1569
+ #
1570
+ # * Technical Limitations: Technical limitations prevented progress.
1571
+ #
1572
+ # * Customer Experience: Issues related to the customer's experience
1573
+ # impacted the decision.
1574
+ #
1575
+ # * Other: Any reason not covered by the other values.
1576
+ #
1577
+ # * People/Relationship/Governance: Issues related to people,
1578
+ # relationships, or governance.
1579
+ #
1580
+ # * Product/Technology: Issues related to the product or technology.
1581
+ #
1582
+ # * Financial/Commercial: Financial or commercial issues impacted the
1583
+ # decision.
1584
+ # @return [String]
1585
+ #
1586
+ # @!attribute [rw] next_steps
1587
+ # Specifies the upcoming actions or tasks for the `Opportunity`. This
1588
+ # field is utilized to communicate to Amazon Web Services the next
1589
+ # actions required for the `Opportunity`.
1590
+ # @return [String]
1591
+ #
1592
+ # @!attribute [rw] next_steps_history
1593
+ # Captures a chronological record of the next steps or actions planned
1594
+ # or taken for the current opportunity, along with the timestamp.
1595
+ # @return [Array<Types::NextStepsHistory>]
1596
+ #
1597
+ # @!attribute [rw] review_comments
1598
+ # Indicates why an opportuntiy was sent back for further details.
1599
+ # Partners must take corrective action based on the `ReviewComments`.
1600
+ # @return [String]
1601
+ #
1602
+ # @!attribute [rw] review_status
1603
+ # Indicates the review status of an opportunity referred by a partner.
1604
+ # This field is read-only and only applicable for partner referrals.
1605
+ # The possible values are:
1606
+ #
1607
+ # * Pending Submission: Not submitted for validation (editable).
1608
+ #
1609
+ # * Submitted: Submitted for validation, and Amazon Web Services
1610
+ # hasn't reviewed it (read-only).
1611
+ #
1612
+ # * In Review: Amazon Web Services is validating (read-only).
1613
+ #
1614
+ # * Action Required: Issues that Amazon Web Services highlights need
1615
+ # to be addressed. Partners should use the `UpdateOpportunity` API
1616
+ # action to update the opportunity, and ensure all required changes
1617
+ # are made. Only these fields are editable when the
1618
+ # `Lifecycle.ReviewStatus` is `Action Required`:
1619
+ #
1620
+ # * Customer.Account.Address.City
1621
+ #
1622
+ # * Customer.Account.Address.CountryCode
1623
+ #
1624
+ # * Customer.Account.Address.PostalCode
1625
+ #
1626
+ # * Customer.Account.Address.StateOrRegion
1627
+ #
1628
+ # * Customer.Account.Address.StreetAddress
1629
+ #
1630
+ # * Customer.Account.WebsiteUrl
1631
+ #
1632
+ # * LifeCycle.TargetCloseDate
1633
+ #
1634
+ # * Project.ExpectedMonthlyAWSRevenue.Amount
1635
+ #
1636
+ # * Project.ExpectedMonthlyAWSRevenue.CurrencyCode
1637
+ #
1638
+ # * Project.CustomerBusinessProblem
1639
+ #
1640
+ # * PartnerOpportunityIdentifier
1641
+ #
1642
+ # After updates, the opportunity re-enters the validation phase.
1643
+ # This process repeats until all issues are resolved, and the
1644
+ # opportunity's `Lifecycle.ReviewStatus` is set to `Approved` or
1645
+ # `Rejected`.
1646
+ #
1647
+ # * Approved: Validated and converted into the Amazon Web Services
1648
+ # seller's pipeline (editable).
1649
+ #
1650
+ # * Rejected: Disqualified (read-only).
1651
+ # @return [String]
1652
+ #
1653
+ # @!attribute [rw] review_status_reason
1654
+ # Indicates the reason a decision was made during the opportunity
1655
+ # review process. This field combines the reasons for both
1656
+ # disqualified and action required statuses, and provide clarity for
1657
+ # why an opportunity was disqualified or requires further action.
1658
+ # @return [String]
1659
+ #
1660
+ # @!attribute [rw] stage
1661
+ # Specifies the current stage of the `Opportunity`'s lifecycle as it
1662
+ # maps to Amazon Web Services stages from the current stage in the
1663
+ # partner CRM. This field provides a translated value of the stage,
1664
+ # and offers insight into the `Opportunity`'s progression in the
1665
+ # sales cycle, according to Amazon Web Services definitions.
1666
+ #
1667
+ # <note markdown="1"> A lead and a prospect must be further matured to a `Qualified`
1668
+ # opportunity before submission. Opportunities that were closed/lost
1669
+ # before submission aren't suitable for submission.
1670
+ #
1671
+ # </note>
1672
+ #
1673
+ # The descriptions of each sales stage are:
1674
+ #
1675
+ # * Prospect: Amazon Web Services identifies the opportunity. It can
1676
+ # be active (Comes directly from the end customer through a lead) or
1677
+ # latent (Your account team believes it exists based on research,
1678
+ # account plans, sales plays).
1679
+ #
1680
+ # * Qualified: Your account team engaged with the prospect/end
1681
+ # customer to discuss viability and understand requirements. The
1682
+ # prospect/end customer agreed that the opportunity is real, of
1683
+ # interest, and may solve key business/technical needs.
1684
+ #
1685
+ # * Technical Validation: All parties understand the implementation
1686
+ # plan.
1687
+ #
1688
+ # * Business Validation: Pricing was proposed, and all parties agree
1689
+ # to the steps to close.
1690
+ #
1691
+ # * Committed: The customer signed the contract, but Amazon Web
1692
+ # Services hasn't started billing.
1693
+ #
1694
+ # * Launched: The workload is complete, and Amazon Web Services has
1695
+ # started billing.
1696
+ #
1697
+ # * Closed Lost: The opportunity is lost, and there are no steps to
1698
+ # move forward.
1699
+ # @return [String]
1700
+ #
1701
+ # @!attribute [rw] target_close_date
1702
+ # Specifies the date when Amazon Web Services expects to start
1703
+ # significant billing, when the project finishes, and when it moves
1704
+ # into production. This field informs the Amazon Web Services seller
1705
+ # about when the opportunity launches and starts to incur Amazon Web
1706
+ # Services usage.
1707
+ #
1708
+ # Ensure the `Target Close Date` isn't in the past.
1709
+ # @return [String]
1710
+ #
1711
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LifeCycle AWS API Documentation
1712
+ #
1713
+ class LifeCycle < Struct.new(
1714
+ :closed_lost_reason,
1715
+ :next_steps,
1716
+ :next_steps_history,
1717
+ :review_comments,
1718
+ :review_status,
1719
+ :review_status_reason,
1720
+ :stage,
1721
+ :target_close_date)
1722
+ SENSITIVE = [:next_steps]
1723
+ include Aws::Structure
1724
+ end
1725
+
1726
+ # An object that contains a `LifeCycle` object's subset of fields.
1727
+ #
1728
+ # @!attribute [rw] closed_lost_reason
1729
+ # Specifies the reason code when an opportunity is marked as *Closed
1730
+ # Lost*. When you select an appropriate reason code, you communicate
1731
+ # the context for closing the `Opportunity`, and aid in accurate
1732
+ # reports and analysis of opportunity outcomes.
1733
+ # @return [String]
1734
+ #
1735
+ # @!attribute [rw] next_steps
1736
+ # Specifies the upcoming actions or tasks for the `Opportunity`. This
1737
+ # field is utilized to communicate to Amazon Web Services the next
1738
+ # actions required for the `Opportunity`.
1739
+ # @return [String]
1740
+ #
1741
+ # @!attribute [rw] review_comments
1742
+ # Indicates why an opportuntiy was sent back for further details.
1743
+ # Partners must take corrective action based on the `ReviewComments`.
1744
+ # @return [String]
1745
+ #
1746
+ # @!attribute [rw] review_status
1747
+ # Indicates the review status of a partner referred opportunity. This
1748
+ # field is read-only and only applicable for partner referrals. Valid
1749
+ # values:
1750
+ #
1751
+ # * Pending Submission: Not submitted for validation (editable).
1752
+ #
1753
+ # * Submitted: Submitted for validation and not yet Amazon Web
1754
+ # Services reviewed (read-only).
1755
+ #
1756
+ # * In Review: Undergoing Amazon Web Services validation (read-only).
1757
+ #
1758
+ # * Action Required: Address any issues Amazon Web Services
1759
+ # highlights. Use the `UpdateOpportunity` API action to update the
1760
+ # opportunity, and ensure you make all required changes. Only these
1761
+ # fields are editable when the `Lifecycle.ReviewStatus` is `Action
1762
+ # Required`:
1763
+ #
1764
+ # * Customer.Account.Address.City
1765
+ #
1766
+ # * Customer.Account.Address.CountryCode
1767
+ #
1768
+ # * Customer.Account.Address.PostalCode
1769
+ #
1770
+ # * Customer.Account.Address.StateOrRegion
1771
+ #
1772
+ # * Customer.Account.Address.StreetAddress
1773
+ #
1774
+ # * Customer.Account.WebsiteUrl
1775
+ #
1776
+ # * LifeCycle.TargetCloseDate
1777
+ #
1778
+ # * Project.ExpectedCustomerSpend.Amount
1779
+ #
1780
+ # * Project.ExpectedCustomerSpend.CurrencyCode
1781
+ #
1782
+ # * Project.CustomerBusinessProblem
1783
+ #
1784
+ # * PartnerOpportunityIdentifier
1785
+ #
1786
+ # After updates, the opportunity re-enters the validation phase.
1787
+ # This process repeats until all issues are resolved, and the
1788
+ # opportunity's `Lifecycle.ReviewStatus` is set to `Approved` or
1789
+ # `Rejected`.
1790
+ #
1791
+ # * Approved: Validated and converted into the Amazon Web Services
1792
+ # seller's pipeline (editable).
1793
+ #
1794
+ # * Rejected: Disqualified (read-only).
1795
+ # @return [String]
1796
+ #
1797
+ # @!attribute [rw] review_status_reason
1798
+ # Indicates the reason a specific decision was taken during the
1799
+ # opportunity review process. This field combines the reasons for both
1800
+ # disqualified and action required statuses, and provides clarity for
1801
+ # why an opportunity was disqualified or required further action.
1802
+ # @return [String]
1803
+ #
1804
+ # @!attribute [rw] stage
1805
+ # Specifies the current stage of the `Opportunity`'s lifecycle as it
1806
+ # maps to Amazon Web Services stages from the current stage in the
1807
+ # partner CRM. This field provides a translated value of the stage,
1808
+ # and offers insight into the `Opportunity`'s progression in the
1809
+ # sales cycle, according to Amazon Web Services definitions.
1810
+ #
1811
+ # <note markdown="1"> A lead and a prospect must be further matured to a `Qualified`
1812
+ # opportunity before submission. Opportunities that were closed/lost
1813
+ # before submission aren't suitable for submission.
1814
+ #
1815
+ # </note>
1816
+ #
1817
+ # The descriptions of each sales stage are:
1818
+ #
1819
+ # * Prospect: Amazon Web Services identifies the opportunity. It can
1820
+ # be active (Comes directly from the end customer through a lead) or
1821
+ # latent (Your account team believes it exists based on research,
1822
+ # account plans, sales plays).
1823
+ #
1824
+ # * Qualified: Your account team engaged with the prospect/end
1825
+ # customer to discuss viability and understand requirements. The
1826
+ # prospect/end customer agreed that the opportunity is real, of
1827
+ # interest, and may solve key business/technical needs.
1828
+ #
1829
+ # * Technical Validation: All parties understand the implementation
1830
+ # plan.
1831
+ #
1832
+ # * Business Validation: Pricing has been proposed, Pricing was
1833
+ # proposed, and all parties agree to the steps to close.
1834
+ #
1835
+ # * Committed: The customer signed the contract, but Amazon Web
1836
+ # Services hasn't started billing.
1837
+ #
1838
+ # * Launched: The workload is complete, and Amazon Web Services has
1839
+ # started billing.
1840
+ #
1841
+ # * Closed Lost: The opportunity is lost, and there are no steps to
1842
+ # move forward.
1843
+ # @return [String]
1844
+ #
1845
+ # @!attribute [rw] target_close_date
1846
+ # Specifies the date when Amazon Web Services expects to start
1847
+ # significant billing, when the project finishes, and when it moves
1848
+ # into production. This field informs the Amazon Web Services seller
1849
+ # about when the opportunity launches and starts to incur Amazon Web
1850
+ # Services usage.
1851
+ #
1852
+ # Ensure the `Target Close Date` isn't in the past.
1853
+ # @return [String]
1854
+ #
1855
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LifeCycleSummary AWS API Documentation
1856
+ #
1857
+ class LifeCycleSummary < Struct.new(
1858
+ :closed_lost_reason,
1859
+ :next_steps,
1860
+ :review_comments,
1861
+ :review_status,
1862
+ :review_status_reason,
1863
+ :stage,
1864
+ :target_close_date)
1865
+ SENSITIVE = [:next_steps]
1866
+ include Aws::Structure
1867
+ end
1868
+
1869
+ # @!attribute [rw] catalog
1870
+ # Specifies the catalog from which to list the engagement invitations.
1871
+ # Use `AWS` for production invitations or `Sandbox` for testing
1872
+ # environments.
1873
+ # @return [String]
1874
+ #
1875
+ # @!attribute [rw] max_results
1876
+ # Specifies the maximum number of engagement invitations to return in
1877
+ # the response. If more results are available, a pagination token will
1878
+ # be provided.
1879
+ # @return [Integer]
1880
+ #
1881
+ # @!attribute [rw] next_token
1882
+ # A pagination token used to retrieve additional pages of results when
1883
+ # the response to a previous request was truncated. Pass this token to
1884
+ # continue listing invitations from where the previous call left off.
1885
+ # @return [String]
1886
+ #
1887
+ # @!attribute [rw] participant_type
1888
+ # Specifies the type of participant for which to list engagement
1889
+ # invitations. Identifies the role of the participant.
1890
+ # @return [String]
1891
+ #
1892
+ # @!attribute [rw] payload_type
1893
+ # Defines the type of payload associated with the engagement
1894
+ # invitations to be listed. The attributes in this payload help decide
1895
+ # on acceptance or rejection of the invitation.
1896
+ # @return [Array<String>]
1897
+ #
1898
+ # @!attribute [rw] sort
1899
+ # Specifies the sorting options for listing engagement invitations.
1900
+ # Invitations can be sorted by fields such as `InvitationDate` or
1901
+ # `Status` to help partners view results in their preferred order.
1902
+ # @return [Types::OpportunityEngagementInvitationSort]
1903
+ #
1904
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListEngagementInvitationsRequest AWS API Documentation
1905
+ #
1906
+ class ListEngagementInvitationsRequest < Struct.new(
1907
+ :catalog,
1908
+ :max_results,
1909
+ :next_token,
1910
+ :participant_type,
1911
+ :payload_type,
1912
+ :sort)
1913
+ SENSITIVE = []
1914
+ include Aws::Structure
1915
+ end
1916
+
1917
+ # @!attribute [rw] engagement_invitation_summaries
1918
+ # An array containing summaries of engagement invitations. Each
1919
+ # summary includes key information such as the invitation title,
1920
+ # invitation date, and the current status of the invitation.
1921
+ # @return [Array<Types::EngagementInvitationSummary>]
1922
+ #
1923
+ # @!attribute [rw] next_token
1924
+ # A pagination token returned when there are more results available
1925
+ # than can be returned in a single call. Use this token to retrieve
1926
+ # additional pages of engagement invitation summaries.
1927
+ # @return [String]
1928
+ #
1929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListEngagementInvitationsResponse AWS API Documentation
1930
+ #
1931
+ class ListEngagementInvitationsResponse < Struct.new(
1932
+ :engagement_invitation_summaries,
1933
+ :next_token)
1934
+ SENSITIVE = []
1935
+ include Aws::Structure
1936
+ end
1937
+
1938
+ # @!attribute [rw] catalog
1939
+ # Specifies the catalog associated with the request. This field takes
1940
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
1941
+ # catalog determines which environment the opportunities are listed
1942
+ # in. Use `AWS` for listing real opportunities in the Amazon Web
1943
+ # Services catalog, and `Sandbox` for to test in a secure and isolated
1944
+ # environment.
1945
+ # @return [String]
1946
+ #
1947
+ # @!attribute [rw] customer_company_name
1948
+ # Filters the opportunities based on the customer's company name.
1949
+ # This allows partners to search for opportunities associated with a
1950
+ # specific customer by matching the provided company name string.
1951
+ # @return [Array<String>]
1952
+ #
1953
+ # @!attribute [rw] identifier
1954
+ # Filters the opportunities based on the opportunity identifier. This
1955
+ # allows partners to retrieve specific opportunities by providing
1956
+ # their unique identifiers, ensuring precise results.
1957
+ # @return [Array<String>]
1958
+ #
1959
+ # @!attribute [rw] last_modified_date
1960
+ # Filters the opportunities based on their last modified date. This
1961
+ # filter helps retrieve opportunities that were updated after the
1962
+ # specified date, allowing partners to track recent changes or
1963
+ # updates.
1964
+ # @return [Types::LastModifiedDate]
1965
+ #
1966
+ # @!attribute [rw] life_cycle_review_status
1967
+ # Filters the opportunities based on their current lifecycle approval
1968
+ # status. Use this filter to retrieve opportunities with statuses such
1969
+ # as `Pending Submission`, `In Review`, `Action Required`, or
1970
+ # `Approved`.
1971
+ # @return [Array<String>]
1972
+ #
1973
+ # @!attribute [rw] life_cycle_stage
1974
+ # Filters the opportunities based on their lifecycle stage. This
1975
+ # filter allows partners to retrieve opportunities at various stages
1976
+ # in the sales cycle, such as `Qualified`, `Technical Validation`,
1977
+ # `Business Validation`, or `Closed Won`.
1978
+ # @return [Array<String>]
1979
+ #
1980
+ # @!attribute [rw] max_results
1981
+ # Specifies the maximum number of results to return in a single call.
1982
+ # This limits the number of opportunities returned in the response to
1983
+ # avoid overloading with too many results at once.
1984
+ #
1985
+ # Default: 20
1986
+ # @return [Integer]
1987
+ #
1988
+ # @!attribute [rw] next_token
1989
+ # A pagination token used to retrieve the next set of results in
1990
+ # subsequent calls. This token is included in the response only if
1991
+ # there are additional result pages available.
1992
+ # @return [String]
1993
+ #
1994
+ # @!attribute [rw] sort
1995
+ # An object that specifies how the response is sorted. The default
1996
+ # `Sort.SortBy` value is `LastModifiedDate`.
1997
+ # @return [Types::OpportunitySort]
1998
+ #
1999
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListOpportunitiesRequest AWS API Documentation
2000
+ #
2001
+ class ListOpportunitiesRequest < Struct.new(
2002
+ :catalog,
2003
+ :customer_company_name,
2004
+ :identifier,
2005
+ :last_modified_date,
2006
+ :life_cycle_review_status,
2007
+ :life_cycle_stage,
2008
+ :max_results,
2009
+ :next_token,
2010
+ :sort)
2011
+ SENSITIVE = []
2012
+ include Aws::Structure
2013
+ end
2014
+
2015
+ # @!attribute [rw] next_token
2016
+ # A pagination token used to retrieve the next set of results in
2017
+ # subsequent calls. This token is included in the response only if
2018
+ # there are additional result pages available.
2019
+ # @return [String]
2020
+ #
2021
+ # @!attribute [rw] opportunity_summaries
2022
+ # An array that contains minimal details for opportunities that match
2023
+ # the request criteria. This summary view provides a quick overview of
2024
+ # relevant opportunities.
2025
+ # @return [Array<Types::OpportunitySummary>]
2026
+ #
2027
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListOpportunitiesResponse AWS API Documentation
2028
+ #
2029
+ class ListOpportunitiesResponse < Struct.new(
2030
+ :next_token,
2031
+ :opportunity_summaries)
2032
+ SENSITIVE = []
2033
+ include Aws::Structure
2034
+ end
2035
+
2036
+ # @!attribute [rw] catalog
2037
+ # Specifies the catalog associated with the request. This field takes
2038
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
2039
+ # catalog determines which environment the solutions are listed in.
2040
+ # Use `AWS` to list solutions in the Amazon Web Services catalog, and
2041
+ # `Sandbox` to list solutions in a secure and isolated testing
2042
+ # environment.
2043
+ # @return [String]
2044
+ #
2045
+ # @!attribute [rw] category
2046
+ # Filters the solutions based on the category to which they belong.
2047
+ # This allows partners to search for solutions within specific
2048
+ # categories, such as `Software`, `Consulting`, or `Managed Services`.
2049
+ # @return [Array<String>]
2050
+ #
2051
+ # @!attribute [rw] identifier
2052
+ # Filters the solutions based on their unique identifier. Use this
2053
+ # filter to retrieve specific solutions by providing the solution's
2054
+ # identifier for accurate results.
2055
+ # @return [Array<String>]
2056
+ #
2057
+ # @!attribute [rw] max_results
2058
+ # The maximum number of results returned by a single call. This value
2059
+ # must be provided in the next call to retrieve the next set of
2060
+ # results.
2061
+ #
2062
+ # Default: 20
2063
+ # @return [Integer]
2064
+ #
2065
+ # @!attribute [rw] next_token
2066
+ # A pagination token used to retrieve the next set of results in
2067
+ # subsequent calls. This token is included in the response only if
2068
+ # there are additional result pages available.
2069
+ # @return [String]
2070
+ #
2071
+ # @!attribute [rw] sort
2072
+ # Object that configures sorting done on the response. Default
2073
+ # `Sort.SortBy` is `Identifier`.
2074
+ # @return [Types::SolutionSort]
2075
+ #
2076
+ # @!attribute [rw] status
2077
+ # Filters the solutions based on their status. This filter helps
2078
+ # retrieve solutions with statuses such as `Active`, `Inactive`, or
2079
+ # `Pending Approval`, allowing partners to manage their solution
2080
+ # portfolios effectively.
2081
+ # @return [Array<String>]
2082
+ #
2083
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListSolutionsRequest AWS API Documentation
2084
+ #
2085
+ class ListSolutionsRequest < Struct.new(
2086
+ :catalog,
2087
+ :category,
2088
+ :identifier,
2089
+ :max_results,
2090
+ :next_token,
2091
+ :sort,
2092
+ :status)
2093
+ SENSITIVE = []
2094
+ include Aws::Structure
2095
+ end
2096
+
2097
+ # @!attribute [rw] next_token
2098
+ # A pagination token used to retrieve the next set of results in
2099
+ # subsequent calls. This token is included in the response only if
2100
+ # there are additional result pages available.
2101
+ # @return [String]
2102
+ #
2103
+ # @!attribute [rw] solution_summaries
2104
+ # An array with minimal details for solutions matching the request
2105
+ # criteria.
2106
+ # @return [Array<Types::SolutionBase>]
2107
+ #
2108
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListSolutionsResponse AWS API Documentation
2109
+ #
2110
+ class ListSolutionsResponse < Struct.new(
2111
+ :next_token,
2112
+ :solution_summaries)
2113
+ SENSITIVE = []
2114
+ include Aws::Structure
2115
+ end
2116
+
2117
+ # An object that contains marketing details for the `Opportunity`.
2118
+ #
2119
+ # @!attribute [rw] aws_funding_used
2120
+ # Indicates if the `Opportunity` is a marketing development fund (MDF)
2121
+ # funded activity.
2122
+ # @return [String]
2123
+ #
2124
+ # @!attribute [rw] campaign_name
2125
+ # Specifies the `Opportunity`'s unique marketing campaign name. The
2126
+ # Amazon Web Services campaign name serves as a reference to specific
2127
+ # marketing initiatives, promotions, or activities related to the
2128
+ # `Opportunity`. This field captures the identifier used to track and
2129
+ # categorize the `Opportunity` within Amazon Web Services's marketing
2130
+ # campaigns. If you don't have a campaign name, reach out to your
2131
+ # Amazon Web Services point of contact to obtain one.
2132
+ # @return [String]
2133
+ #
2134
+ # @!attribute [rw] channels
2135
+ # Specifies the `Opportunity`'s channel that the marketing activity
2136
+ # is associated with or was contacted through. This field provides
2137
+ # information about the specific marketing channel that contributed to
2138
+ # the generation of the lead or contact.
2139
+ # @return [Array<String>]
2140
+ #
2141
+ # @!attribute [rw] source
2142
+ # Indicates if the `Opportunity` was sourced from an Amazon Web
2143
+ # Services marketing activity. Use the value `Marketing Activity`. Use
2144
+ # `None` if it's not associated with an Amazon Web Services marketing
2145
+ # activity. This field helps Amazon Web Services track the return on
2146
+ # marketing investments and enables better distribution of marketing
2147
+ # budgets among partners.
2148
+ # @return [String]
2149
+ #
2150
+ # @!attribute [rw] use_cases
2151
+ # Specifies the marketing activity use case or purpose that led to the
2152
+ # `Opportunity`'s creation or contact. This field captures the
2153
+ # context or marketing activity's execution's intention and the
2154
+ # direct correlation to the generated opportunity or contact. Must be
2155
+ # empty when `Marketing.AWSFundingUsed = No`.
2156
+ #
2157
+ # Valid values: `AI/ML | Analytics | Application Integration |
2158
+ # Blockchain | Business Applications | Cloud Financial Management |
2159
+ # Compute | Containers | Customer Engagement | Databases | Developer
2160
+ # Tools | End User Computing | Front End Web & Mobile | Game Tech |
2161
+ # IoT | Management & Governance | Media Services | Migration &
2162
+ # Transfer | Networking & Content Delivery | Quantum Technologies |
2163
+ # Robotics | Satellite | Security | Serverless | Storage | VR & AR`
2164
+ # @return [Array<String>]
2165
+ #
2166
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Marketing AWS API Documentation
2167
+ #
2168
+ class Marketing < Struct.new(
2169
+ :aws_funding_used,
2170
+ :campaign_name,
2171
+ :channels,
2172
+ :source,
2173
+ :use_cases)
2174
+ SENSITIVE = []
2175
+ include Aws::Structure
2176
+ end
2177
+
2178
+ # Specifies payments details.
2179
+ #
2180
+ # @!attribute [rw] amount
2181
+ # Specifies the payment amount.
2182
+ # @return [String]
2183
+ #
2184
+ # @!attribute [rw] currency_code
2185
+ # Specifies the payment currency.
2186
+ # @return [String]
2187
+ #
2188
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/MonetaryValue AWS API Documentation
2189
+ #
2190
+ class MonetaryValue < Struct.new(
2191
+ :amount,
2192
+ :currency_code)
2193
+ SENSITIVE = []
2194
+ include Aws::Structure
2195
+ end
2196
+
2197
+ # Read-only; shows the last 50 values and change dates for the
2198
+ # `NextSteps` field.
2199
+ #
2200
+ # @!attribute [rw] time
2201
+ # Indicates the step execution time.
2202
+ # @return [Time]
2203
+ #
2204
+ # @!attribute [rw] value
2205
+ # Indicates the step's execution details.
2206
+ # @return [String]
2207
+ #
2208
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/NextStepsHistory AWS API Documentation
2209
+ #
2210
+ class NextStepsHistory < Struct.new(
2211
+ :time,
2212
+ :value)
2213
+ SENSITIVE = []
2214
+ include Aws::Structure
2215
+ end
2216
+
2217
+ # Defines sorting options for retrieving Engagement Invitations. Sorting
2218
+ # can be done based on various criteria like the invitation date or
2219
+ # status.
2220
+ #
2221
+ # @!attribute [rw] sort_by
2222
+ # Specifies the field by which the Engagement Invitations are sorted.
2223
+ # Common values include `InvitationDate` and `Status`.
2224
+ # @return [String]
2225
+ #
2226
+ # @!attribute [rw] sort_order
2227
+ # Defines the order in which the Engagement Invitations are sorted.
2228
+ # The values can be `ASC` (ascending) or `DESC` (descending).
2229
+ # @return [String]
2230
+ #
2231
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/OpportunityEngagementInvitationSort AWS API Documentation
2232
+ #
2233
+ class OpportunityEngagementInvitationSort < Struct.new(
2234
+ :sort_by,
2235
+ :sort_order)
2236
+ SENSITIVE = []
2237
+ include Aws::Structure
2238
+ end
2239
+
2240
+ # Represents the data payload of an Engagement Invitation for a specific
2241
+ # opportunity. This contains detailed information that partners use to
2242
+ # evaluate the engagement.
2243
+ #
2244
+ # @!attribute [rw] customer
2245
+ # Contains information about the customer related to the opportunity
2246
+ # in the Engagement Invitation. This data helps partners understand
2247
+ # the customer’s profile and requirements.
2248
+ # @return [Types::EngagementCustomer]
2249
+ #
2250
+ # @!attribute [rw] project
2251
+ # Describes the project details associated with the opportunity,
2252
+ # including the customer’s needs and the scope of work expected to be
2253
+ # performed.
2254
+ # @return [Types::ProjectDetails]
2255
+ #
2256
+ # @!attribute [rw] receiver_responsibilities
2257
+ # Outlines the responsibilities or expectations of the receiver in the
2258
+ # context of the invitation.
2259
+ # @return [Array<String>]
2260
+ #
2261
+ # @!attribute [rw] sender_contacts
2262
+ # Represents the contact details of the AWS representatives involved
2263
+ # in sending the Engagement Invitation. These contacts are key
2264
+ # stakeholders for the opportunity.
2265
+ # @return [Array<Types::SenderContact>]
2266
+ #
2267
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/OpportunityInvitationPayload AWS API Documentation
2268
+ #
2269
+ class OpportunityInvitationPayload < Struct.new(
2270
+ :customer,
2271
+ :project,
2272
+ :receiver_responsibilities,
2273
+ :sender_contacts)
2274
+ SENSITIVE = []
2275
+ include Aws::Structure
2276
+ end
2277
+
2278
+ # Object that configures response sorting.
2279
+ #
2280
+ # @!attribute [rw] sort_by
2281
+ # Field name to sort by.
2282
+ # @return [String]
2283
+ #
2284
+ # @!attribute [rw] sort_order
2285
+ # Sort order.
2286
+ #
2287
+ # Default: `Descending`
2288
+ # @return [String]
2289
+ #
2290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/OpportunitySort AWS API Documentation
2291
+ #
2292
+ class OpportunitySort < Struct.new(
2293
+ :sort_by,
2294
+ :sort_order)
2295
+ SENSITIVE = []
2296
+ include Aws::Structure
2297
+ end
2298
+
2299
+ # An object that contains an `Opportunity`'s subset of fields.
2300
+ #
2301
+ # @!attribute [rw] catalog
2302
+ # Specifies the catalog associated with the opportunity, either `AWS`
2303
+ # or `Sandbox`. This indicates the environment in which the
2304
+ # opportunity is managed.
2305
+ # @return [String]
2306
+ #
2307
+ # @!attribute [rw] created_date
2308
+ # `DateTime` when the `Opportunity` was last created.
2309
+ # @return [Time]
2310
+ #
2311
+ # @!attribute [rw] customer
2312
+ # An object that contains the `Opportunity`'s customer details.
2313
+ # @return [Types::CustomerSummary]
2314
+ #
2315
+ # @!attribute [rw] id
2316
+ # Read-only, system-generated `Opportunity` unique identifier.
2317
+ # @return [String]
2318
+ #
2319
+ # @!attribute [rw] last_modified_date
2320
+ # `DateTime` when the `Opportunity` was last modified.
2321
+ # @return [Time]
2322
+ #
2323
+ # @!attribute [rw] life_cycle
2324
+ # An object that contains the `Opportunity`'s lifecycle details.
2325
+ # @return [Types::LifeCycleSummary]
2326
+ #
2327
+ # @!attribute [rw] opportunity_type
2328
+ # Specifies opportunity type as a renewal, new, or expansion.
2329
+ #
2330
+ # Opportunity types:
2331
+ #
2332
+ # * New Opportunity: Represents a new business opportunity with a
2333
+ # potential customer that's not previously engaged with your
2334
+ # solutions or services.
2335
+ #
2336
+ # * Renewal Opportunity: Represents an opportunity to renew an
2337
+ # existing contract or subscription with a current customer,
2338
+ # ensuring continuity of service.
2339
+ #
2340
+ # * Expansion Opportunity: Represents an opportunity to expand the
2341
+ # scope of an existing contract or subscription, either by adding
2342
+ # new services or increasing the volume of existing services for a
2343
+ # current customer.
2344
+ # @return [String]
2345
+ #
2346
+ # @!attribute [rw] partner_opportunity_identifier
2347
+ # Specifies the `Opportunity`'s unique identifier in the partner's
2348
+ # CRM system. This value is essential to track and reconcile because
2349
+ # it's included in the outbound payload sent back to the partner. It
2350
+ # allows partners to link an opportunity to their CRM.
2351
+ # @return [String]
2352
+ #
2353
+ # @!attribute [rw] project
2354
+ # An object that contains the `Opportunity`'s project details
2355
+ # summary.
2356
+ # @return [Types::ProjectSummary]
2357
+ #
2358
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/OpportunitySummary AWS API Documentation
2359
+ #
2360
+ class OpportunitySummary < Struct.new(
2361
+ :catalog,
2362
+ :created_date,
2363
+ :customer,
2364
+ :id,
2365
+ :last_modified_date,
2366
+ :life_cycle,
2367
+ :opportunity_type,
2368
+ :partner_opportunity_identifier,
2369
+ :project)
2370
+ SENSITIVE = []
2371
+ include Aws::Structure
2372
+ end
2373
+
2374
+ # Contains the data payload associated with the Engagement Invitation.
2375
+ # This payload includes essential details related to the AWS opportunity
2376
+ # and is used by partners to evaluate whether to accept or reject the
2377
+ # engagement.
2378
+ #
2379
+ # @note Payload is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Payload corresponding to the set member.
2380
+ #
2381
+ # @!attribute [rw] opportunity_invitation
2382
+ # Specifies the details of the opportunity invitation within the
2383
+ # Engagement Invitation payload. This data helps partners understand
2384
+ # the context, scope, and expected involvement for the opportunity
2385
+ # from AWS.
2386
+ # @return [Types::OpportunityInvitationPayload]
2387
+ #
2388
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Payload AWS API Documentation
2389
+ #
2390
+ class Payload < Struct.new(
2391
+ :opportunity_invitation,
2392
+ :unknown)
2393
+ SENSITIVE = []
2394
+ include Aws::Structure
2395
+ include Aws::Structure::Union
2396
+
2397
+ class OpportunityInvitation < Payload; end
2398
+ class Unknown < Payload; end
2399
+ end
2400
+
2401
+ # Tracks the history of next steps associated with the opportunity. This
2402
+ # field captures the actions planned for the future and their timeline.
2403
+ #
2404
+ # @!attribute [rw] time
2405
+ # Indicates the date and time when a particular next step was recorded
2406
+ # or planned. This helps in managing the timeline for the opportunity.
2407
+ # @return [Time]
2408
+ #
2409
+ # @!attribute [rw] value
2410
+ # Represents the details of the next step recorded, such as follow-up
2411
+ # actions or decisions made. This field helps in tracking progress and
2412
+ # ensuring alignment with project goals.
2413
+ # @return [String]
2414
+ #
2415
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ProfileNextStepsHistory AWS API Documentation
2416
+ #
2417
+ class ProfileNextStepsHistory < Struct.new(
2418
+ :time,
2419
+ :value)
2420
+ SENSITIVE = []
2421
+ include Aws::Structure
2422
+ end
2423
+
2424
+ # An object that contains the `Opportunity`'s project details.
2425
+ #
2426
+ # @!attribute [rw] additional_comments
2427
+ # Captures additional comments or information for the `Opportunity`
2428
+ # that weren't captured in other fields.
2429
+ # @return [String]
2430
+ #
2431
+ # @!attribute [rw] apn_programs
2432
+ # Specifies the Amazon Partner Network (APN) program that influenced
2433
+ # the `Opportunity`. APN programs refer to specific partner programs
2434
+ # or initiatives that can impact the `Opportunity`.
2435
+ #
2436
+ # Valid values: `APN Immersion Days | APN Solution Space | ATO
2437
+ # (Authority to Operate) | AWS Marketplace Campaign | IS Immersion Day
2438
+ # SFID Program | ISV Workload Migration | Migration Acceleration
2439
+ # Program | P3 | Partner Launch Initiative | Partner Opportunity
2440
+ # Acceleration Funded | The Next Smart | VMware Cloud on AWS |
2441
+ # Well-Architected | Windows | Workspaces/AppStream Accelerator
2442
+ # Program | WWPS NDPP`
2443
+ # @return [Array<String>]
2444
+ #
2445
+ # @!attribute [rw] competitor_name
2446
+ # Name of the `Opportunity`'s competitor (if any). Use `Other` to
2447
+ # submit a value not in the picklist.
2448
+ # @return [String]
2449
+ #
2450
+ # @!attribute [rw] customer_business_problem
2451
+ # Describes the problem the end customer has, and how the partner is
2452
+ # helping. Utilize this field to provide a clear and concise narrative
2453
+ # that outlines the specific business challenge or issue the customer
2454
+ # has. Elaborate on how the partner's solution or offerings align to
2455
+ # resolve the customer's business problem. Include relevant
2456
+ # information about the partner's value proposition, unique selling
2457
+ # points, and expertise to tackle the issue. Offer insights on how the
2458
+ # proposed solution meets the customer's needs and provides value.
2459
+ # Use concise language and precise descriptions to convey the context
2460
+ # and significance of the `Opportunity`. The content in this field
2461
+ # helps Amazon Web Services understand the nature of the `Opportunity`
2462
+ # and the strategic fit of the partner's solution.
2463
+ # @return [String]
2464
+ #
2465
+ # @!attribute [rw] customer_use_case
2466
+ # Specifies the proposed solution focus or type of workload for the
2467
+ # Opportunity. This field captures the primary use case or objective
2468
+ # of the proposed solution, and provides context and clarity to the
2469
+ # addressed workload.
2470
+ #
2471
+ # Valid values: `AI Machine Learning and Analytics | Archiving | Big
2472
+ # Data: Data Warehouse / Data Integration / ETL / Data Lake / BI |
2473
+ # Blockchain | Business Applications: Mainframe Modernization |
2474
+ # Business Applications & Contact Center | Business Applications & SAP
2475
+ # Production | Centralized Operations Management | Cloud Management
2476
+ # Tools | Cloud Management Tools & DevOps with Continuous Integration
2477
+ # & Continuous Delivery (CICD) | Configuration, Compliance & Auditing
2478
+ # | Connected Services | Containers & Serverless | Content Delivery &
2479
+ # Edge Services | Database | Edge Computing / End User Computing |
2480
+ # Energy | Enterprise Governance & Controls | Enterprise Resource
2481
+ # Planning | Financial Services | Healthcare and Life Sciences | High
2482
+ # Performance Computing | Hybrid Application Platform | Industrial
2483
+ # Software | IOT | Manufacturing, Supply Chain and Operations | Media
2484
+ # & High performance computing (HPC) | Migration / Database Migration
2485
+ # | Monitoring, logging and performance | Monitoring & Observability |
2486
+ # Networking | Outpost | SAP | Security & Compliance | Storage &
2487
+ # Backup | Training | VMC | VMWare | Web development & DevOps`
2488
+ # @return [String]
2489
+ #
2490
+ # @!attribute [rw] delivery_models
2491
+ # Specifies the deployment or consumption model for your solution or
2492
+ # service in the `Opportunity`'s context. You can select multiple
2493
+ # options.
2494
+ #
2495
+ # Options' descriptions from the `Delivery Model` field are:
2496
+ #
2497
+ # * SaaS or PaaS: Your Amazon Web Services based solution deployed as
2498
+ # SaaS or PaaS in your Amazon Web Services environment.
2499
+ #
2500
+ # * BYOL or AMI: Your Amazon Web Services based solution deployed as
2501
+ # BYOL or AMI in the end customer's Amazon Web Services
2502
+ # environment.
2503
+ #
2504
+ # * Managed Services: The end customer's Amazon Web Services business
2505
+ # management (For example: Consulting, design, implementation,
2506
+ # billing support, cost optimization, technical support).
2507
+ #
2508
+ # * Professional Services: Offerings to help enterprise end customers
2509
+ # achieve specific business outcomes for enterprise cloud adoption
2510
+ # (For example: Advisory or transformation planning).
2511
+ #
2512
+ # * Resell: Amazon Web Services accounts and billing management for
2513
+ # your customers.
2514
+ #
2515
+ # * Other: Delivery model not described above.
2516
+ # @return [Array<String>]
2517
+ #
2518
+ # @!attribute [rw] expected_customer_spend
2519
+ # Represents the estimated amount that the customer is expected to
2520
+ # spend on AWS services related to the opportunity. This helps in
2521
+ # evaluating the potential financial value of the opportunity for AWS.
2522
+ # @return [Array<Types::ExpectedCustomerSpend>]
2523
+ #
2524
+ # @!attribute [rw] other_competitor_names
2525
+ # Only allowed when `CompetitorNames` has `Other` selected.
2526
+ # @return [String]
2527
+ #
2528
+ # @!attribute [rw] other_solution_description
2529
+ # Specifies the offered solution for the customer's business problem
2530
+ # when the ` RelatedEntityIdentifiers.Solutions` field value is
2531
+ # `Other`.
2532
+ # @return [String]
2533
+ #
2534
+ # @!attribute [rw] related_opportunity_identifier
2535
+ # Specifies the current opportunity's parent opportunity identifier.
2536
+ # @return [String]
2537
+ #
2538
+ # @!attribute [rw] sales_activities
2539
+ # Specifies the `Opportunity`'s sales activities conducted with the
2540
+ # end customer. These activities help drive Amazon Web Services
2541
+ # assignment priority.
2542
+ #
2543
+ # Valid values:
2544
+ #
2545
+ # * Initialized discussions with customer: Initial conversations with
2546
+ # the customer to understand their needs and introduce your
2547
+ # solution.
2548
+ #
2549
+ # * Customer has shown interest in solution: After initial
2550
+ # discussions, the customer is interested in your solution.
2551
+ #
2552
+ # * Conducted POC / Demo: You conducted a proof of concept (POC) or
2553
+ # demonstration of the solution for the customer.
2554
+ #
2555
+ # * In evaluation / planning stage: The customer is evaluating the
2556
+ # solution and planning potential implementation.
2557
+ #
2558
+ # * Agreed on solution to Business Problem: Both parties agree on how
2559
+ # the solution addresses the customer's business problem.
2560
+ #
2561
+ # * Completed Action Plan: A detailed action plan is complete and
2562
+ # outlines the steps for implementation.
2563
+ #
2564
+ # * Finalized Deployment Need: Both parties agree with and finalized
2565
+ # the deployment needs.
2566
+ #
2567
+ # * SOW Signed: Both parties signed a statement of work (SOW), and
2568
+ # formalize the agreement and detail the project scope and
2569
+ # deliverables.
2570
+ # @return [Array<String>]
2571
+ #
2572
+ # @!attribute [rw] title
2573
+ # Specifies the `Opportunity`'s title or name.
2574
+ # @return [String]
2575
+ #
2576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Project AWS API Documentation
2577
+ #
2578
+ class Project < Struct.new(
2579
+ :additional_comments,
2580
+ :apn_programs,
2581
+ :competitor_name,
2582
+ :customer_business_problem,
2583
+ :customer_use_case,
2584
+ :delivery_models,
2585
+ :expected_customer_spend,
2586
+ :other_competitor_names,
2587
+ :other_solution_description,
2588
+ :related_opportunity_identifier,
2589
+ :sales_activities,
2590
+ :title)
2591
+ SENSITIVE = [:customer_business_problem, :other_solution_description, :title]
2592
+ include Aws::Structure
2593
+ end
2594
+
2595
+ # Contains details about the project associated with the Engagement
2596
+ # Invitation, including the business problem and expected outcomes.
2597
+ #
2598
+ # @!attribute [rw] business_problem
2599
+ # Describes the business problem that the project aims to solve. This
2600
+ # information is crucial for understanding the project’s goals and
2601
+ # objectives.
2602
+ # @return [String]
2603
+ #
2604
+ # @!attribute [rw] expected_customer_spend
2605
+ # Contains revenue estimates for the partner related to the project.
2606
+ # This field provides an idea of the financial potential of the
2607
+ # opportunity for the partner.
2608
+ # @return [Array<Types::ExpectedCustomerSpend>]
2609
+ #
2610
+ # @!attribute [rw] target_completion_date
2611
+ # Specifies the estimated date of project completion. This field helps
2612
+ # track the project timeline and manage expectations.
2613
+ # @return [String]
2614
+ #
2615
+ # @!attribute [rw] title
2616
+ # Specifies the title of the project. This title helps partners
2617
+ # quickly identify and understand the focus of the project.
2618
+ # @return [String]
2619
+ #
2620
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ProjectDetails AWS API Documentation
2621
+ #
2622
+ class ProjectDetails < Struct.new(
2623
+ :business_problem,
2624
+ :expected_customer_spend,
2625
+ :target_completion_date,
2626
+ :title)
2627
+ SENSITIVE = [:business_problem]
2628
+ include Aws::Structure
2629
+ end
2630
+
2631
+ # An object that contains a `Project` object's subset of fields.
2632
+ #
2633
+ # @!attribute [rw] delivery_models
2634
+ # Specifies your solution or service's deployment or consumption
2635
+ # model in the `Opportunity`'s context. You can select multiple
2636
+ # options.
2637
+ #
2638
+ # Options' descriptions from the `Delivery Model` field are:
2639
+ #
2640
+ # * SaaS or PaaS: Your Amazon Web Services based solution deployed as
2641
+ # SaaS or PaaS in your Amazon Web Services environment.
2642
+ #
2643
+ # * BYOL or AMI: Your Amazon Web Services based solution deployed as
2644
+ # BYOL or AMI in the end customer's Amazon Web Services
2645
+ # environment.
2646
+ #
2647
+ # * Managed Services: The end customer's Amazon Web Services business
2648
+ # management (For example: Consulting, design, implementation,
2649
+ # billing support, cost optimization, technical support).
2650
+ #
2651
+ # * Professional Services: Offerings to help enterprise end customers
2652
+ # achieve specific business outcomes for enterprise cloud adoption
2653
+ # (For example: Advisory or transformation planning).
2654
+ #
2655
+ # * Resell: Amazon Web Services accounts and billing management for
2656
+ # your customers.
2657
+ #
2658
+ # * Other: Delivery model not described above.
2659
+ # @return [Array<String>]
2660
+ #
2661
+ # @!attribute [rw] expected_customer_spend
2662
+ # Provides a summary of the expected customer spend for the project,
2663
+ # offering a high-level view of the potential financial impact.
2664
+ # @return [Array<Types::ExpectedCustomerSpend>]
2665
+ #
2666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ProjectSummary AWS API Documentation
2667
+ #
2668
+ class ProjectSummary < Struct.new(
2669
+ :delivery_models,
2670
+ :expected_customer_spend)
2671
+ SENSITIVE = []
2672
+ include Aws::Structure
2673
+ end
2674
+
2675
+ # Represents the entity that received the Engagement Invitation,
2676
+ # including account and company details. This field is essential for
2677
+ # tracking the partner who is being invited to collaborate.
2678
+ #
2679
+ # @note Receiver is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of Receiver corresponding to the set member.
2680
+ #
2681
+ # @!attribute [rw] account
2682
+ # Specifies the AWS account of the partner who received the Engagement
2683
+ # Invitation. This field is used to track the invitation recipient
2684
+ # within the AWS ecosystem.
2685
+ # @return [Types::AccountReceiver]
2686
+ #
2687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Receiver AWS API Documentation
2688
+ #
2689
+ class Receiver < Struct.new(
2690
+ :account,
2691
+ :unknown)
2692
+ SENSITIVE = []
2693
+ include Aws::Structure
2694
+ include Aws::Structure::Union
2695
+
2696
+ class Account < Receiver; end
2697
+ class Unknown < Receiver; end
2698
+ end
2699
+
2700
+ # @!attribute [rw] catalog
2701
+ # Specifies the catalog related to the engagement invitation. Accepted
2702
+ # values are `AWS` and `Sandbox`, which determine the environment in
2703
+ # which the opportunity is managed.
2704
+ # @return [String]
2705
+ #
2706
+ # @!attribute [rw] identifier
2707
+ # Specifies the unique identifier of the `EngagementInvitation` to be
2708
+ # rejected. Providing the correct identifier ensures that the intended
2709
+ # invitation is rejected.
2710
+ # @return [String]
2711
+ #
2712
+ # @!attribute [rw] rejection_reason
2713
+ # Specifies the reason for rejecting the engagement invitation.
2714
+ # Providing a reason helps document the rationale behind the rejection
2715
+ # and assists AWS in tracking patterns or issues. Possible values
2716
+ # include:
2717
+ #
2718
+ # * *Customer problem unclear:* The customer's problem is not clearly
2719
+ # defined.
2720
+ #
2721
+ # * *Next steps unclear:* The next steps required to proceed are not
2722
+ # clear.
2723
+ #
2724
+ # * *Unable to support:* The partner is unable to provide support due
2725
+ # to resource or capability constraints.
2726
+ #
2727
+ # * *Duplicate of Partner Referral:* The opportunity is a duplicate of
2728
+ # an existing referral.
2729
+ #
2730
+ # * *Other:* Any other reason not covered by the specified values.
2731
+ # @return [String]
2732
+ #
2733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/RejectEngagementInvitationRequest AWS API Documentation
2734
+ #
2735
+ class RejectEngagementInvitationRequest < Struct.new(
2736
+ :catalog,
2737
+ :identifier,
2738
+ :rejection_reason)
2739
+ SENSITIVE = []
2740
+ include Aws::Structure
2741
+ end
2742
+
2743
+ # This field provides the associations' information for other entities
2744
+ # with the opportunity. These entities include identifiers for
2745
+ # `AWSProducts`, `Partner Solutions`, and `AWSMarketplaceOffers`.
2746
+ #
2747
+ # @!attribute [rw] aws_marketplace_offers
2748
+ # Takes one value per opportunity. Each value is an Amazon Resource
2749
+ # Name (ARN), in this format: `"offers":
2750
+ # ["arn:aws:aws-marketplace:us-east-1:999999999999:AWSMarketplace/Offer/offer-sampleOffer32"]`.
2751
+ #
2752
+ # Use the [ListEntities][1] action in the Marketplace Catalog APIs for
2753
+ # a list of offers in the associated Marketplace seller account.
2754
+ #
2755
+ #
2756
+ #
2757
+ # [1]: https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_ListEntities.html
2758
+ # @return [Array<String>]
2759
+ #
2760
+ # @!attribute [rw] aws_products
2761
+ # Enables the association of specific Amazon Web Services products
2762
+ # with the `Opportunity`. Partners can indicate the relevant Amazon
2763
+ # Web Services products for the `Opportunity`'s solution and align
2764
+ # with the customer's needs. Returns multiple values separated by
2765
+ # commas. For example, `"AWSProducts" : ["AmazonRedshift",
2766
+ # "AWSAppFabric", "AWSCleanRooms"]`.
2767
+ #
2768
+ # Use the file with the list of Amazon Web Services products hosted on
2769
+ # GitHub: [ Amazon Web Services products][1].
2770
+ #
2771
+ #
2772
+ #
2773
+ # [1]: https://github.com/aws-samples/partner-crm-integration-samples/blob/main/resources/aws_products.json
2774
+ # @return [Array<String>]
2775
+ #
2776
+ # @!attribute [rw] solutions
2777
+ # Enables partner solutions or offerings' association with an
2778
+ # opportunity. To associate a solution, provide the solution's unique
2779
+ # identifier, which you can obtain with the `ListSolutions` operation.
2780
+ #
2781
+ # If the specific solution identifier is not available, you can use
2782
+ # the value `Other` and provide details about the solution in the
2783
+ # `otherSolutionOffered` field. However, once the opportunity reaches
2784
+ # the `Committed` stage or beyond, the `Other` value cannot be used,
2785
+ # and a valid solution identifier must be provided.
2786
+ #
2787
+ # By associating the relevant solutions with the opportunity, you can
2788
+ # clearly communicate the offerings that are being considered or
2789
+ # implemented to address the customer's business problem.
2790
+ # @return [Array<String>]
2791
+ #
2792
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/RelatedEntityIdentifiers AWS API Documentation
2793
+ #
2794
+ class RelatedEntityIdentifiers < Struct.new(
2795
+ :aws_marketplace_offers,
2796
+ :aws_products,
2797
+ :solutions)
2798
+ SENSITIVE = []
2799
+ include Aws::Structure
2800
+ end
2801
+
2802
+ # This error occurs when the specified resource can't be found. The
2803
+ # resource might not exist, or isn't visible with the current
2804
+ # credentials.
2805
+ #
2806
+ # Suggested action: Verify that the resource ID is correct and the
2807
+ # resource is in the expected AWS region. Check IAM permissions for
2808
+ # accessing the resource.
2809
+ #
2810
+ # @!attribute [rw] message
2811
+ # @return [String]
2812
+ #
2813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ResourceNotFoundException AWS API Documentation
2814
+ #
2815
+ class ResourceNotFoundException < Struct.new(
2816
+ :message)
2817
+ SENSITIVE = []
2818
+ include Aws::Structure
2819
+ end
2820
+
2821
+ # An object that contains the details of the sender-provided contact
2822
+ # person for the `EngagementInvitation`.
2823
+ #
2824
+ # @!attribute [rw] business_title
2825
+ # The sender-provided contact's title (job title or role) associated
2826
+ # with the `EngagementInvitation`.
2827
+ # @return [String]
2828
+ #
2829
+ # @!attribute [rw] email
2830
+ # The sender-provided contact's email address associated with the
2831
+ # `EngagementInvitation`.
2832
+ # @return [String]
2833
+ #
2834
+ # @!attribute [rw] first_name
2835
+ # The sender-provided contact's last name associated with the
2836
+ # `EngagementInvitation`.
2837
+ # @return [String]
2838
+ #
2839
+ # @!attribute [rw] last_name
2840
+ # The sender-provided contact's first name associated with the
2841
+ # `EngagementInvitation`.
2842
+ # @return [String]
2843
+ #
2844
+ # @!attribute [rw] phone
2845
+ # The sender-provided contact's phone number associated with the
2846
+ # `EngagementInvitation`.
2847
+ # @return [String]
2848
+ #
2849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/SenderContact AWS API Documentation
2850
+ #
2851
+ class SenderContact < Struct.new(
2852
+ :business_title,
2853
+ :email,
2854
+ :first_name,
2855
+ :last_name,
2856
+ :phone)
2857
+ SENSITIVE = [:business_title, :email, :first_name, :last_name, :phone]
2858
+ include Aws::Structure
2859
+ end
2860
+
2861
+ # This error occurs when the request would cause a service quota to be
2862
+ # exceeded. Service quotas represent the maximum allowed use of a
2863
+ # specific resource, and this error indicates that the request would
2864
+ # surpass that limit.
2865
+ #
2866
+ # Suggested action: Review the [service quotas][1] for the specific
2867
+ # resource, and reduce the usage or request a quota increase through
2868
+ # support if necessary.
2869
+ #
2870
+ #
2871
+ #
2872
+ # [1]: https://docs.aws.amazon.com/partner-central/latest/selling-api/quotas.html
2873
+ #
2874
+ # @!attribute [rw] message
2875
+ # @return [String]
2876
+ #
2877
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ServiceQuotaExceededException AWS API Documentation
2878
+ #
2879
+ class ServiceQuotaExceededException < Struct.new(
2880
+ :message)
2881
+ SENSITIVE = []
2882
+ include Aws::Structure
2883
+ end
2884
+
2885
+ # Specifies a customer's procurement terms details. Required only for
2886
+ # partners in eligible programs.
2887
+ #
2888
+ # @!attribute [rw] delivery_model
2889
+ # Specifies the customer's intended payment type agreement or
2890
+ # procurement method to acquire the solution or service outlined in
2891
+ # the `Opportunity`.
2892
+ # @return [String]
2893
+ #
2894
+ # @!attribute [rw] effective_date
2895
+ # Specifies the `Opportunity`'s customer engagement start date for
2896
+ # the contract's effectiveness.
2897
+ # @return [String]
2898
+ #
2899
+ # @!attribute [rw] expiration_date
2900
+ # Specifies the expiration date for the contract between the customer
2901
+ # and Amazon Web Services partner. It signifies the termination date
2902
+ # of the agreed-upon engagement period between both parties.
2903
+ # @return [String]
2904
+ #
2905
+ # @!attribute [rw] value
2906
+ # Specifies the payment value (amount and currency).
2907
+ # @return [Types::MonetaryValue]
2908
+ #
2909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/SoftwareRevenue AWS API Documentation
2910
+ #
2911
+ class SoftwareRevenue < Struct.new(
2912
+ :delivery_model,
2913
+ :effective_date,
2914
+ :expiration_date,
2915
+ :value)
2916
+ SENSITIVE = []
2917
+ include Aws::Structure
2918
+ end
2919
+
2920
+ # Specifies minimal information for the solution offered to solve the
2921
+ # customer's business problem.
2922
+ #
2923
+ # @!attribute [rw] catalog
2924
+ # Specifies the catalog in which the solution is hosted, either `AWS`
2925
+ # or `Sandbox`. This helps partners differentiate between live
2926
+ # solutions and those in testing environments.
2927
+ # @return [String]
2928
+ #
2929
+ # @!attribute [rw] category
2930
+ # Specifies the solution category, which helps to categorize and
2931
+ # organize the solutions partners offer. Valid values: `Software
2932
+ # Product` \| `Consulting Service` \| `Hardware Product` \|
2933
+ # `Communications Product` \| `Professional Service` \| `Managed
2934
+ # Service` \| `Value-Added Resale Amazon Web Services Service` \|
2935
+ # `Distribution Service` \| `Training Service` \| `Merger and
2936
+ # Acquisition Advising Service`.
2937
+ # @return [String]
2938
+ #
2939
+ # @!attribute [rw] created_date
2940
+ # Indicates the solution creation date. This is useful to track and
2941
+ # audit.
2942
+ # @return [Time]
2943
+ #
2944
+ # @!attribute [rw] id
2945
+ # Enables the association of solutions (offerings) to opportunities.
2946
+ # @return [String]
2947
+ #
2948
+ # @!attribute [rw] name
2949
+ # Specifies the solution name.
2950
+ # @return [String]
2951
+ #
2952
+ # @!attribute [rw] status
2953
+ # Specifies the solution's current status, which indicates its state
2954
+ # in the system. Valid values: `Active` \| `Inactive` \| `Draft`. The
2955
+ # status helps partners and Amazon Web Services track the solution's
2956
+ # lifecycle and availability. Filter for `Active` solutions for
2957
+ # association to an opportunity.
2958
+ # @return [String]
2959
+ #
2960
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/SolutionBase AWS API Documentation
2961
+ #
2962
+ class SolutionBase < Struct.new(
2963
+ :catalog,
2964
+ :category,
2965
+ :created_date,
2966
+ :id,
2967
+ :name,
2968
+ :status)
2969
+ SENSITIVE = []
2970
+ include Aws::Structure
2971
+ end
2972
+
2973
+ # Configures the solutions' response sorting that enables partners to
2974
+ # order solutions based on specified attributes.
2975
+ #
2976
+ # @!attribute [rw] sort_by
2977
+ # Specifies the attribute to sort by, such as `Name`, `CreatedDate`,
2978
+ # or `Status`.
2979
+ # @return [String]
2980
+ #
2981
+ # @!attribute [rw] sort_order
2982
+ # Specifies the sorting order, either `Ascending` or `Descending`. The
2983
+ # default is `Descending`.
2984
+ # @return [String]
2985
+ #
2986
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/SolutionSort AWS API Documentation
2987
+ #
2988
+ class SolutionSort < Struct.new(
2989
+ :sort_by,
2990
+ :sort_order)
2991
+ SENSITIVE = []
2992
+ include Aws::Structure
2993
+ end
2994
+
2995
+ # @!attribute [rw] catalog
2996
+ # Specifies the catalog related to the task. Use `AWS` for production
2997
+ # engagements and `Sandbox` for testing scenarios.
2998
+ # @return [String]
2999
+ #
3000
+ # @!attribute [rw] client_token
3001
+ # A unique, case-sensitive identifier provided by the client to ensure
3002
+ # the idempotency of the request. Can be a random or meaningful
3003
+ # string, but must be unique for each request.
3004
+ #
3005
+ # **A suitable default value is auto-generated.** You should normally
3006
+ # not need to pass this option.
3007
+ # @return [String]
3008
+ #
3009
+ # @!attribute [rw] identifier
3010
+ # Specifies the unique identifier of the `EngagementInvitation` to be
3011
+ # accepted. Providing the correct identifier ensures the right
3012
+ # engagement invitation is processed.
3013
+ # @return [String]
3014
+ #
3015
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartEngagementByAcceptingInvitationTaskRequest AWS API Documentation
3016
+ #
3017
+ class StartEngagementByAcceptingInvitationTaskRequest < Struct.new(
3018
+ :catalog,
3019
+ :client_token,
3020
+ :identifier)
3021
+ SENSITIVE = []
3022
+ include Aws::Structure
3023
+ end
3024
+
3025
+ # @!attribute [rw] engagement_invitation_id
3026
+ # Returns the identifier of the engagement invitation that was
3027
+ # accepted and used to create the opportunity.
3028
+ # @return [String]
3029
+ #
3030
+ # @!attribute [rw] message
3031
+ # If the task fails, this field contains a detailed message describing
3032
+ # the failure and possible recovery steps.
3033
+ # @return [String]
3034
+ #
3035
+ # @!attribute [rw] opportunity_id
3036
+ # Returns the original opportunity identifier passed in the request.
3037
+ # This is the unique identifier for the opportunity.
3038
+ # @return [String]
3039
+ #
3040
+ # @!attribute [rw] reason_code
3041
+ # Indicates the reason for task failure using an enumerated code.
3042
+ # Possible values are: `ACCEPT_ENGAGEMENT_INVITATION_FAILED`,
3043
+ # `GET_ENGAGEMENT_INVITATION_FAILED`, `CREATE_OPPORTUNITY_FAILED`,
3044
+ # `CREATE_RESOURCE_VIEW_AUTOMATION_FAILED`,
3045
+ # `SUBMIT_OPPORTUNITY_FAILED`.
3046
+ # @return [String]
3047
+ #
3048
+ # @!attribute [rw] start_time
3049
+ # The timestamp indicating when the task was initiated. The format
3050
+ # follows RFC 3339 section 5.6.
3051
+ # @return [Time]
3052
+ #
3053
+ # @!attribute [rw] task_arn
3054
+ # The Amazon Resource Name (ARN) of the task, used for tracking and
3055
+ # managing the task within AWS.
3056
+ # @return [String]
3057
+ #
3058
+ # @!attribute [rw] task_id
3059
+ # The unique identifier of the task, used to track the task’s
3060
+ # progress. This value follows a specific pattern:
3061
+ # `^oit-[0-9a-z]{13}$`.
3062
+ # @return [String]
3063
+ #
3064
+ # @!attribute [rw] task_status
3065
+ # Indicates the current status of the task. Valid values include
3066
+ # `IN_PROGRESS`, `COMPLETE`, and `FAILED`.
3067
+ # @return [String]
3068
+ #
3069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartEngagementByAcceptingInvitationTaskResponse AWS API Documentation
3070
+ #
3071
+ class StartEngagementByAcceptingInvitationTaskResponse < Struct.new(
3072
+ :engagement_invitation_id,
3073
+ :message,
3074
+ :opportunity_id,
3075
+ :reason_code,
3076
+ :start_time,
3077
+ :task_arn,
3078
+ :task_id,
3079
+ :task_status)
3080
+ SENSITIVE = []
3081
+ include Aws::Structure
3082
+ end
3083
+
3084
+ # @!attribute [rw] aws_submission
3085
+ # Indicates the level of AWS involvement in the opportunity. This
3086
+ # field helps track AWS's role and participation throughout the
3087
+ # engagement, such as providing technical support, deal assistance, or
3088
+ # sales support.
3089
+ # @return [Types::AwsSubmission]
3090
+ #
3091
+ # @!attribute [rw] catalog
3092
+ # Specifies the catalog in which the engagement is tracked. Acceptable
3093
+ # values include `AWS` for production and `Sandbox` for testing
3094
+ # environments.
3095
+ # @return [String]
3096
+ #
3097
+ # @!attribute [rw] client_token
3098
+ # A unique token provided by the client to ensure the idempotency of
3099
+ # the request. It helps prevent the same task from being performed
3100
+ # multiple times.
3101
+ #
3102
+ # **A suitable default value is auto-generated.** You should normally
3103
+ # not need to pass this option.
3104
+ # @return [String]
3105
+ #
3106
+ # @!attribute [rw] identifier
3107
+ # The unique identifier of the opportunity from which the engagement
3108
+ # task is to be initiated. This ensures the task is applied to the
3109
+ # correct opportunity.
3110
+ # @return [String]
3111
+ #
3112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartEngagementFromOpportunityTaskRequest AWS API Documentation
3113
+ #
3114
+ class StartEngagementFromOpportunityTaskRequest < Struct.new(
3115
+ :aws_submission,
3116
+ :catalog,
3117
+ :client_token,
3118
+ :identifier)
3119
+ SENSITIVE = []
3120
+ include Aws::Structure
3121
+ end
3122
+
3123
+ # @!attribute [rw] message
3124
+ # If the task fails, this field contains a detailed message describing
3125
+ # the failure and possible recovery steps.
3126
+ # @return [String]
3127
+ #
3128
+ # @!attribute [rw] opportunity_id
3129
+ # Returns the original opportunity identifier passed in the request,
3130
+ # which is the unique identifier for the opportunity created in the
3131
+ # partner’s system.
3132
+ # @return [String]
3133
+ #
3134
+ # @!attribute [rw] reason_code
3135
+ # Indicates the reason for task failure using an enumerated code.
3136
+ # Possible values are: `ACCEPT_ENGAGEMENT_INVITATION_FAILED`,
3137
+ # `GET_ENGAGEMENT_INVITATION_FAILED`, `CREATE_OPPORTUNITY_FAILED`,
3138
+ # `CREATE_RESOURCE_VIEW_AUTOMATION_FAILED`,
3139
+ # `SUBMIT_OPPORTUNITY_FAILED`.
3140
+ # @return [String]
3141
+ #
3142
+ # @!attribute [rw] start_time
3143
+ # The timestamp indicating when the task was initiated. The format
3144
+ # follows RFC 3339 section 5.6.
3145
+ # @return [Time]
3146
+ #
3147
+ # @!attribute [rw] task_arn
3148
+ # The Amazon Resource Name (ARN) of the task, used for tracking and
3149
+ # managing the task within AWS.
3150
+ # @return [String]
3151
+ #
3152
+ # @!attribute [rw] task_id
3153
+ # The unique identifier of the task, used to track the task’s
3154
+ # progress. This value follows a specific pattern:
3155
+ # `^oit-[0-9a-z]{13}$`.
3156
+ # @return [String]
3157
+ #
3158
+ # @!attribute [rw] task_status
3159
+ # Indicates the current status of the task. Valid values include
3160
+ # `IN_PROGRESS`, `COMPLETE`, and `FAILED`.
3161
+ # @return [String]
3162
+ #
3163
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartEngagementFromOpportunityTaskResponse AWS API Documentation
3164
+ #
3165
+ class StartEngagementFromOpportunityTaskResponse < Struct.new(
3166
+ :message,
3167
+ :opportunity_id,
3168
+ :reason_code,
3169
+ :start_time,
3170
+ :task_arn,
3171
+ :task_id,
3172
+ :task_status)
3173
+ SENSITIVE = []
3174
+ include Aws::Structure
3175
+ end
3176
+
3177
+ # This error occurs when there are too many requests sent. Review the
3178
+ # provided quotas and adapt your usage to avoid throttling.
3179
+ #
3180
+ # This error occurs when there are too many requests sent. Review the
3181
+ # provided [quotas][1] and retry after the provided delay.
3182
+ #
3183
+ #
3184
+ #
3185
+ # [1]: https://docs.aws.amazon.com/partner-central/latest/selling-api/quotas.html
3186
+ #
3187
+ # @!attribute [rw] message
3188
+ # @return [String]
3189
+ #
3190
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ThrottlingException AWS API Documentation
3191
+ #
3192
+ class ThrottlingException < Struct.new(
3193
+ :message)
3194
+ SENSITIVE = []
3195
+ include Aws::Structure
3196
+ end
3197
+
3198
+ # @!attribute [rw] catalog
3199
+ # Specifies the catalog associated with the request. This field takes
3200
+ # a string value from a predefined list: `AWS` or `Sandbox`. The
3201
+ # catalog determines which environment the opportunity is updated in.
3202
+ # Use `AWS` to update real opportunities in the production
3203
+ # environment, and `Sandbox` to test in a secure and isolated
3204
+ # environment. When you use the `Sandbox` catalog, it allows you to
3205
+ # simulate and validate your interactions with Amazon Web Services
3206
+ # services without affecting live data or operations.
3207
+ # @return [String]
3208
+ #
3209
+ # @!attribute [rw] customer
3210
+ # Specifies details of the customer associated with the `Opportunity`
3211
+ # .
3212
+ # @return [Types::Customer]
3213
+ #
3214
+ # @!attribute [rw] identifier
3215
+ # Read-only, system generated `Opportunity` unique identifier.
3216
+ # @return [String]
3217
+ #
3218
+ # @!attribute [rw] last_modified_date
3219
+ # `DateTime` when the opportunity was last modified.
3220
+ # @return [Time]
3221
+ #
3222
+ # @!attribute [rw] life_cycle
3223
+ # An object that contains lifecycle details for the `Opportunity`.
3224
+ # @return [Types::LifeCycle]
3225
+ #
3226
+ # @!attribute [rw] marketing
3227
+ # An object that contains marketing details for the `Opportunity`.
3228
+ # @return [Types::Marketing]
3229
+ #
3230
+ # @!attribute [rw] national_security
3231
+ # Specifies if the opportunity is associated with national security
3232
+ # concerns. This flag is only applicable when the industry is
3233
+ # `Government`. For national security-related opportunities, specific
3234
+ # validation and compliance rules may apply, impacting the
3235
+ # opportunity's visibility and processing.
3236
+ # @return [String]
3237
+ #
3238
+ # @!attribute [rw] opportunity_type
3239
+ # Specifies the opportunity type as a renewal, new, or expansion.
3240
+ #
3241
+ # Opportunity types:
3242
+ #
3243
+ # * New opportunity: Represents a new business opportunity with a
3244
+ # potential customer that's not previously engaged with your
3245
+ # solutions or services.
3246
+ #
3247
+ # * Renewal opportunity: Represents an opportunity to renew an
3248
+ # existing contract or subscription with a current customer,
3249
+ # ensuring continuity of service.
3250
+ #
3251
+ # * Expansion opportunity: Represents an opportunity to expand the
3252
+ # scope of an existing contract or subscription, either by adding
3253
+ # new services or increasing the volume of existing services for a
3254
+ # current customer.
3255
+ # @return [String]
3256
+ #
3257
+ # @!attribute [rw] partner_opportunity_identifier
3258
+ # Specifies the opportunity's unique identifier in the partner's CRM
3259
+ # system. This value is essential to track and reconcile because it's
3260
+ # included in the outbound payload sent back to the partner.
3261
+ # @return [String]
3262
+ #
3263
+ # @!attribute [rw] primary_needs_from_aws
3264
+ # Identifies the type of support the partner needs from Amazon Web
3265
+ # Services.
3266
+ #
3267
+ # Valid values:
3268
+ #
3269
+ # * Co-Sell - Architectural Validation: Confirmation from Amazon Web
3270
+ # Services that the partner's proposed solution architecture is
3271
+ # aligned with Amazon Web Services best practices and poses minimal
3272
+ # architectural risks.
3273
+ #
3274
+ # * Co-Sell - Business Presentation: Request Amazon Web Services
3275
+ # seller's participation in a joint customer presentation.
3276
+ #
3277
+ # * Co-Sell - Competitive Information: Access to Amazon Web Services
3278
+ # competitive resources and support for the partner's proposed
3279
+ # solution.
3280
+ #
3281
+ # * Co-Sell - Pricing Assistance: Connect with an AWS seller for
3282
+ # support situations where a partner may be receiving an upfront
3283
+ # discount on a service (for example: EDP deals).
3284
+ #
3285
+ # * Co-Sell - Technical Consultation: Connection with an Amazon Web
3286
+ # Services Solutions Architect to address the partner's questions
3287
+ # about the proposed solution.
3288
+ #
3289
+ # * Co-Sell - Total Cost of Ownership Evaluation: Assistance with
3290
+ # quoting different cost savings of proposed solutions on Amazon Web
3291
+ # Services versus on-premises or a traditional hosting environment.
3292
+ #
3293
+ # * Co-Sell - Deal Support: Request Amazon Web Services seller's
3294
+ # support to progress the opportunity (for example: joint customer
3295
+ # call, strategic positioning).
3296
+ #
3297
+ # * Co-Sell - Support for Public Tender / RFx: Opportunity related to
3298
+ # the public sector where the partner needs RFx support from Amazon
3299
+ # Web Services.
3300
+ #
3301
+ # * Do Not Need Support from AWS Sales Rep: Indicates that a partner
3302
+ # doesn't need support from an Amazon Web Services Sales
3303
+ # representative. The opportunity is managed solely by the partner.
3304
+ # It's possible to request co-selling support on these
3305
+ # opportunities at any stage during their lifecycle. Also known as,
3306
+ # for-visibility-only (FVO) opportunity.
3307
+ # @return [Array<String>]
3308
+ #
3309
+ # @!attribute [rw] project
3310
+ # An object that contains project details summary for the
3311
+ # `Opportunity`.
3312
+ # @return [Types::Project]
3313
+ #
3314
+ # @!attribute [rw] software_revenue
3315
+ # Specifies details of a customer's procurement terms. Required only
3316
+ # for partners in eligible programs.
3317
+ # @return [Types::SoftwareRevenue]
3318
+ #
3319
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/UpdateOpportunityRequest AWS API Documentation
3320
+ #
3321
+ class UpdateOpportunityRequest < Struct.new(
3322
+ :catalog,
3323
+ :customer,
3324
+ :identifier,
3325
+ :last_modified_date,
3326
+ :life_cycle,
3327
+ :marketing,
3328
+ :national_security,
3329
+ :opportunity_type,
3330
+ :partner_opportunity_identifier,
3331
+ :primary_needs_from_aws,
3332
+ :project,
3333
+ :software_revenue)
3334
+ SENSITIVE = []
3335
+ include Aws::Structure
3336
+ end
3337
+
3338
+ # @!attribute [rw] id
3339
+ # Read-only, system generated `Opportunity` unique identifier.
3340
+ # @return [String]
3341
+ #
3342
+ # @!attribute [rw] last_modified_date
3343
+ # `DateTime` when the opportunity was last modified.
3344
+ # @return [Time]
3345
+ #
3346
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/UpdateOpportunityResponse AWS API Documentation
3347
+ #
3348
+ class UpdateOpportunityResponse < Struct.new(
3349
+ :id,
3350
+ :last_modified_date)
3351
+ SENSITIVE = []
3352
+ include Aws::Structure
3353
+ end
3354
+
3355
+ # The input fails to satisfy the constraints specified by the service or
3356
+ # business validation rules.
3357
+ #
3358
+ # Suggested action: Review the error message, including the failed
3359
+ # fields and reasons, to correct the request payload.
3360
+ #
3361
+ # @!attribute [rw] error_list
3362
+ # A list of issues that were discovered in the submitted request or
3363
+ # the resource state.
3364
+ # @return [Array<Types::ValidationExceptionError>]
3365
+ #
3366
+ # @!attribute [rw] message
3367
+ # @return [String]
3368
+ #
3369
+ # @!attribute [rw] reason
3370
+ # The primary reason for this validation exception to occur.
3371
+ #
3372
+ # * *REQUEST\_VALIDATION\_FAILED:* The request format is not valid.
3373
+ #
3374
+ # Fix: Verify your request payload includes all required fields,
3375
+ # uses correct data types and string formats.
3376
+ #
3377
+ # * *BUSINESS\_VALIDATION\_FAILED:* The requested change doesn't pass
3378
+ # the business validation rules.
3379
+ #
3380
+ # Fix: Check that your change aligns with the business rules defined
3381
+ # by AWS Partner Central.
3382
+ # @return [String]
3383
+ #
3384
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ValidationException AWS API Documentation
3385
+ #
3386
+ class ValidationException < Struct.new(
3387
+ :error_list,
3388
+ :message,
3389
+ :reason)
3390
+ SENSITIVE = []
3391
+ include Aws::Structure
3392
+ end
3393
+
3394
+ # Indicates an invalid value for a field.
3395
+ #
3396
+ # * *REQUIRED\_FIELD\_MISSING:* The request is missing a required field.
3397
+ #
3398
+ # Fix: Verify your request payload includes all required fields.
3399
+ #
3400
+ # * *INVALID\_ENUM\_VALUE:* The enum field value isn't an accepted
3401
+ # values.
3402
+ #
3403
+ # Fix: Check the documentation for the list of valid enum values, and
3404
+ # update your request with a valid value.
3405
+ #
3406
+ # * *INVALID\_STRING\_FORMAT:* The string format is invalid.
3407
+ #
3408
+ # Fix: Confirm that the string is in the expected format (For example:
3409
+ # email address, date).
3410
+ #
3411
+ # * *INVALID\_VALUE:* The value isn't valid.
3412
+ #
3413
+ # Fix: Confirm that the value meets the expected criteria and is
3414
+ # within the allowable range or set.
3415
+ #
3416
+ # * *TOO\_MANY\_VALUES:* There are too many values in a field that
3417
+ # expects fewer entries.
3418
+ #
3419
+ # Fix: Reduce the number of values to match the expected limit.
3420
+ #
3421
+ # * *ACTION\_NOT\_PERMITTED:* The action isn't permitted due to current
3422
+ # state or permissions.
3423
+ #
3424
+ # Fix: Verify that the action is appropriate for the current state,
3425
+ # and that you have the necessary permissions to perform it.
3426
+ #
3427
+ # * *DUPLICATE\_KEY\_VALUE:* The value in a field duplicates a value
3428
+ # that must be unique.
3429
+ #
3430
+ # Fix: Verify that the value is unique and doesn't duplicate an
3431
+ # existing value in the system.
3432
+ #
3433
+ # @!attribute [rw] code
3434
+ # Specifies the error code for the invalid field value.
3435
+ # @return [String]
3436
+ #
3437
+ # @!attribute [rw] field_name
3438
+ # Specifies the field name with the invalid value.
3439
+ # @return [String]
3440
+ #
3441
+ # @!attribute [rw] message
3442
+ # Specifies the detailed error message for the invalid field value.
3443
+ # @return [String]
3444
+ #
3445
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ValidationExceptionError AWS API Documentation
3446
+ #
3447
+ class ValidationExceptionError < Struct.new(
3448
+ :code,
3449
+ :field_name,
3450
+ :message)
3451
+ SENSITIVE = []
3452
+ include Aws::Structure
3453
+ end
3454
+
3455
+ end
3456
+ end
3457
+