aws-sdk-partnercentralselling 1.19.0 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -42,10 +42,15 @@ module Aws::PartnerCentralSelling
42
42
  # @!attribute [rw] message
43
43
  # @return [String]
44
44
  #
45
+ # @!attribute [rw] reason
46
+ # The reason why access was denied for the requested operation.
47
+ # @return [String]
48
+ #
45
49
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AccessDeniedException AWS API Documentation
46
50
  #
47
51
  class AccessDeniedException < Struct.new(
48
- :message)
52
+ :message,
53
+ :reason)
49
54
  SENSITIVE = []
50
55
  include Aws::Structure
51
56
  end
@@ -331,6 +336,13 @@ module Aws::PartnerCentralSelling
331
336
  # by referencing the associated email address.
332
337
  # @return [String]
333
338
  #
339
+ # @!attribute [rw] phone
340
+ # Specifies the contact phone number of the assignee responsible for
341
+ # the opportunity or engagement. This field enables direct
342
+ # communication for time-sensitive matters and facilitates
343
+ # coordination between AWS and partner teams.
344
+ # @return [String]
345
+ #
334
346
  # @!attribute [rw] business_title
335
347
  # Specifies the business title of the assignee managing the
336
348
  # opportunity. This helps clarify the individual's role and
@@ -344,8 +356,9 @@ module Aws::PartnerCentralSelling
344
356
  :email,
345
357
  :first_name,
346
358
  :last_name,
359
+ :phone,
347
360
  :business_title)
348
- SENSITIVE = [:email, :first_name, :last_name, :business_title]
361
+ SENSITIVE = [:email, :first_name, :last_name, :phone, :business_title]
349
362
  include Aws::Structure
350
363
  end
351
364
 
@@ -426,11 +439,17 @@ module Aws::PartnerCentralSelling
426
439
  # helps partners prioritize their efforts.
427
440
  # @return [String]
428
441
  #
442
+ # @!attribute [rw] aws_products_spend_insights_by_source
443
+ # Source-separated spend insights that provide independent analysis
444
+ # for AWS predictions and partner estimates
445
+ # @return [Types::AwsProductsSpendInsightsBySource]
446
+ #
429
447
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsOpportunityInsights AWS API Documentation
430
448
  #
431
449
  class AwsOpportunityInsights < Struct.new(
432
450
  :next_best_actions,
433
- :engagement_score)
451
+ :engagement_score,
452
+ :aws_products_spend_insights_by_source)
434
453
  SENSITIVE = []
435
454
  include Aws::Structure
436
455
  end
@@ -531,6 +550,143 @@ module Aws::PartnerCentralSelling
531
550
  include Aws::Structure
532
551
  end
533
552
 
553
+ # AWS services with program eligibility indicators (MAP, modernization
554
+ # pathways), cost estimates, and optimization recommendations.
555
+ #
556
+ # @!attribute [rw] product_code
557
+ # AWS Partner Central product identifier used for opportunity
558
+ # association
559
+ # @return [String]
560
+ #
561
+ # @!attribute [rw] service_code
562
+ # Pricing Calculator service code (links to original calculator URL)
563
+ # @return [String]
564
+ #
565
+ # @!attribute [rw] categories
566
+ # List of program and pathway categories this product is eligible for
567
+ # @return [Array<String>]
568
+ #
569
+ # @!attribute [rw] amount
570
+ # Baseline service cost before optimizations (may be null for
571
+ # AWS-sourced predictions)
572
+ # @return [String]
573
+ #
574
+ # @!attribute [rw] optimized_amount
575
+ # Service cost after applying optimizations (may be null for
576
+ # AWS-sourced predictions)
577
+ # @return [String]
578
+ #
579
+ # @!attribute [rw] potential_savings_amount
580
+ # Service-specific cost reduction through optimizations (may be null
581
+ # for AWS-sourced predictions)
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] optimizations
585
+ # List of specific optimization recommendations for this product
586
+ # @return [Array<Types::AwsProductOptimization>]
587
+ #
588
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsProductDetails AWS API Documentation
589
+ #
590
+ class AwsProductDetails < Struct.new(
591
+ :product_code,
592
+ :service_code,
593
+ :categories,
594
+ :amount,
595
+ :optimized_amount,
596
+ :potential_savings_amount,
597
+ :optimizations)
598
+ SENSITIVE = [:amount, :optimized_amount, :potential_savings_amount]
599
+ include Aws::Structure
600
+ end
601
+
602
+ # Comprehensive spend analysis for a single source (AWS or Partner)
603
+ # including total amounts, optimization savings, program category
604
+ # breakdowns, and detailed product-level insights.
605
+ #
606
+ # @!attribute [rw] currency_code
607
+ # ISO 4217 currency code (e.g., "USD") ensuring consistent
608
+ # representation across calculations
609
+ # @return [String]
610
+ #
611
+ # @!attribute [rw] frequency
612
+ # Time period for spend amounts: "Monthly" or "Annually"
613
+ # @return [String]
614
+ #
615
+ # @!attribute [rw] total_amount
616
+ # Total estimated spend for this source before optimizations
617
+ # @return [String]
618
+ #
619
+ # @!attribute [rw] total_optimized_amount
620
+ # Total estimated spend after applying recommended optimizations
621
+ # @return [String]
622
+ #
623
+ # @!attribute [rw] total_potential_savings_amount
624
+ # Quantified savings achievable through implementing optimizations
625
+ # @return [String]
626
+ #
627
+ # @!attribute [rw] total_amount_by_category
628
+ # Spend amounts mapped to AWS programs and modernization pathways
629
+ # @return [Hash<String,String>]
630
+ #
631
+ # @!attribute [rw] aws_products
632
+ # Product-level details including costs and optimization
633
+ # recommendations
634
+ # @return [Array<Types::AwsProductDetails>]
635
+ #
636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsProductInsights AWS API Documentation
637
+ #
638
+ class AwsProductInsights < Struct.new(
639
+ :currency_code,
640
+ :frequency,
641
+ :total_amount,
642
+ :total_optimized_amount,
643
+ :total_potential_savings_amount,
644
+ :total_amount_by_category,
645
+ :aws_products)
646
+ SENSITIVE = [:currency_code, :total_amount, :total_optimized_amount, :total_potential_savings_amount, :total_amount_by_category]
647
+ include Aws::Structure
648
+ end
649
+
650
+ # Details for a specific optimization recommendation
651
+ #
652
+ # @!attribute [rw] description
653
+ # Human-readable explanation of the optimization strategy
654
+ # @return [String]
655
+ #
656
+ # @!attribute [rw] savings_amount
657
+ # Quantified cost savings achievable by implementing this optimization
658
+ # @return [String]
659
+ #
660
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsProductOptimization AWS API Documentation
661
+ #
662
+ class AwsProductOptimization < Struct.new(
663
+ :description,
664
+ :savings_amount)
665
+ SENSITIVE = [:savings_amount]
666
+ include Aws::Structure
667
+ end
668
+
669
+ # Source-separated spend insights that provide independent analysis for
670
+ # AWS predictions and partner estimates
671
+ #
672
+ # @!attribute [rw] partner
673
+ # Partner-sourced insights derived from Pricing Calculator URLs
674
+ # including detailed service costs and optimizations
675
+ # @return [Types::AwsProductInsights]
676
+ #
677
+ # @!attribute [rw] aws
678
+ # AI-generated insights including recommended products from AWS
679
+ # @return [Types::AwsProductInsights]
680
+ #
681
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/AwsProductsSpendInsightsBySource AWS API Documentation
682
+ #
683
+ class AwsProductsSpendInsightsBySource < Struct.new(
684
+ :partner,
685
+ :aws)
686
+ SENSITIVE = []
687
+ include Aws::Structure
688
+ end
689
+
534
690
  # Indicates the level of AWS involvement in the opportunity. This field
535
691
  # helps track AWS participation throughout the engagement, such as
536
692
  # providing technical support, deal assistance, and sales support.
@@ -642,6 +798,94 @@ module Aws::PartnerCentralSelling
642
798
  include Aws::Structure
643
799
  end
644
800
 
801
+ # @!attribute [rw] catalog
802
+ # Specifies the catalog associated with the engagement context
803
+ # request. This field takes a string value from a predefined list:
804
+ # `AWS` or `Sandbox`. The catalog determines which environment the
805
+ # engagement context is created in. Use `AWS` to create contexts in
806
+ # the production environment, and `Sandbox` for testing in secure,
807
+ # isolated environments.
808
+ # @return [String]
809
+ #
810
+ # @!attribute [rw] engagement_identifier
811
+ # The unique identifier of the `Engagement` for which the context is
812
+ # being created. This parameter ensures the context is associated with
813
+ # the correct engagement and provides the necessary linkage between
814
+ # the engagement and its contextual information.
815
+ # @return [String]
816
+ #
817
+ # @!attribute [rw] client_token
818
+ # A unique, case-sensitive identifier provided by the client to ensure
819
+ # that the request is handled exactly once. This token helps prevent
820
+ # duplicate context creations and must not exceed sixty-four
821
+ # alphanumeric characters. Use a UUID or other unique string to ensure
822
+ # idempotency.
823
+ #
824
+ # **A suitable default value is auto-generated.** You should normally
825
+ # not need to pass this option.
826
+ # @return [String]
827
+ #
828
+ # @!attribute [rw] type
829
+ # Specifies the type of context being created for the engagement. This
830
+ # field determines the structure and content of the context payload.
831
+ # Valid values include `CustomerProject` for customer project-related
832
+ # contexts. The type field ensures that the context is properly
833
+ # categorized and processed according to its intended purpose.
834
+ # @return [String]
835
+ #
836
+ # @!attribute [rw] payload
837
+ # Represents the payload of an Engagement context. The structure of
838
+ # this payload varies based on the context type specified in the
839
+ # EngagementContextDetails.
840
+ # @return [Types::EngagementContextPayload]
841
+ #
842
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/CreateEngagementContextRequest AWS API Documentation
843
+ #
844
+ class CreateEngagementContextRequest < Struct.new(
845
+ :catalog,
846
+ :engagement_identifier,
847
+ :client_token,
848
+ :type,
849
+ :payload)
850
+ SENSITIVE = []
851
+ include Aws::Structure
852
+ end
853
+
854
+ # @!attribute [rw] engagement_id
855
+ # The unique identifier of the engagement to which the context was
856
+ # added. This ID confirms the successful association of the context
857
+ # with the specified engagement.
858
+ # @return [String]
859
+ #
860
+ # @!attribute [rw] engagement_arn
861
+ # The Amazon Resource Name (ARN) of the engagement to which the
862
+ # context was added. This globally unique identifier can be used for
863
+ # cross-service references and IAM policies.
864
+ # @return [String]
865
+ #
866
+ # @!attribute [rw] engagement_last_modified_at
867
+ # The timestamp indicating when the engagement was last modified as a
868
+ # result of adding the context, in ISO 8601 format (UTC). Example:
869
+ # "2023-05-01T20:37:46Z".
870
+ # @return [Time]
871
+ #
872
+ # @!attribute [rw] context_id
873
+ # The unique identifier assigned to the newly created engagement
874
+ # context. This ID can be used to reference the specific context
875
+ # within the engagement for future operations.
876
+ # @return [String]
877
+ #
878
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/CreateEngagementContextResponse AWS API Documentation
879
+ #
880
+ class CreateEngagementContextResponse < Struct.new(
881
+ :engagement_id,
882
+ :engagement_arn,
883
+ :engagement_last_modified_at,
884
+ :context_id)
885
+ SENSITIVE = []
886
+ include Aws::Structure
887
+ end
888
+
645
889
  # @!attribute [rw] catalog
646
890
  # Specifies the catalog related to the engagement. Accepted values are
647
891
  # `AWS` and `Sandbox`, which determine the environment in which the
@@ -765,11 +1009,18 @@ module Aws::PartnerCentralSelling
765
1009
  # The Amazon Resource Name (ARN) that identifies the engagement.
766
1010
  # @return [String]
767
1011
  #
1012
+ # @!attribute [rw] modified_at
1013
+ # The timestamp indicating when the engagement was last modified, in
1014
+ # ISO 8601 format (UTC). For newly created engagements, this value
1015
+ # matches the creation timestamp. Example: "2023-05-01T20:37:46Z".
1016
+ # @return [Time]
1017
+ #
768
1018
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/CreateEngagementResponse AWS API Documentation
769
1019
  #
770
1020
  class CreateEngagementResponse < Struct.new(
771
1021
  :id,
772
- :arn)
1022
+ :arn,
1023
+ :modified_at)
773
1024
  SENSITIVE = []
774
1025
  include Aws::Structure
775
1026
  end
@@ -1266,6 +1517,11 @@ module Aws::PartnerCentralSelling
1266
1517
  # structure allows for specifying the type of context and its associated
1267
1518
  # payload.
1268
1519
  #
1520
+ # @!attribute [rw] id
1521
+ # The unique identifier of the engagement context. This ID is used to
1522
+ # reference and manage the specific context within the engagement.
1523
+ # @return [String]
1524
+ #
1269
1525
  # @!attribute [rw] type
1270
1526
  # Specifies the type of Engagement context. Valid values are
1271
1527
  # "CustomerProject" or "Document", indicating whether the context
@@ -1280,6 +1536,7 @@ module Aws::PartnerCentralSelling
1280
1536
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/EngagementContextDetails AWS API Documentation
1281
1537
  #
1282
1538
  class EngagementContextDetails < Struct.new(
1539
+ :id,
1283
1540
  :type,
1284
1541
  :payload)
1285
1542
  SENSITIVE = []
@@ -1300,16 +1557,24 @@ module Aws::PartnerCentralSelling
1300
1557
  # the Type in EngagementContextDetails is set to "CustomerProject".
1301
1558
  # @return [Types::CustomerProjectsContext]
1302
1559
  #
1560
+ # @!attribute [rw] lead
1561
+ # Contains detailed information about a lead when the context type is
1562
+ # "Lead". This field is present only when the Type in
1563
+ # EngagementContextDetails is set to "Lead".
1564
+ # @return [Types::LeadContext]
1565
+ #
1303
1566
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/EngagementContextPayload AWS API Documentation
1304
1567
  #
1305
1568
  class EngagementContextPayload < Struct.new(
1306
1569
  :customer_project,
1570
+ :lead,
1307
1571
  :unknown)
1308
1572
  SENSITIVE = []
1309
1573
  include Aws::Structure
1310
1574
  include Aws::Structure::Union
1311
1575
 
1312
1576
  class CustomerProject < EngagementContextPayload; end
1577
+ class Lead < EngagementContextPayload; end
1313
1578
  class Unknown < EngagementContextPayload; end
1314
1579
  end
1315
1580
 
@@ -1628,6 +1893,23 @@ module Aws::PartnerCentralSelling
1628
1893
  # The number of members in the Engagement.
1629
1894
  # @return [Integer]
1630
1895
  #
1896
+ # @!attribute [rw] modified_at
1897
+ # The timestamp indicating when the engagement was last modified, in
1898
+ # ISO 8601 format (UTC). Example: "2023-05-01T20:37:46Z".
1899
+ # @return [Time]
1900
+ #
1901
+ # @!attribute [rw] modified_by
1902
+ # The AWS account ID of the user who last modified the engagement.
1903
+ # This field helps track who made the most recent changes to the
1904
+ # engagement.
1905
+ # @return [String]
1906
+ #
1907
+ # @!attribute [rw] context_types
1908
+ # An array of context types associated with the engagement, such as
1909
+ # "CustomerProject" or "Lead". This provides a quick overview of
1910
+ # the types of contexts included in the engagement.
1911
+ # @return [Array<String>]
1912
+ #
1631
1913
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/EngagementSummary AWS API Documentation
1632
1914
  #
1633
1915
  class EngagementSummary < Struct.new(
@@ -1636,8 +1918,11 @@ module Aws::PartnerCentralSelling
1636
1918
  :title,
1637
1919
  :created_at,
1638
1920
  :created_by,
1639
- :member_count)
1640
- SENSITIVE = [:created_by]
1921
+ :member_count,
1922
+ :modified_at,
1923
+ :modified_by,
1924
+ :context_types)
1925
+ SENSITIVE = [:created_by, :modified_by]
1641
1926
  include Aws::Structure
1642
1927
  end
1643
1928
 
@@ -1684,7 +1969,7 @@ module Aws::PartnerCentralSelling
1684
1969
  :frequency,
1685
1970
  :target_company,
1686
1971
  :estimation_url)
1687
- SENSITIVE = [:amount, :currency_code, :estimation_url]
1972
+ SENSITIVE = [:amount, :currency_code]
1688
1973
  include Aws::Structure
1689
1974
  end
1690
1975
 
@@ -1710,12 +1995,6 @@ module Aws::PartnerCentralSelling
1710
1995
  include Aws::Structure
1711
1996
  end
1712
1997
 
1713
- # @!attribute [rw] catalog
1714
- # Specifies the catalog in which the AWS Opportunity exists. This is
1715
- # the environment (e.g., `AWS` or `Sandbox`) where the opportunity is
1716
- # being managed.
1717
- # @return [String]
1718
- #
1719
1998
  # @!attribute [rw] related_opportunity_id
1720
1999
  # Provides the unique identifier of the related partner opportunity,
1721
2000
  # allowing partners to link the AWS Opportunity to their corresponding
@@ -1785,10 +2064,15 @@ module Aws::PartnerCentralSelling
1785
2064
  # understanding the broader context of the opportunity.
1786
2065
  # @return [Types::AwsOpportunityProject]
1787
2066
  #
2067
+ # @!attribute [rw] catalog
2068
+ # Specifies the catalog in which the AWS Opportunity exists. This is
2069
+ # the environment (e.g., `AWS` or `Sandbox`) where the opportunity is
2070
+ # being managed.
2071
+ # @return [String]
2072
+ #
1788
2073
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/GetAwsOpportunitySummaryResponse AWS API Documentation
1789
2074
  #
1790
2075
  class GetAwsOpportunitySummaryResponse < Struct.new(
1791
- :catalog,
1792
2076
  :related_opportunity_id,
1793
2077
  :origin,
1794
2078
  :involvement_type,
@@ -1799,7 +2083,8 @@ module Aws::PartnerCentralSelling
1799
2083
  :involvement_type_change_reason,
1800
2084
  :related_entity_ids,
1801
2085
  :customer,
1802
- :project)
2086
+ :project,
2087
+ :catalog)
1803
2088
  SENSITIVE = []
1804
2089
  include Aws::Structure
1805
2090
  end
@@ -1993,6 +2278,18 @@ module Aws::PartnerCentralSelling
1993
2278
  # their roles or permissions within the Engagement.
1994
2279
  # @return [Integer]
1995
2280
  #
2281
+ # @!attribute [rw] modified_at
2282
+ # The timestamp indicating when the engagement was last modified, in
2283
+ # ISO 8601 format (UTC). Example: "2023-05-01T20:37:46Z". This helps
2284
+ # track the most recent changes to the engagement.
2285
+ # @return [Time]
2286
+ #
2287
+ # @!attribute [rw] modified_by
2288
+ # The AWS account ID of the user who last modified the engagement.
2289
+ # This field helps track who made the most recent changes to the
2290
+ # engagement.
2291
+ # @return [String]
2292
+ #
1996
2293
  # @!attribute [rw] contexts
1997
2294
  # A list of context objects associated with the engagement. Each
1998
2295
  # context provides additional information related to the Engagement,
@@ -2009,8 +2306,10 @@ module Aws::PartnerCentralSelling
2009
2306
  :created_at,
2010
2307
  :created_by,
2011
2308
  :member_count,
2309
+ :modified_at,
2310
+ :modified_by,
2012
2311
  :contexts)
2013
- SENSITIVE = [:created_by]
2312
+ SENSITIVE = [:created_by, :modified_by]
2014
2313
  include Aws::Structure
2015
2314
  end
2016
2315
 
@@ -2532,82 +2831,407 @@ module Aws::PartnerCentralSelling
2532
2831
  include Aws::Structure
2533
2832
  end
2534
2833
 
2535
- # An object that contains the `Opportunity` lifecycle's details.
2834
+ # An object that contains a lead contact's details associated with the
2835
+ # engagement. This provides contact information for individuals involved
2836
+ # in lead-related activities.
2536
2837
  #
2537
- # @!attribute [rw] stage
2538
- # Specifies the current stage of the `Opportunity`'s lifecycle as it
2539
- # maps to Amazon Web Services stages from the current stage in the
2540
- # partner CRM. This field provides a translated value of the stage,
2541
- # and offers insight into the `Opportunity`'s progression in the
2542
- # sales cycle, according to Amazon Web Services definitions.
2838
+ # @!attribute [rw] business_title
2839
+ # The lead contact's business title or job role associated with the
2840
+ # engagement.
2841
+ # @return [String]
2543
2842
  #
2544
- # <note markdown="1"> A lead and a prospect must be further matured to a `Qualified`
2545
- # opportunity before submission. Opportunities that were closed/lost
2546
- # before submission aren't suitable for submission.
2843
+ # @!attribute [rw] email
2844
+ # The lead contact's email address associated with the engagement.
2845
+ # @return [String]
2547
2846
  #
2548
- # </note>
2847
+ # @!attribute [rw] first_name
2848
+ # The lead contact's first name associated with the engagement.
2849
+ # @return [String]
2549
2850
  #
2550
- # The descriptions of each sales stage are:
2851
+ # @!attribute [rw] last_name
2852
+ # The lead contact's last name associated with the engagement.
2853
+ # @return [String]
2551
2854
  #
2552
- # * Prospect: Amazon Web Services identifies the opportunity. It can
2553
- # be active (Comes directly from the end customer through a lead) or
2554
- # latent (Your account team believes it exists based on research,
2555
- # account plans, sales plays).
2855
+ # @!attribute [rw] phone
2856
+ # The lead contact's phone number associated with the engagement.
2857
+ # @return [String]
2556
2858
  #
2557
- # * Qualified: Your account team engaged with the customer to discuss
2558
- # viability and requirements. The customer agreed that the
2559
- # opportunity is real, of interest, and may solve business/technical
2560
- # needs.
2859
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadContact AWS API Documentation
2561
2860
  #
2562
- # * Technical Validation: All parties understand the implementation
2563
- # plan.
2861
+ class LeadContact < Struct.new(
2862
+ :business_title,
2863
+ :email,
2864
+ :first_name,
2865
+ :last_name,
2866
+ :phone)
2867
+ SENSITIVE = [:business_title, :email, :first_name, :last_name, :phone]
2868
+ include Aws::Structure
2869
+ end
2870
+
2871
+ # Provides comprehensive details about a lead associated with an
2872
+ # engagement. This structure contains information about lead
2873
+ # qualification status, customer details, and interaction history to
2874
+ # facilitate lead management and tracking within the engagement.
2564
2875
  #
2565
- # * Business Validation: Pricing was proposed, and all parties agree
2566
- # to the steps to close.
2876
+ # @!attribute [rw] qualification_status
2877
+ # Indicates the current qualification status of the lead, such as
2878
+ # whether it has been qualified, disqualified, or is still under
2879
+ # evaluation. This helps track the lead's progression through the
2880
+ # qualification process.
2881
+ # @return [String]
2567
2882
  #
2568
- # * Committed: The customer signed the contract, but Amazon Web
2569
- # Services hasn't started billing.
2883
+ # @!attribute [rw] customer
2884
+ # Contains detailed information about the customer associated with the
2885
+ # lead, including company information, contact details, and other
2886
+ # relevant customer data.
2887
+ # @return [Types::LeadCustomer]
2570
2888
  #
2571
- # * Launched: The workload is complete, and Amazon Web Services has
2572
- # started billing.
2889
+ # @!attribute [rw] interactions
2890
+ # An array of interactions that have occurred with the lead, providing
2891
+ # a history of communications, meetings, and other engagement
2892
+ # activities related to the lead.
2893
+ # @return [Array<Types::LeadInteraction>]
2573
2894
  #
2574
- # * Closed Lost: The opportunity is lost, and there are no steps to
2575
- # move forward.
2895
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadContext AWS API Documentation
2896
+ #
2897
+ class LeadContext < Struct.new(
2898
+ :qualification_status,
2899
+ :customer,
2900
+ :interactions)
2901
+ SENSITIVE = []
2902
+ include Aws::Structure
2903
+ end
2904
+
2905
+ # Contains detailed information about the customer associated with the
2906
+ # lead, including company details, industry classification, and AWS
2907
+ # maturity level. This information helps qualify and categorize the lead
2908
+ # for appropriate engagement strategies.
2909
+ #
2910
+ # @!attribute [rw] industry
2911
+ # Specifies the industry sector to which the lead customer's company
2912
+ # belongs. This categorization helps in understanding the customer's
2913
+ # business context and tailoring appropriate solutions.
2576
2914
  # @return [String]
2577
2915
  #
2578
- # @!attribute [rw] closed_lost_reason
2579
- # Specifies the reason code when an opportunity is marked as *Closed
2580
- # Lost*. When you select an appropriate reason code, you communicate
2581
- # the context for closing the `Opportunity`, and aid in accurate
2582
- # reports and analysis of opportunity outcomes. The possible values
2583
- # are:
2916
+ # @!attribute [rw] company_name
2917
+ # The name of the lead customer's company. This field is essential
2918
+ # for identifying and tracking the customer organization associated
2919
+ # with the lead.
2920
+ # @return [String]
2584
2921
  #
2585
- # * Customer Deficiency: The customer lacked necessary resources or
2586
- # capabilities.
2922
+ # @!attribute [rw] website_url
2923
+ # The website URL of the lead customer's company. This provides
2924
+ # additional context about the customer organization and helps verify
2925
+ # company legitimacy and size.
2926
+ # @return [String]
2587
2927
  #
2588
- # * Delay/Cancellation of Project: The project was delayed or
2589
- # canceled.
2928
+ # @!attribute [rw] address
2929
+ # An object that contains an `Address` object's subset of fields.
2930
+ # @return [Types::AddressSummary]
2590
2931
  #
2591
- # * Legal/Tax/Regulatory: Legal, tax, or regulatory issues prevented
2592
- # progress.
2932
+ # @!attribute [rw] aws_maturity
2933
+ # Indicates the customer's level of experience and adoption with AWS
2934
+ # services. This assessment helps determine the appropriate engagement
2935
+ # approach and solution complexity.
2936
+ # @return [String]
2593
2937
  #
2594
- # * Lost to Competitor—Google: The opportunity was lost to Google.
2938
+ # @!attribute [rw] market_segment
2939
+ # Specifies the market segment classification of the lead customer,
2940
+ # such as enterprise, mid-market, or small business. This segmentation
2941
+ # helps in targeting appropriate solutions and engagement strategies.
2942
+ # @return [String]
2595
2943
  #
2596
- # * Lost to Competitor—Microsoft: The opportunity was lost to
2597
- # Microsoft.
2944
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadCustomer AWS API Documentation
2598
2945
  #
2599
- # * Lost to Competitor—SoftLayer: The opportunity was lost to
2600
- # SoftLayer.
2946
+ class LeadCustomer < Struct.new(
2947
+ :industry,
2948
+ :company_name,
2949
+ :website_url,
2950
+ :address,
2951
+ :aws_maturity,
2952
+ :market_segment)
2953
+ SENSITIVE = [:company_name, :website_url]
2954
+ include Aws::Structure
2955
+ end
2956
+
2957
+ # Represents a specific interaction or touchpoint with a lead customer.
2958
+ # This structure captures details about communications, meetings, or
2959
+ # other engagement activities that help track the lead's progression
2960
+ # and engagement history.
2601
2961
  #
2602
- # * Lost to Competitor—VMWare: The opportunity was lost to VMWare.
2962
+ # @!attribute [rw] source_type
2963
+ # Specifies the type of source that generated the lead interaction,
2964
+ # such as "Event", "Website", "Referral", or "Campaign". This
2965
+ # categorization helps track lead generation effectiveness across
2966
+ # different channels.
2967
+ # @return [String]
2603
2968
  #
2604
- # * Lost to Competitor—Other: The opportunity was lost to a competitor
2605
- # not listed above.
2969
+ # @!attribute [rw] source_id
2970
+ # The unique identifier of the specific source that generated the lead
2971
+ # interaction. This ID provides traceability back to the original lead
2972
+ # generation activity.
2973
+ # @return [String]
2606
2974
  #
2607
- # * No Opportunity: There was no opportunity to pursue.
2975
+ # @!attribute [rw] source_name
2976
+ # The descriptive name of the source that generated the lead
2977
+ # interaction, providing a human-readable identifier for the lead
2978
+ # generation channel or activity.
2979
+ # @return [String]
2608
2980
  #
2609
- # * On Premises Deployment: The customer chose an on-premises
2610
- # solution.
2981
+ # @!attribute [rw] usecase
2982
+ # Describes the specific use case or business scenario discussed
2983
+ # during the lead interaction. This helps categorize the customer's
2984
+ # interests and potential solutions.
2985
+ # @return [String]
2986
+ #
2987
+ # @!attribute [rw] interaction_date
2988
+ # The date and time when the lead interaction occurred, in ISO 8601
2989
+ # format (UTC). This timestamp helps track the chronology of lead
2990
+ # engagement activities.
2991
+ # @return [Time]
2992
+ #
2993
+ # @!attribute [rw] customer_action
2994
+ # Describes the action taken by the customer during or as a result of
2995
+ # the interaction, such as requesting information, scheduling a
2996
+ # meeting, or expressing interest in a solution.
2997
+ # @return [String]
2998
+ #
2999
+ # @!attribute [rw] business_problem
3000
+ # Describes the business problem or challenge that the customer
3001
+ # discussed during the interaction. This information helps qualify the
3002
+ # lead and identify appropriate solutions.
3003
+ # @return [String]
3004
+ #
3005
+ # @!attribute [rw] contact
3006
+ # Contains contact information for the customer representative
3007
+ # involved in the lead interaction, including their name, title, and
3008
+ # contact details.
3009
+ # @return [Types::LeadContact]
3010
+ #
3011
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadInteraction AWS API Documentation
3012
+ #
3013
+ class LeadInteraction < Struct.new(
3014
+ :source_type,
3015
+ :source_id,
3016
+ :source_name,
3017
+ :usecase,
3018
+ :interaction_date,
3019
+ :customer_action,
3020
+ :business_problem,
3021
+ :contact)
3022
+ SENSITIVE = [:business_problem]
3023
+ include Aws::Structure
3024
+ end
3025
+
3026
+ # Contains customer information included in a lead invitation payload.
3027
+ # This structure provides essential details about the customer to help
3028
+ # partners evaluate the lead opportunity and determine their interest in
3029
+ # engagement.
3030
+ #
3031
+ # @!attribute [rw] industry
3032
+ # Specifies the industry sector of the customer company associated
3033
+ # with the lead invitation. This categorization helps partners
3034
+ # understand the customer's business context and assess solution fit.
3035
+ # @return [String]
3036
+ #
3037
+ # @!attribute [rw] company_name
3038
+ # The name of the customer company associated with the lead
3039
+ # invitation. This field identifies the target organization for the
3040
+ # lead engagement opportunity.
3041
+ # @return [String]
3042
+ #
3043
+ # @!attribute [rw] website_url
3044
+ # The website URL of the customer company. This provides additional
3045
+ # context about the customer organization and helps partners verify
3046
+ # company details and assess business size and legitimacy.
3047
+ # @return [String]
3048
+ #
3049
+ # @!attribute [rw] country_code
3050
+ # The country code indicating the geographic location of the customer
3051
+ # company. This information helps partners understand regional
3052
+ # requirements and assess their ability to serve the customer
3053
+ # effectively.
3054
+ # @return [String]
3055
+ #
3056
+ # @!attribute [rw] aws_maturity
3057
+ # Indicates the customer's level of experience and adoption with AWS
3058
+ # services. This assessment helps partners understand the customer's
3059
+ # cloud maturity and tailor their engagement approach accordingly.
3060
+ # @return [String]
3061
+ #
3062
+ # @!attribute [rw] market_segment
3063
+ # Specifies the market segment classification of the customer, such as
3064
+ # enterprise, mid-market, or small business. This segmentation helps
3065
+ # partners determine the appropriate solution complexity and
3066
+ # engagement strategy.
3067
+ # @return [String]
3068
+ #
3069
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadInvitationCustomer AWS API Documentation
3070
+ #
3071
+ class LeadInvitationCustomer < Struct.new(
3072
+ :industry,
3073
+ :company_name,
3074
+ :website_url,
3075
+ :country_code,
3076
+ :aws_maturity,
3077
+ :market_segment)
3078
+ SENSITIVE = [:company_name, :website_url, :country_code]
3079
+ include Aws::Structure
3080
+ end
3081
+
3082
+ # Represents interaction details included in a lead invitation payload.
3083
+ # This structure provides context about how the lead was generated and
3084
+ # the customer's engagement history to help partners assess the
3085
+ # opportunity quality.
3086
+ #
3087
+ # @!attribute [rw] source_type
3088
+ # Specifies the type of source that generated the lead interaction,
3089
+ # such as "Event", "Website", or "Campaign". This helps partners
3090
+ # understand the lead generation channel and assess lead quality based
3091
+ # on the source type.
3092
+ # @return [String]
3093
+ #
3094
+ # @!attribute [rw] source_id
3095
+ # The unique identifier of the specific source that generated the lead
3096
+ # interaction. This provides traceability to the original lead
3097
+ # generation activity for reference and follow-up purposes.
3098
+ # @return [String]
3099
+ #
3100
+ # @!attribute [rw] source_name
3101
+ # The descriptive name of the source that generated the lead
3102
+ # interaction. This human-readable identifier helps partners
3103
+ # understand the specific lead generation channel or campaign that
3104
+ # created the opportunity.
3105
+ # @return [String]
3106
+ #
3107
+ # @!attribute [rw] usecase
3108
+ # Describes the specific use case or business scenario associated with
3109
+ # the lead interaction. This information helps partners understand the
3110
+ # customer's interests and potential solution requirements.
3111
+ # @return [String]
3112
+ #
3113
+ # @!attribute [rw] contact_business_title
3114
+ # The business title or job role of the customer contact involved in
3115
+ # the lead interaction. This helps partners identify the
3116
+ # decision-making level and engagement approach for the lead.
3117
+ # @return [String]
3118
+ #
3119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadInvitationInteraction AWS API Documentation
3120
+ #
3121
+ class LeadInvitationInteraction < Struct.new(
3122
+ :source_type,
3123
+ :source_id,
3124
+ :source_name,
3125
+ :usecase,
3126
+ :contact_business_title)
3127
+ SENSITIVE = [:contact_business_title]
3128
+ include Aws::Structure
3129
+ end
3130
+
3131
+ # Represents the data payload of an engagement invitation for a lead
3132
+ # opportunity. This contains detailed information about the customer and
3133
+ # interaction history that partners use to evaluate whether to accept
3134
+ # the lead engagement invitation.
3135
+ #
3136
+ # @!attribute [rw] customer
3137
+ # Contains information about the customer associated with the lead
3138
+ # invitation. This data helps partners understand the customer's
3139
+ # profile, industry, and business context to assess the lead
3140
+ # opportunity.
3141
+ # @return [Types::LeadInvitationCustomer]
3142
+ #
3143
+ # @!attribute [rw] interaction
3144
+ # Describes the interaction details associated with the lead,
3145
+ # including the source of the lead generation and customer engagement
3146
+ # information. This context helps partners evaluate the lead quality
3147
+ # and engagement approach.
3148
+ # @return [Types::LeadInvitationInteraction]
3149
+ #
3150
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/LeadInvitationPayload AWS API Documentation
3151
+ #
3152
+ class LeadInvitationPayload < Struct.new(
3153
+ :customer,
3154
+ :interaction)
3155
+ SENSITIVE = []
3156
+ include Aws::Structure
3157
+ end
3158
+
3159
+ # An object that contains the `Opportunity` lifecycle's details.
3160
+ #
3161
+ # @!attribute [rw] stage
3162
+ # Specifies the current stage of the `Opportunity`'s lifecycle as it
3163
+ # maps to Amazon Web Services stages from the current stage in the
3164
+ # partner CRM. This field provides a translated value of the stage,
3165
+ # and offers insight into the `Opportunity`'s progression in the
3166
+ # sales cycle, according to Amazon Web Services definitions.
3167
+ #
3168
+ # <note markdown="1"> A lead and a prospect must be further matured to a `Qualified`
3169
+ # opportunity before submission. Opportunities that were closed/lost
3170
+ # before submission aren't suitable for submission.
3171
+ #
3172
+ # </note>
3173
+ #
3174
+ # The descriptions of each sales stage are:
3175
+ #
3176
+ # * Prospect: Amazon Web Services identifies the opportunity. It can
3177
+ # be active (Comes directly from the end customer through a lead) or
3178
+ # latent (Your account team believes it exists based on research,
3179
+ # account plans, sales plays).
3180
+ #
3181
+ # * Qualified: Your account team engaged with the customer to discuss
3182
+ # viability and requirements. The customer agreed that the
3183
+ # opportunity is real, of interest, and may solve business/technical
3184
+ # needs.
3185
+ #
3186
+ # * Technical Validation: All parties understand the implementation
3187
+ # plan.
3188
+ #
3189
+ # * Business Validation: Pricing was proposed, and all parties agree
3190
+ # to the steps to close.
3191
+ #
3192
+ # * Committed: The customer signed the contract, but Amazon Web
3193
+ # Services hasn't started billing.
3194
+ #
3195
+ # * Launched: The workload is complete, and Amazon Web Services has
3196
+ # started billing.
3197
+ #
3198
+ # * Closed Lost: The opportunity is lost, and there are no steps to
3199
+ # move forward.
3200
+ # @return [String]
3201
+ #
3202
+ # @!attribute [rw] closed_lost_reason
3203
+ # Specifies the reason code when an opportunity is marked as *Closed
3204
+ # Lost*. When you select an appropriate reason code, you communicate
3205
+ # the context for closing the `Opportunity`, and aid in accurate
3206
+ # reports and analysis of opportunity outcomes. The possible values
3207
+ # are:
3208
+ #
3209
+ # * Customer Deficiency: The customer lacked necessary resources or
3210
+ # capabilities.
3211
+ #
3212
+ # * Delay/Cancellation of Project: The project was delayed or
3213
+ # canceled.
3214
+ #
3215
+ # * Legal/Tax/Regulatory: Legal, tax, or regulatory issues prevented
3216
+ # progress.
3217
+ #
3218
+ # * Lost to Competitor—Google: The opportunity was lost to Google.
3219
+ #
3220
+ # * Lost to Competitor—Microsoft: The opportunity was lost to
3221
+ # Microsoft.
3222
+ #
3223
+ # * Lost to Competitor—SoftLayer: The opportunity was lost to
3224
+ # SoftLayer.
3225
+ #
3226
+ # * Lost to Competitor—VMWare: The opportunity was lost to VMWare.
3227
+ #
3228
+ # * Lost to Competitor—Other: The opportunity was lost to a competitor
3229
+ # not listed above.
3230
+ #
3231
+ # * No Opportunity: There was no opportunity to pursue.
3232
+ #
3233
+ # * On Premises Deployment: The customer chose an on-premises
3234
+ # solution.
2611
3235
  #
2612
3236
  # * Partner Gap: The partner lacked necessary resources or
2613
3237
  # capabilities.
@@ -3438,6 +4062,20 @@ module Aws::PartnerCentralSelling
3438
4062
  # exclude engagements created by specific users.
3439
4063
  # @return [Array<String>]
3440
4064
  #
4065
+ # @!attribute [rw] context_types
4066
+ # Filters engagements to include only those containing the specified
4067
+ # context types, such as "CustomerProject" or "Lead". Use this to
4068
+ # find engagements that have specific types of contextual information
4069
+ # associated with them.
4070
+ # @return [Array<String>]
4071
+ #
4072
+ # @!attribute [rw] exclude_context_types
4073
+ # Filters engagements to exclude those containing the specified
4074
+ # context types. Use this to find engagements that do not have certain
4075
+ # types of contextual information, helping to narrow results based on
4076
+ # context exclusion criteria.
4077
+ # @return [Array<String>]
4078
+ #
3441
4079
  # @!attribute [rw] sort
3442
4080
  # Specifies the sorting parameters for listing Engagements.
3443
4081
  # @return [Types::EngagementSort]
@@ -3461,6 +4099,8 @@ module Aws::PartnerCentralSelling
3461
4099
  :catalog,
3462
4100
  :created_by,
3463
4101
  :exclude_created_by,
4102
+ :context_types,
4103
+ :exclude_context_types,
3464
4104
  :sort,
3465
4105
  :max_results,
3466
4106
  :next_token,
@@ -3585,6 +4225,183 @@ module Aws::PartnerCentralSelling
3585
4225
  include Aws::Structure
3586
4226
  end
3587
4227
 
4228
+ # Provides a summary of a task related to creating an opportunity from
4229
+ # an engagement. This structure contains key information about the
4230
+ # task's status, associated identifiers, and any failure details for
4231
+ # opportunity creation processes.
4232
+ #
4233
+ # @!attribute [rw] task_id
4234
+ # The unique identifier of the task for creating an opportunity from
4235
+ # an engagement.
4236
+ # @return [String]
4237
+ #
4238
+ # @!attribute [rw] task_arn
4239
+ # The Amazon Resource Name (ARN) that uniquely identifies the task
4240
+ # within AWS. This ARN can be used for referencing the task in other
4241
+ # AWS services or APIs.
4242
+ # @return [String]
4243
+ #
4244
+ # @!attribute [rw] start_time
4245
+ # The timestamp indicating when the task was initiated, in RFC 3339
4246
+ # format.
4247
+ # @return [Time]
4248
+ #
4249
+ # @!attribute [rw] task_status
4250
+ # The current status of the task. Valid values are COMPLETE,
4251
+ # INPROGRESS, or FAILED.
4252
+ # @return [String]
4253
+ #
4254
+ # @!attribute [rw] message
4255
+ # A detailed message providing additional information about the task,
4256
+ # especially useful in case of failures. This field may contain error
4257
+ # details or other relevant information about the task's execution.
4258
+ # @return [String]
4259
+ #
4260
+ # @!attribute [rw] reason_code
4261
+ # A code indicating the specific reason for a task failure. This field
4262
+ # is populated when the task status is FAILED and provides a
4263
+ # categorized reason for the failure.
4264
+ # @return [String]
4265
+ #
4266
+ # @!attribute [rw] opportunity_id
4267
+ # The unique identifier of the opportunity created as a result of the
4268
+ # task. This field is populated when the task is completed
4269
+ # successfully.
4270
+ # @return [String]
4271
+ #
4272
+ # @!attribute [rw] resource_snapshot_job_id
4273
+ # The identifier of the resource snapshot job associated with this
4274
+ # task, if a snapshot was created as part of the opportunity creation
4275
+ # process.
4276
+ # @return [String]
4277
+ #
4278
+ # @!attribute [rw] engagement_id
4279
+ # The unique identifier of the engagement from which the opportunity
4280
+ # is being created. This field helps track the source of the
4281
+ # opportunity creation task.
4282
+ # @return [String]
4283
+ #
4284
+ # @!attribute [rw] context_id
4285
+ # The unique identifier of the engagement context associated with the
4286
+ # opportunity creation task. This links the task to specific
4287
+ # contextual information within the engagement.
4288
+ # @return [String]
4289
+ #
4290
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListOpportunityFromEngagementTaskSummary AWS API Documentation
4291
+ #
4292
+ class ListOpportunityFromEngagementTaskSummary < Struct.new(
4293
+ :task_id,
4294
+ :task_arn,
4295
+ :start_time,
4296
+ :task_status,
4297
+ :message,
4298
+ :reason_code,
4299
+ :opportunity_id,
4300
+ :resource_snapshot_job_id,
4301
+ :engagement_id,
4302
+ :context_id)
4303
+ SENSITIVE = []
4304
+ include Aws::Structure
4305
+ end
4306
+
4307
+ # @!attribute [rw] max_results
4308
+ # Specifies the maximum number of results to return in a single page
4309
+ # of the response. Use this parameter to control the number of items
4310
+ # returned in each request, which can be useful for performance tuning
4311
+ # and managing large result sets.
4312
+ # @return [Integer]
4313
+ #
4314
+ # @!attribute [rw] next_token
4315
+ # The token for requesting the next page of results. This value is
4316
+ # obtained from the NextToken field in the response of a previous call
4317
+ # to this API. Use this parameter for pagination when the result set
4318
+ # spans multiple pages.
4319
+ # @return [String]
4320
+ #
4321
+ # @!attribute [rw] sort
4322
+ # Defines the sorting parameters for listing tasks. This structure
4323
+ # allows for specifying the field to sort by and the order of sorting.
4324
+ # @return [Types::ListTasksSortBase]
4325
+ #
4326
+ # @!attribute [rw] catalog
4327
+ # Specifies the catalog related to the request. Valid values are `AWS`
4328
+ # for production environments and `Sandbox` for testing or development
4329
+ # purposes. The catalog determines which environment the task data is
4330
+ # retrieved from.
4331
+ # @return [String]
4332
+ #
4333
+ # @!attribute [rw] task_status
4334
+ # Filters the tasks based on their current status. This allows you to
4335
+ # focus on tasks in specific states. Valid values are `COMPLETE` for
4336
+ # tasks that have finished successfully, `INPROGRESS` for tasks that
4337
+ # are currently running, and `FAILED` for tasks that have encountered
4338
+ # an error and failed to complete.
4339
+ # @return [Array<String>]
4340
+ #
4341
+ # @!attribute [rw] task_identifier
4342
+ # Filters tasks by their unique identifiers. Use this when you want to
4343
+ # retrieve information about specific tasks. Provide the task ID to
4344
+ # get details about a particular opportunity creation task.
4345
+ # @return [Array<String>]
4346
+ #
4347
+ # @!attribute [rw] opportunity_identifier
4348
+ # Filters tasks by the identifiers of the opportunities they created
4349
+ # or are associated with. Use this to find tasks related to specific
4350
+ # opportunity creation processes.
4351
+ # @return [Array<String>]
4352
+ #
4353
+ # @!attribute [rw] engagement_identifier
4354
+ # Filters tasks by the identifiers of the engagements from which
4355
+ # opportunities are being created. Use this to find all opportunity
4356
+ # creation tasks associated with a specific engagement.
4357
+ # @return [Array<String>]
4358
+ #
4359
+ # @!attribute [rw] context_identifier
4360
+ # Filters tasks by the identifiers of the engagement contexts
4361
+ # associated with the opportunity creation. Use this to find tasks
4362
+ # related to specific contextual information within engagements that
4363
+ # are being converted to opportunities.
4364
+ # @return [Array<String>]
4365
+ #
4366
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListOpportunityFromEngagementTasksRequest AWS API Documentation
4367
+ #
4368
+ class ListOpportunityFromEngagementTasksRequest < Struct.new(
4369
+ :max_results,
4370
+ :next_token,
4371
+ :sort,
4372
+ :catalog,
4373
+ :task_status,
4374
+ :task_identifier,
4375
+ :opportunity_identifier,
4376
+ :engagement_identifier,
4377
+ :context_identifier)
4378
+ SENSITIVE = []
4379
+ include Aws::Structure
4380
+ end
4381
+
4382
+ # @!attribute [rw] task_summaries
4383
+ # An array of `ListOpportunityFromEngagementTaskSummary` objects, each
4384
+ # representing a task that matches the specified filters. The array
4385
+ # may be empty if no tasks match the criteria.
4386
+ # @return [Array<Types::ListOpportunityFromEngagementTaskSummary>]
4387
+ #
4388
+ # @!attribute [rw] next_token
4389
+ # A token used for pagination to retrieve the next page of results. If
4390
+ # there are more results available, this field will contain a token
4391
+ # that can be used in a subsequent API call to retrieve the next page.
4392
+ # If there are no more results, this field will be null or an empty
4393
+ # string.
4394
+ # @return [String]
4395
+ #
4396
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/ListOpportunityFromEngagementTasksResponse AWS API Documentation
4397
+ #
4398
+ class ListOpportunityFromEngagementTasksResponse < Struct.new(
4399
+ :task_summaries,
4400
+ :next_token)
4401
+ SENSITIVE = []
4402
+ include Aws::Structure
4403
+ end
4404
+
3588
4405
  # @!attribute [rw] catalog
3589
4406
  # Specifies the catalog related to the request.
3590
4407
  # @return [String]
@@ -4170,16 +4987,25 @@ module Aws::PartnerCentralSelling
4170
4987
  # from AWS.
4171
4988
  # @return [Types::OpportunityInvitationPayload]
4172
4989
  #
4990
+ # @!attribute [rw] lead_invitation
4991
+ # Specifies the details of the lead invitation within the Engagement
4992
+ # Invitation payload. This data helps partners understand the lead
4993
+ # context, customer information, and interaction history for the lead
4994
+ # opportunity from AWS.
4995
+ # @return [Types::LeadInvitationPayload]
4996
+ #
4173
4997
  # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/Payload AWS API Documentation
4174
4998
  #
4175
4999
  class Payload < Struct.new(
4176
5000
  :opportunity_invitation,
5001
+ :lead_invitation,
4177
5002
  :unknown)
4178
5003
  SENSITIVE = []
4179
5004
  include Aws::Structure
4180
5005
  include Aws::Structure::Union
4181
5006
 
4182
5007
  class OpportunityInvitation < Payload; end
5008
+ class LeadInvitation < Payload; end
4183
5009
  class Unknown < Payload; end
4184
5010
  end
4185
5011
 
@@ -4629,6 +5455,14 @@ module Aws::PartnerCentralSelling
4629
5455
  # [1]: https://docs.aws.amazon.com/marketplace-catalog/latest/api-reference/API_ListEntities.html
4630
5456
  # @return [Array<String>]
4631
5457
  #
5458
+ # @!attribute [rw] aws_marketplace_offer_sets
5459
+ # Enables the association of AWS Marketplace offer sets with the
5460
+ # `Opportunity`. Offer sets allow grouping multiple related
5461
+ # marketplace offers together for comprehensive solution packaging.
5462
+ # Each value is an Amazon Resource Name (ARN) in this format:
5463
+ # `arn:aws:aws-marketplace:us-east-1:999999999999:AWSMarketplace/OfferSet/offerset-sampleOfferSet32`.
5464
+ # @return [Array<String>]
5465
+ #
4632
5466
  # @!attribute [rw] solutions
4633
5467
  # Enables partner solutions or offerings' association with an
4634
5468
  # opportunity. To associate a solution, provide the solution's unique
@@ -4665,6 +5499,7 @@ module Aws::PartnerCentralSelling
4665
5499
  #
4666
5500
  class RelatedEntityIdentifiers < Struct.new(
4667
5501
  :aws_marketplace_offers,
5502
+ :aws_marketplace_offer_sets,
4668
5503
  :solutions,
4669
5504
  :aws_products)
4670
5505
  SENSITIVE = []
@@ -5204,6 +6039,115 @@ module Aws::PartnerCentralSelling
5204
6039
  include Aws::Structure
5205
6040
  end
5206
6041
 
6042
+ # @!attribute [rw] catalog
6043
+ # Specifies the catalog in which the opportunity creation task is
6044
+ # executed. Acceptable values include `AWS` for production and
6045
+ # `Sandbox` for testing environments.
6046
+ # @return [String]
6047
+ #
6048
+ # @!attribute [rw] client_token
6049
+ # A unique token provided by the client to help ensure the idempotency
6050
+ # of the request. It helps prevent the same task from being performed
6051
+ # multiple times.
6052
+ #
6053
+ # **A suitable default value is auto-generated.** You should normally
6054
+ # not need to pass this option.
6055
+ # @return [String]
6056
+ #
6057
+ # @!attribute [rw] identifier
6058
+ # The unique identifier of the engagement from which the opportunity
6059
+ # creation task is to be initiated. This helps ensure that the task is
6060
+ # applied to the correct engagement.
6061
+ # @return [String]
6062
+ #
6063
+ # @!attribute [rw] context_identifier
6064
+ # The unique identifier of the engagement context from which to create
6065
+ # the opportunity. This specifies the specific contextual information
6066
+ # within the engagement that will be used for opportunity creation.
6067
+ # @return [String]
6068
+ #
6069
+ # @!attribute [rw] tags
6070
+ # A map of the key-value pairs of the tag or tags to assign.
6071
+ # @return [Array<Types::Tag>]
6072
+ #
6073
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartOpportunityFromEngagementTaskRequest AWS API Documentation
6074
+ #
6075
+ class StartOpportunityFromEngagementTaskRequest < Struct.new(
6076
+ :catalog,
6077
+ :client_token,
6078
+ :identifier,
6079
+ :context_identifier,
6080
+ :tags)
6081
+ SENSITIVE = []
6082
+ include Aws::Structure
6083
+ end
6084
+
6085
+ # @!attribute [rw] task_id
6086
+ # The unique identifier of the task, used to track the task's
6087
+ # progress.
6088
+ # @return [String]
6089
+ #
6090
+ # @!attribute [rw] task_arn
6091
+ # The Amazon Resource Name (ARN) of the task, used for tracking and
6092
+ # managing the task within AWS.
6093
+ # @return [String]
6094
+ #
6095
+ # @!attribute [rw] start_time
6096
+ # The timestamp indicating when the task was initiated. The format
6097
+ # follows RFC 3339 section 5.6.
6098
+ # @return [Time]
6099
+ #
6100
+ # @!attribute [rw] task_status
6101
+ # Indicates the current status of the task.
6102
+ # @return [String]
6103
+ #
6104
+ # @!attribute [rw] message
6105
+ # If the task fails, this field contains a detailed message describing
6106
+ # the failure and possible recovery steps.
6107
+ # @return [String]
6108
+ #
6109
+ # @!attribute [rw] reason_code
6110
+ # Indicates the reason for task failure using an enumerated code.
6111
+ # @return [String]
6112
+ #
6113
+ # @!attribute [rw] opportunity_id
6114
+ # The unique identifier of the opportunity created as a result of the
6115
+ # task. This field is populated when the task is completed
6116
+ # successfully.
6117
+ # @return [String]
6118
+ #
6119
+ # @!attribute [rw] resource_snapshot_job_id
6120
+ # The identifier of the resource snapshot job created as part of the
6121
+ # opportunity creation process.
6122
+ # @return [String]
6123
+ #
6124
+ # @!attribute [rw] engagement_id
6125
+ # The unique identifier of the engagement from which the opportunity
6126
+ # was created.
6127
+ # @return [String]
6128
+ #
6129
+ # @!attribute [rw] context_id
6130
+ # The unique identifier of the engagement context used to create the
6131
+ # opportunity.
6132
+ # @return [String]
6133
+ #
6134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/StartOpportunityFromEngagementTaskResponse AWS API Documentation
6135
+ #
6136
+ class StartOpportunityFromEngagementTaskResponse < Struct.new(
6137
+ :task_id,
6138
+ :task_arn,
6139
+ :start_time,
6140
+ :task_status,
6141
+ :message,
6142
+ :reason_code,
6143
+ :opportunity_id,
6144
+ :resource_snapshot_job_id,
6145
+ :engagement_id,
6146
+ :context_id)
6147
+ SENSITIVE = []
6148
+ include Aws::Structure
6149
+ end
6150
+
5207
6151
  # @!attribute [rw] catalog
5208
6152
  # Specifies the catalog related to the request. Valid values are:
5209
6153
  #
@@ -5379,6 +6323,149 @@ module Aws::PartnerCentralSelling
5379
6323
  #
5380
6324
  class UntagResourceResponse < Aws::EmptyStructure; end
5381
6325
 
6326
+ # Represents the updated payload of an engagement context. The structure
6327
+ # of this payload varies based on the context type being updated.
6328
+ #
6329
+ # @note UpdateEngagementContextPayload is a union - when making an API calls you must set exactly one of the members.
6330
+ #
6331
+ # @!attribute [rw] lead
6332
+ # Contains updated information about a lead when the context type is
6333
+ # "Lead". This field is present only when updating a lead context
6334
+ # within the engagement.
6335
+ # @return [Types::UpdateLeadContext]
6336
+ #
6337
+ # @!attribute [rw] customer_project
6338
+ # The CustomerProjects structure in Engagements offers a flexible
6339
+ # framework for managing customer-project relationships. It supports
6340
+ # multiple customers per Engagement and multiple projects per
6341
+ # customer, while also allowing for customers without projects and
6342
+ # projects without specific customers.
6343
+ #
6344
+ # All Engagement members have full visibility of customers and their
6345
+ # associated projects, enabling the capture of relevant context even
6346
+ # when project details are not fully defined. This structure also
6347
+ # facilitates targeted invitations, allowing partners to focus on
6348
+ # specific customers and their business problems when sending
6349
+ # Engagement invitations.
6350
+ # @return [Types::CustomerProjectsContext]
6351
+ #
6352
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/UpdateEngagementContextPayload AWS API Documentation
6353
+ #
6354
+ class UpdateEngagementContextPayload < Struct.new(
6355
+ :lead,
6356
+ :customer_project,
6357
+ :unknown)
6358
+ SENSITIVE = []
6359
+ include Aws::Structure
6360
+ include Aws::Structure::Union
6361
+
6362
+ class Lead < UpdateEngagementContextPayload; end
6363
+ class CustomerProject < UpdateEngagementContextPayload; end
6364
+ class Unknown < UpdateEngagementContextPayload; end
6365
+ end
6366
+
6367
+ # @!attribute [rw] catalog
6368
+ # Specifies the catalog associated with the engagement context update
6369
+ # request. This field takes a string value from a predefined list:
6370
+ # `AWS` or `Sandbox`. The catalog determines which environment the
6371
+ # engagement context is updated in.
6372
+ # @return [String]
6373
+ #
6374
+ # @!attribute [rw] engagement_identifier
6375
+ # The unique identifier of the `Engagement` containing the context to
6376
+ # be updated. This parameter ensures the context update is applied to
6377
+ # the correct engagement.
6378
+ # @return [String]
6379
+ #
6380
+ # @!attribute [rw] context_identifier
6381
+ # The unique identifier of the specific engagement context to be
6382
+ # updated. This ensures that the correct context within the engagement
6383
+ # is modified.
6384
+ # @return [String]
6385
+ #
6386
+ # @!attribute [rw] engagement_last_modified_at
6387
+ # The timestamp when the engagement was last modified, used for
6388
+ # optimistic concurrency control. This helps prevent conflicts when
6389
+ # multiple users attempt to update the same engagement simultaneously.
6390
+ # @return [Time]
6391
+ #
6392
+ # @!attribute [rw] type
6393
+ # Specifies the type of context being updated within the engagement.
6394
+ # This field determines the structure and content of the context
6395
+ # payload being modified.
6396
+ # @return [String]
6397
+ #
6398
+ # @!attribute [rw] payload
6399
+ # Contains the updated contextual information for the engagement. The
6400
+ # structure of this payload varies based on the context type specified
6401
+ # in the Type field.
6402
+ # @return [Types::UpdateEngagementContextPayload]
6403
+ #
6404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/UpdateEngagementContextRequest AWS API Documentation
6405
+ #
6406
+ class UpdateEngagementContextRequest < Struct.new(
6407
+ :catalog,
6408
+ :engagement_identifier,
6409
+ :context_identifier,
6410
+ :engagement_last_modified_at,
6411
+ :type,
6412
+ :payload)
6413
+ SENSITIVE = []
6414
+ include Aws::Structure
6415
+ end
6416
+
6417
+ # @!attribute [rw] engagement_id
6418
+ # The unique identifier of the engagement that was updated.
6419
+ # @return [String]
6420
+ #
6421
+ # @!attribute [rw] engagement_arn
6422
+ # The Amazon Resource Name (ARN) of the updated engagement.
6423
+ # @return [String]
6424
+ #
6425
+ # @!attribute [rw] engagement_last_modified_at
6426
+ # The timestamp when the engagement context was last modified.
6427
+ # @return [Time]
6428
+ #
6429
+ # @!attribute [rw] context_id
6430
+ # The unique identifier of the engagement context that was updated.
6431
+ # @return [String]
6432
+ #
6433
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/UpdateEngagementContextResponse AWS API Documentation
6434
+ #
6435
+ class UpdateEngagementContextResponse < Struct.new(
6436
+ :engagement_id,
6437
+ :engagement_arn,
6438
+ :engagement_last_modified_at,
6439
+ :context_id)
6440
+ SENSITIVE = []
6441
+ include Aws::Structure
6442
+ end
6443
+
6444
+ # Updates the context information for a lead with qualification status,
6445
+ # customer details, and interaction data.
6446
+ #
6447
+ # @!attribute [rw] qualification_status
6448
+ # The updated qualification status of the lead.
6449
+ # @return [String]
6450
+ #
6451
+ # @!attribute [rw] customer
6452
+ # Updated customer information associated with the lead.
6453
+ # @return [Types::LeadCustomer]
6454
+ #
6455
+ # @!attribute [rw] interaction
6456
+ # Updated interaction details for the lead context.
6457
+ # @return [Types::LeadInteraction]
6458
+ #
6459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/partnercentral-selling-2022-07-26/UpdateLeadContext AWS API Documentation
6460
+ #
6461
+ class UpdateLeadContext < Struct.new(
6462
+ :qualification_status,
6463
+ :customer,
6464
+ :interaction)
6465
+ SENSITIVE = []
6466
+ include Aws::Structure
6467
+ end
6468
+
5382
6469
  # @!attribute [rw] catalog
5383
6470
  # Specifies the catalog associated with the request. This field takes
5384
6471
  # a string value from a predefined list: `AWS` or `Sandbox`. The
@@ -5594,6 +6681,11 @@ module Aws::PartnerCentralSelling
5594
6681
  #
5595
6682
  # Fix: Reduce the number of values to match the expected limit.
5596
6683
  #
6684
+ # * *NOT\_ENOUGH\_VALUES:* There are not enough values in a field that
6685
+ # expects more entries.
6686
+ #
6687
+ # Fix: Increase the number of values to match the expected threshold.
6688
+ #
5597
6689
  # * *ACTION\_NOT\_PERMITTED:* The action isn't permitted due to current
5598
6690
  # state or permissions.
5599
6691
  #