SDK for PHP 3.x

Client: Aws\PartnerCentralSelling\PartnerCentralSellingClient
Service ID: partnercentral-selling
Version: 2022-07-26

This page describes the parameters and results for the operations of the Partner Central Selling API (2022-07-26), and shows how to use the Aws\PartnerCentralSelling\PartnerCentralSellingClient object to call the described operations. This documentation is specific to the 2022-07-26 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

AcceptEngagementInvitation ( array $params = [] )
Use the AcceptEngagementInvitation action to accept an engagement invitation shared by AWS.
AssignOpportunity ( array $params = [] )
Enables you to reassign an existing Opportunity to another user within your Partner Central account.
AssociateOpportunity ( array $params = [] )
Enables you to create a formal association between an Opportunity and various related entities, enriching the context and details of the opportunity for better collaboration and decision making.
CreateEngagement ( array $params = [] )
The CreateEngagement action allows you to create an Engagement, which serves as a collaborative space between different parties such as AWS Partners and AWS Sellers.
CreateEngagementInvitation ( array $params = [] )
This action creates an invitation from a sender to a single receiver to join an engagement.
CreateOpportunity ( array $params = [] )
Creates an Opportunity record in Partner Central.
CreateResourceSnapshot ( array $params = [] )
This action allows you to create an immutable snapshot of a specific resource, such as an opportunity, within the context of an engagement.
CreateResourceSnapshotJob ( array $params = [] )
Use this action to create a job to generate a snapshot of the specified resource within an engagement.
DeleteResourceSnapshotJob ( array $params = [] )
Use this action to deletes a previously created resource snapshot job.
DisassociateOpportunity ( array $params = [] )
Allows you to remove an existing association between an Opportunity and related entities, such as a Partner Solution, Amazon Web Services product, or an Amazon Web Services Marketplace offer.
GetAwsOpportunitySummary ( array $params = [] )
Retrieves a summary of an AWS Opportunity.
GetEngagement ( array $params = [] )
Use this action to retrieve the engagement record for a given EngagementIdentifier.
GetEngagementInvitation ( array $params = [] )
Retrieves the details of an engagement invitation shared by AWS with a partner.
GetOpportunity ( array $params = [] )
Fetches the Opportunity record from Partner Central by a given Identifier.
GetResourceSnapshot ( array $params = [] )
Use this action to retrieve a specific snapshot record.
GetResourceSnapshotJob ( array $params = [] )
Use this action to retrieves information about a specific resource snapshot job.
GetSellingSystemSettings ( array $params = [] )
Retrieves the currently set system settings, which include the IAM Role used for resource snapshot jobs.
ListEngagementByAcceptingInvitationTasks ( array $params = [] )
Lists all in-progress, completed, or failed StartEngagementByAcceptingInvitationTask tasks that were initiated by the caller's account.
ListEngagementFromOpportunityTasks ( array $params = [] )
Lists all in-progress, completed, or failed EngagementFromOpportunity tasks that were initiated by the caller's account.
ListEngagementInvitations ( array $params = [] )
Retrieves a list of engagement invitations sent to the partner.
ListEngagementMembers ( array $params = [] )
Retrieves the details of member partners in an engagement.
ListEngagementResourceAssociations ( array $params = [] )
Lists the associations between resources and engagements where the caller is a member and has at least one snapshot in the engagement.
ListEngagements ( array $params = [] )
This action allows users to retrieve a list of engagement records from Partner Central.
ListOpportunities ( array $params = [] )
This request accepts a list of filters that retrieve opportunity subsets as well as sort options.
ListResourceSnapshotJobs ( array $params = [] )
Lists resource snapshot jobs owned by the customer.
ListResourceSnapshots ( array $params = [] )
Retrieves a list of resource view snapshots based on specified criteria.
ListSolutions ( array $params = [] )
Retrieves a list of Partner Solutions that the partner registered on Partner Central.
PutSellingSystemSettings ( array $params = [] )
Updates the currently set system settings, which include the IAM Role used for resource snapshot jobs.
RejectEngagementInvitation ( array $params = [] )
This action rejects an EngagementInvitation that AWS shared.
StartEngagementByAcceptingInvitationTask ( array $params = [] )
This action starts the engagement by accepting an EngagementInvitation.
StartEngagementFromOpportunityTask ( array $params = [] )
This action initiates the engagement process from an existing opportunity by accepting the engagement invitation and creating a corresponding opportunity in the partner’s system.
StartResourceSnapshotJob ( array $params = [] )
Starts a resource snapshot job that has been previously created.
StopResourceSnapshotJob ( array $params = [] )
Stops a resource snapshot job.
SubmitOpportunity ( array $params = [] )
Use this action to submit an opportunity that was previously created by partner for AWS review.
UpdateOpportunity ( array $params = [] )
Updates the Opportunity record identified by a given Identifier.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListEngagementByAcceptingInvitationTasks
ListEngagementFromOpportunityTasks
ListEngagementInvitations
ListEngagementMembers
ListEngagementResourceAssociations
ListEngagements
ListOpportunities
ListResourceSnapshotJobs
ListResourceSnapshots
ListSolutions

Operations

AcceptEngagementInvitation

$result = $client->acceptEngagementInvitation([/* ... */]);
$promise = $client->acceptEngagementInvitationAsync([/* ... */]);

Use the AcceptEngagementInvitation action to accept an engagement invitation shared by AWS. Accepting the invitation indicates your willingness to participate in the engagement, granting you access to all engagement-related data.

Parameter Syntax

$result = $client->acceptEngagementInvitation([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

The CatalogType parameter specifies the catalog associated with the engagement invitation. Accepted values are AWS and Sandbox, which determine the environment in which the engagement invitation is managed.

Identifier
Required: Yes
Type: string

The Identifier parameter in the AcceptEngagementInvitationRequest specifies the unique identifier of the EngagementInvitation to be accepted. Providing the correct identifier ensures that the intended invitation is accepted.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

AssignOpportunity

$result = $client->assignOpportunity([/* ... */]);
$promise = $client->assignOpportunityAsync([/* ... */]);

Enables you to reassign an existing Opportunity to another user within your Partner Central account. The specified user receives the opportunity, and it appears on their Partner Central dashboard, allowing them to take necessary actions or proceed with the opportunity.

This is useful for distributing opportunities to the appropriate team members or departments within your organization, ensuring that each opportunity is handled by the right person. By default, the opportunity owner is the one who creates it. Currently, there's no API to enumerate the list of available users.

Parameter Syntax

$result = $client->assignOpportunity([
    'Assignee' => [ // REQUIRED
        'BusinessTitle' => '<string>', // REQUIRED
        'Email' => '<string>', // REQUIRED
        'FirstName' => '<string>', // REQUIRED
        'LastName' => '<string>', // REQUIRED
    ],
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Assignee
Required: Yes
Type: AssigneeContact structure

Specifies the user or team member responsible for managing the assigned opportunity. This field identifies the Assignee based on the partner's internal team structure. Ensure that the email address is associated with a registered user in your Partner Central account.

Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity is assigned in. Use AWS to assign real opportunities in the Amazon Web Services catalog, and Sandbox for testing in secure, isolated environments.

Identifier
Required: Yes
Type: string

Requires the Opportunity's unique identifier when you want to assign it to another user. Provide the correct identifier so the intended opportunity is reassigned.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

AssociateOpportunity

$result = $client->associateOpportunity([/* ... */]);
$promise = $client->associateOpportunityAsync([/* ... */]);

Enables you to create a formal association between an Opportunity and various related entities, enriching the context and details of the opportunity for better collaboration and decision making. You can associate an opportunity with the following entity types:

  • Partner Solution: A software product or consulting practice created and delivered by Partners. Partner Solutions help customers address business challenges using Amazon Web Services services.

  • Amazon Web Services Products: Amazon Web Services offers many products and services that provide scalable, reliable, and cost-effective infrastructure solutions. For the latest list of Amazon Web Services products, see Amazon Web Services products.

  • Amazon Web Services Marketplace private offer: Allows Amazon Web Services Marketplace sellers to extend custom pricing and terms to individual Amazon Web Services customers. Sellers can negotiate custom prices, payment schedules, and end user license terms through private offers, enabling Amazon Web Services customers to acquire software solutions tailored to their specific needs. For more information, see Private offers in Amazon Web Services Marketplace.

To obtain identifiers for these entities, use the following methods:

Parameter Syntax

$result = $client->associateOpportunity([
    'Catalog' => '<string>', // REQUIRED
    'OpportunityIdentifier' => '<string>', // REQUIRED
    'RelatedEntityIdentifier' => '<string>', // REQUIRED
    'RelatedEntityType' => 'Solutions|AwsProducts|AwsMarketplaceOffers', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity association is made in. Use AWS to associate opportunities in the Amazon Web Services catalog, and Sandbox for testing in secure, isolated environments.

OpportunityIdentifier
Required: Yes
Type: string

Requires the Opportunity's unique identifier when you want to associate it with a related entity. Provide the correct identifier so the intended opportunity is updated with the association.

RelatedEntityIdentifier
Required: Yes
Type: string

Requires the related entity's unique identifier when you want to associate it with the Opportunity. For Amazon Web Services Marketplace entities, provide the Amazon Resource Name (ARN). Use the Amazon Web Services Marketplace API to obtain the ARN.

RelatedEntityType
Required: Yes
Type: string

Specifies the entity type that you're associating with the Opportunity. This helps to categorize and properly process the association.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

CreateEngagement

$result = $client->createEngagement([/* ... */]);
$promise = $client->createEngagementAsync([/* ... */]);

The CreateEngagement action allows you to create an Engagement, which serves as a collaborative space between different parties such as AWS Partners and AWS Sellers. This action automatically adds the caller's AWS account as an active member of the newly created Engagement.

Parameter Syntax

$result = $client->createEngagement([
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'Contexts' => [
        [
            'Payload' => [
                'CustomerProject' => [
                    'Customer' => [
                        'CompanyName' => '<string>', // REQUIRED
                        'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW', // REQUIRED
                        'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other', // REQUIRED
                        'WebsiteUrl' => '<string>', // REQUIRED
                    ],
                    'Project' => [
                        'BusinessProblem' => '<string>', // REQUIRED
                        'TargetCompletionDate' => '<string>', // REQUIRED
                        'Title' => '<string>', // REQUIRED
                    ],
                ],
            ],
            'Type' => 'CustomerProject', // REQUIRED
        ],
        // ...
    ],
    'Description' => '<string>', // REQUIRED
    'Title' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

The CreateEngagementRequest$Catalog parameter specifies the catalog related to the engagement. Accepted values are AWS and Sandbox, which determine the environment in which the engagement is managed.

ClientToken
Required: Yes
Type: string

The CreateEngagementRequest$ClientToken parameter specifies a unique, case-sensitive identifier to ensure that the request is handled exactly once. The value must not exceed sixty-four alphanumeric characters.

Contexts
Type: Array of EngagementContextDetails structures

The Contexts field is a required array of objects, with a maximum of 5 contexts allowed, specifying detailed information about customer projects associated with the Engagement. Each context object contains a Type field indicating the context type, which must be CustomerProject in this version, and a Payload field containing the CustomerProject details. The CustomerProject object is composed of two main components: Customer and Project. The Customer object includes information such as CompanyName, WebsiteUrl, Industry, and CountryCode, providing essential details about the customer. The Project object contains Title, BusinessProblem, and TargetCompletionDate, offering insights into the specific project associated with the customer. This structure allows comprehensive context to be included within the Engagement, facilitating effective collaboration between parties by providing relevant customer and project information.

Description
Required: Yes
Type: string

Provides a description of the Engagement.

Title
Required: Yes
Type: string

Specifies the title of the Engagement.

Result Syntax

[
    'Arn' => '<string>',
    'Id' => '<string>',
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) that identifies the engagement.

Id
Type: string

Unique identifier assigned to the newly created engagement.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ServiceQuotaExceededException:

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

CreateEngagementInvitation

$result = $client->createEngagementInvitation([/* ... */]);
$promise = $client->createEngagementInvitationAsync([/* ... */]);

This action creates an invitation from a sender to a single receiver to join an engagement.

Parameter Syntax

$result = $client->createEngagementInvitation([
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'EngagementIdentifier' => '<string>', // REQUIRED
    'Invitation' => [ // REQUIRED
        'Message' => '<string>', // REQUIRED
        'Payload' => [ // REQUIRED
            'OpportunityInvitation' => [
                'Customer' => [ // REQUIRED
                    'CompanyName' => '<string>', // REQUIRED
                    'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW', // REQUIRED
                    'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other', // REQUIRED
                    'WebsiteUrl' => '<string>', // REQUIRED
                ],
                'Project' => [ // REQUIRED
                    'BusinessProblem' => '<string>', // REQUIRED
                    'ExpectedCustomerSpend' => [ // REQUIRED
                        [
                            'Amount' => '<string>', // REQUIRED
                            'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL', // REQUIRED
                            'EstimationUrl' => '<string>',
                            'Frequency' => 'Monthly', // REQUIRED
                            'TargetCompany' => '<string>', // REQUIRED
                        ],
                        // ...
                    ],
                    'TargetCompletionDate' => '<string>', // REQUIRED
                    'Title' => '<string>', // REQUIRED
                ],
                'ReceiverResponsibilities' => ['<string>', ...], // REQUIRED
                'SenderContacts' => [
                    [
                        'BusinessTitle' => '<string>',
                        'Email' => '<string>', // REQUIRED
                        'FirstName' => '<string>',
                        'LastName' => '<string>',
                        'Phone' => '<string>',
                    ],
                    // ...
                ],
            ],
        ],
        'Receiver' => [ // REQUIRED
            'Account' => [
                'Alias' => '<string>',
                'AwsAccountId' => '<string>', // REQUIRED
            ],
        ],
    ],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the engagement. Accepted values are AWS and Sandbox, which determine the environment in which the engagement is managed.

ClientToken
Required: Yes
Type: string

Specifies a unique, client-generated UUID to ensure that the request is handled exactly once. This token helps prevent duplicate invitation creations.

EngagementIdentifier
Required: Yes
Type: string

The unique identifier of the Engagement associated with the invitation. This parameter ensures the invitation is created within the correct Engagement context.

Invitation
Required: Yes
Type: Invitation structure

The Invitation object all information necessary to initiate an engagement invitation to a partner. It contains a personalized message from the sender, the invitation's receiver, and a payload. The Payload can be the OpportunityInvitation, which includes detailed structures for sender contacts, partner responsibilities, customer information, and project details.

Result Syntax

[
    'Arn' => '<string>',
    'Id' => '<string>',
]

Result Details

Members
Arn
Required: Yes
Type: string

The Amazon Resource Name (ARN) that uniquely identifies the engagement invitation.

Id
Required: Yes
Type: string

Unique identifier assigned to the newly created engagement invitation.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ServiceQuotaExceededException:

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

CreateOpportunity

$result = $client->createOpportunity([/* ... */]);
$promise = $client->createOpportunityAsync([/* ... */]);

Creates an Opportunity record in Partner Central. Use this operation to create a potential business opportunity for submission to Amazon Web Services. Creating an opportunity sets Lifecycle.ReviewStatus to Pending Submission.

To submit an opportunity, follow these steps:

  1. To create the opportunity, use CreateOpportunity.

  2. To associate a solution with the opportunity, use AssociateOpportunity.

  3. To submit the opportunity, use StartEngagementFromOpportunityTask.

After submission, you can't edit the opportunity until the review is complete. But opportunities in the Pending Submission state must have complete details. You can update the opportunity while it's in the Pending Submission state.

There's a set of mandatory fields to create opportunities, but consider providing optional fields to enrich the opportunity record.

Parameter Syntax

$result = $client->createOpportunity([
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'Customer' => [
        'Account' => [
            'Address' => [
                'City' => '<string>',
                'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                'PostalCode' => '<string>',
                'StateOrRegion' => '<string>',
                'StreetAddress' => '<string>',
            ],
            'AwsAccountId' => '<string>',
            'CompanyName' => '<string>', // REQUIRED
            'Duns' => '<string>',
            'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
            'OtherIndustry' => '<string>',
            'WebsiteUrl' => '<string>',
        ],
        'Contacts' => [
            [
                'BusinessTitle' => '<string>',
                'Email' => '<string>',
                'FirstName' => '<string>',
                'LastName' => '<string>',
                'Phone' => '<string>',
            ],
            // ...
        ],
    ],
    'LifeCycle' => [
        'ClosedLostReason' => 'Customer Deficiency|Delay / Cancellation of Project|Legal / Tax / Regulatory|Lost to Competitor - Google|Lost to Competitor - Microsoft|Lost to Competitor - SoftLayer|Lost to Competitor - VMWare|Lost to Competitor - Other|No Opportunity|On Premises Deployment|Partner Gap|Price|Security / Compliance|Technical Limitations|Customer Experience|Other|People/Relationship/Governance|Product/Technology|Financial/Commercial',
        'NextSteps' => '<string>',
        'NextStepsHistory' => [
            [
                'Time' => <integer || string || DateTime>, // REQUIRED
                'Value' => '<string>', // REQUIRED
            ],
            // ...
        ],
        'ReviewComments' => '<string>',
        'ReviewStatus' => 'Pending Submission|Submitted|In review|Approved|Rejected|Action Required',
        'ReviewStatusReason' => '<string>',
        'Stage' => 'Prospect|Qualified|Technical Validation|Business Validation|Committed|Launched|Closed Lost',
        'TargetCloseDate' => '<string>',
    ],
    'Marketing' => [
        'AwsFundingUsed' => 'Yes|No',
        'CampaignName' => '<string>',
        'Channels' => ['<string>', ...],
        'Source' => 'Marketing Activity|None',
        'UseCases' => ['<string>', ...],
    ],
    'NationalSecurity' => 'Yes|No',
    'OpportunityTeam' => [
        [
            'BusinessTitle' => '<string>',
            'Email' => '<string>',
            'FirstName' => '<string>',
            'LastName' => '<string>',
            'Phone' => '<string>',
        ],
        // ...
    ],
    'OpportunityType' => 'Net New Business|Flat Renewal|Expansion',
    'Origin' => 'AWS Referral|Partner Referral',
    'PartnerOpportunityIdentifier' => '<string>',
    'PrimaryNeedsFromAws' => ['<string>', ...],
    'Project' => [
        'AdditionalComments' => '<string>',
        'ApnPrograms' => ['<string>', ...],
        'CompetitorName' => 'Oracle Cloud|On-Prem|Co-location|Akamai|AliCloud|Google Cloud Platform|IBM Softlayer|Microsoft Azure|Other- Cost Optimization|No Competition|*Other',
        'CustomerBusinessProblem' => '<string>',
        'CustomerUseCase' => '<string>',
        'DeliveryModels' => ['<string>', ...],
        'ExpectedCustomerSpend' => [
            [
                'Amount' => '<string>', // REQUIRED
                'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL', // REQUIRED
                'EstimationUrl' => '<string>',
                'Frequency' => 'Monthly', // REQUIRED
                'TargetCompany' => '<string>', // REQUIRED
            ],
            // ...
        ],
        'OtherCompetitorNames' => '<string>',
        'OtherSolutionDescription' => '<string>',
        'RelatedOpportunityIdentifier' => '<string>',
        'SalesActivities' => ['<string>', ...],
        'Title' => '<string>',
    ],
    'SoftwareRevenue' => [
        'DeliveryModel' => 'Contract|Pay-as-you-go|Subscription',
        'EffectiveDate' => '<string>',
        'ExpirationDate' => '<string>',
        'Value' => [
            'Amount' => '<string>', // REQUIRED
            'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL', // REQUIRED
        ],
    ],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity is created in. Use AWS to create opportunities in the Amazon Web Services catalog, and Sandbox for testing in secure, isolated environments.

ClientToken
Required: Yes
Type: string

Required to be unique, and should be unchanging, it can be randomly generated or a meaningful string.

Default: None

Best practice: To help ensure uniqueness and avoid conflicts, use a Universally Unique Identifier (UUID) as the ClientToken. You can use standard libraries from most programming languages to generate this. If you use the same client token, the API returns the following error: "Conflicting client token submitted for a new request body."

Customer
Type: Customer structure

Specifies customer details associated with the Opportunity.

LifeCycle
Type: LifeCycle structure

An object that contains lifecycle details for the Opportunity.

Marketing
Type: Marketing structure

This object contains marketing details and is optional for an opportunity.

NationalSecurity
Type: string

Indicates whether the Opportunity pertains to a national security project. This field must be set to true only when the customer's industry is Government. Additional privacy and security measures apply during the review and management process for opportunities marked as NationalSecurity.

OpportunityTeam
Type: Array of Contact structures

Represents the internal team handling the opportunity. Specify collaborating members of this opportunity who are within the partner's organization.

OpportunityType
Type: string

Specifies the opportunity type as a renewal, new, or expansion.

Opportunity types:

  • New opportunity: Represents a new business opportunity with a potential customer that's not previously engaged with your solutions or services.

  • Renewal opportunity: Represents an opportunity to renew an existing contract or subscription with a current customer, ensuring continuity of service.

  • Expansion opportunity: Represents an opportunity to expand the scope of an existing contract or subscription, either by adding new services or increasing the volume of existing services for a current customer.

Origin
Type: string

Specifies the origin of the opportunity, indicating if it was sourced from Amazon Web Services or the partner. For all opportunities created with Catalog: AWS, this field must only be Partner Referral. However, when using Catalog: Sandbox, you can set this field to AWS Referral to simulate Amazon Web Services referral creation. This allows Amazon Web Services-originated flows testing in the sandbox catalog.

PartnerOpportunityIdentifier
Type: string

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential to track and reconcile because it's included in the outbound payload to the partner.

This field allows partners to link an opportunity to their CRM, which helps to ensure seamless integration and accurate synchronization between the Partner Central API and the partner's internal systems.

PrimaryNeedsFromAws
Type: Array of strings

Identifies the type of support the partner needs from Amazon Web Services.

Valid values:

  • Cosell—Architectural Validation: Confirmation from Amazon Web Services that the partner's proposed solution architecture is aligned with Amazon Web Services best practices and poses minimal architectural risks.

  • Cosell—Business Presentation: Request Amazon Web Services seller's participation in a joint customer presentation.

  • Cosell—Competitive Information: Access to Amazon Web Services competitive resources and support for the partner's proposed solution.

  • Cosell—Pricing Assistance: Connect with an Amazon Web Services seller for support situations where a partner may be receiving an upfront discount on a service (for example: EDP deals).

  • Cosell—Technical Consultation: Connect with an Amazon Web Services Solutions Architect to address the partner's questions about the proposed solution.

  • Cosell—Total Cost of Ownership Evaluation: Assistance with quoting different cost savings of proposed solutions on Amazon Web Services versus on-premises or a traditional hosting environment.

  • Cosell—Deal Support: Request Amazon Web Services seller's support to progress the opportunity (for example: joint customer call, strategic positioning).

  • Cosell—Support for Public Tender/RFx: Opportunity related to the public sector where the partner needs Amazon Web Services RFx support.

  • Do Not Need Support from AWS Sales Rep: Indicates that a partner doesn't need support from an Amazon Web Services sales representative, and the partner solely manages the opportunity. It's possible to request coselling support on these opportunities at any stage during their lifecycles. This is also known as a for-visibility-only (FVO) opportunity.

Project
Type: Project structure

An object that contains project details for the Opportunity.

SoftwareRevenue
Type: SoftwareRevenue structure

Specifies details of a customer's procurement terms. This is required only for partners in eligible programs.

Result Syntax

[
    'Id' => '<string>',
    'LastModifiedDate' => <DateTime>,
    'PartnerOpportunityIdentifier' => '<string>',
]

Result Details

Members
Id
Required: Yes
Type: string

Read-only, system-generated Opportunity unique identifier. Amazon Web Services creates this identifier, and it's used for all subsequent opportunity actions, such as updates, associations, and submissions. It helps to ensure that each opportunity is accurately tracked and managed.

LastModifiedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the opportunity was last modified. When the Opportunity is created, its value is CreatedDate.

PartnerOpportunityIdentifier
Type: string

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential to track and reconcile because it's included in the outbound payload sent back to the partner.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

CreateResourceSnapshot

$result = $client->createResourceSnapshot([/* ... */]);
$promise = $client->createResourceSnapshotAsync([/* ... */]);

This action allows you to create an immutable snapshot of a specific resource, such as an opportunity, within the context of an engagement. The snapshot captures a subset of the resource's data based on the schema defined by the provided template.

Parameter Syntax

$result = $client->createResourceSnapshot([
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'EngagementIdentifier' => '<string>', // REQUIRED
    'ResourceIdentifier' => '<string>', // REQUIRED
    'ResourceSnapshotTemplateIdentifier' => '<string>', // REQUIRED
    'ResourceType' => 'Opportunity', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog where the snapshot is created. Valid values are AWS and Sandbox.

ClientToken
Required: Yes
Type: string

Specifies a unique, client-generated UUID to ensure that the request is handled exactly once. This token helps prevent duplicate snapshot creations.

EngagementIdentifier
Required: Yes
Type: string

The unique identifier of the engagement associated with this snapshot. This field links the snapshot to a specific engagement context.

ResourceIdentifier
Required: Yes
Type: string

The unique identifier of the specific resource to be snapshotted. The format and constraints of this identifier depend on the ResourceType specified. For example: For Opportunity type, it will be an opportunity ID.

ResourceSnapshotTemplateIdentifier
Required: Yes
Type: string

The name of the template that defines the schema for the snapshot. This template determines which subset of the resource data will be included in the snapshot. Must correspond to an existing and valid template for the specified ResourceType.

ResourceType
Required: Yes
Type: string

Specifies the type of resource for which the snapshot is being created. This field determines the structure and content of the snapshot. Must be one of the supported resource types, such as: Opportunity.

Result Syntax

[
    'Arn' => '<string>',
    'Revision' => <integer>,
]

Result Details

Members
Arn
Type: string

Specifies the Amazon Resource Name (ARN) that uniquely identifies the snapshot created.

Revision
Type: int

Specifies the revision number of the created snapshot. This field provides important information about the snapshot's place in the sequence of snapshots for the given resource.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ServiceQuotaExceededException:

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

CreateResourceSnapshotJob

$result = $client->createResourceSnapshotJob([/* ... */]);
$promise = $client->createResourceSnapshotJobAsync([/* ... */]);

Use this action to create a job to generate a snapshot of the specified resource within an engagement. It initiates an asynchronous process to create a resource snapshot. The job creates a new snapshot only if the resource state has changed, adhering to the same access control and immutability rules as direct snapshot creation.

Parameter Syntax

$result = $client->createResourceSnapshotJob([
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'EngagementIdentifier' => '<string>', // REQUIRED
    'ResourceIdentifier' => '<string>', // REQUIRED
    'ResourceSnapshotTemplateIdentifier' => '<string>', // REQUIRED
    'ResourceType' => 'Opportunity', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which to create the snapshot job. Valid values are AWS and Sandbox.

ClientToken
Required: Yes
Type: string

Specifies a unique, client-generated UUID to ensure that the request is handled exactly once. This token helps prevent duplicate snapshot job creations.

EngagementIdentifier
Required: Yes
Type: string

Specifies the identifier of the engagement associated with the resource to be snapshotted.

ResourceIdentifier
Required: Yes
Type: string

Specifies the identifier of the specific resource to be snapshotted. The format depends on the ResourceType.

ResourceSnapshotTemplateIdentifier
Required: Yes
Type: string

Specifies the name of the template that defines the schema for the snapshot.

ResourceType
Required: Yes
Type: string

The type of resource for which the snapshot job is being created. Must be one of the supported resource types Opportunity.

Result Syntax

[
    'Arn' => '<string>',
    'Id' => '<string>',
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the created snapshot job.

Id
Type: string

The unique identifier for the created snapshot job.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ServiceQuotaExceededException:

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

DeleteResourceSnapshotJob

$result = $client->deleteResourceSnapshotJob([/* ... */]);
$promise = $client->deleteResourceSnapshotJobAsync([/* ... */]);

Use this action to deletes a previously created resource snapshot job. The job must be in a stopped state before it can be deleted.

Parameter Syntax

$result = $client->deleteResourceSnapshotJob([
    'Catalog' => '<string>', // REQUIRED
    'ResourceSnapshotJobIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog from which to delete the snapshot job. Valid values are AWS and Sandbox.

ResourceSnapshotJobIdentifier
Required: Yes
Type: string

The unique identifier of the resource snapshot job to be deleted.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

DisassociateOpportunity

$result = $client->disassociateOpportunity([/* ... */]);
$promise = $client->disassociateOpportunityAsync([/* ... */]);

Allows you to remove an existing association between an Opportunity and related entities, such as a Partner Solution, Amazon Web Services product, or an Amazon Web Services Marketplace offer. This operation is the counterpart to AssociateOpportunity, and it provides flexibility to manage associations as business needs change.

Use this operation to update the associations of an Opportunity due to changes in the related entities, or if an association was made in error. Ensuring accurate associations helps maintain clarity and accuracy to track and manage business opportunities. When you replace an entity, first attach the new entity and then disassociate the one to be removed, especially if it's the last remaining entity that's required.

Parameter Syntax

$result = $client->disassociateOpportunity([
    'Catalog' => '<string>', // REQUIRED
    'OpportunityIdentifier' => '<string>', // REQUIRED
    'RelatedEntityIdentifier' => '<string>', // REQUIRED
    'RelatedEntityType' => 'Solutions|AwsProducts|AwsMarketplaceOffers', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity disassociation is made in. Use AWS to disassociate opportunities in the Amazon Web Services catalog, and Sandbox for testing in secure, isolated environments.

OpportunityIdentifier
Required: Yes
Type: string

The opportunity's unique identifier for when you want to disassociate it from related entities. This identifier helps to ensure that the correct opportunity is updated.

Validation: Ensure that the provided identifier corresponds to an existing opportunity in the Amazon Web Services system because incorrect identifiers result in an error and no changes are made.

RelatedEntityIdentifier
Required: Yes
Type: string

The related entity's identifier that you want to disassociate from the opportunity. Depending on the type of entity, this could be a simple identifier or an Amazon Resource Name (ARN) for entities managed through Amazon Web Services Marketplace.

For Amazon Web Services Marketplace entities, use the Amazon Web Services Marketplace API to obtain the necessary ARNs. For guidance on retrieving these ARNs, see Amazon Web Services MarketplaceUsing the Amazon Web Services Marketplace Catalog API.

Validation: Ensure the identifier or ARN is valid and corresponds to an existing entity. An incorrect or invalid identifier results in an error.

RelatedEntityType
Required: Yes
Type: string

The type of the entity that you're disassociating from the opportunity. When you specify the entity type, it helps the system correctly process the disassociation request to ensure that the right connections are removed.

Examples of entity types include Partner Solution, Amazon Web Services product, and Amazon Web Services Marketplaceoffer. Ensure that the value matches one of the expected entity types.

Validation: Provide a valid entity type to help ensure successful disassociation. An invalid or incorrect entity type results in an error.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetAwsOpportunitySummary

$result = $client->getAwsOpportunitySummary([/* ... */]);
$promise = $client->getAwsOpportunitySummaryAsync([/* ... */]);

Retrieves a summary of an AWS Opportunity. This summary includes high-level details about the opportunity sourced from AWS, such as lifecycle information, customer details, and involvement type. It is useful for tracking updates on the AWS opportunity corresponding to an opportunity in the partner's account.

Parameter Syntax

$result = $client->getAwsOpportunitySummary([
    'Catalog' => '<string>', // REQUIRED
    'RelatedOpportunityIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which the AWS Opportunity is located. Accepted values include AWS for production opportunities or Sandbox for testing purposes. The catalog determines which environment the opportunity data is pulled from.

RelatedOpportunityIdentifier
Required: Yes
Type: string

The unique identifier for the related partner opportunity. Use this field to correlate an AWS opportunity with its corresponding partner opportunity.

Result Syntax

[
    'Catalog' => '<string>',
    'Customer' => [
        'Contacts' => [
            [
                'BusinessTitle' => '<string>',
                'Email' => '<string>',
                'FirstName' => '<string>',
                'LastName' => '<string>',
                'Phone' => '<string>',
            ],
            // ...
        ],
    ],
    'Insights' => [
        'EngagementScore' => 'High|Medium|Low',
        'NextBestActions' => '<string>',
    ],
    'InvolvementType' => 'For Visibility Only|Co-Sell',
    'InvolvementTypeChangeReason' => 'Expansion Opportunity|Change in Deal Information|Customer Requested|Technical Complexity|Risk Mitigation',
    'LifeCycle' => [
        'ClosedLostReason' => 'Administrative|Business Associate Agreement|Company Acquired/Dissolved|Competitive Offering|Customer Data Requirement|Customer Deficiency|Customer Experience|Delay / Cancellation of Project|Duplicate|Duplicate Opportunity|Executive Blocker|Failed Vetting|Feature Limitation|Financial/Commercial|Insufficient Amazon Value|Insufficient AWS Value|International Constraints|Legal / Tax / Regulatory|Legal Terms and Conditions|Lost to Competitor|Lost to Competitor - Google|Lost to Competitor - Microsoft|Lost to Competitor - Other|Lost to Competitor - Rackspace|Lost to Competitor - SoftLayer|Lost to Competitor - VMWare|No Customer Reference|No Integration Resources|No Opportunity|No Perceived Value of MP|No Response|Not Committed to AWS|No Update|On Premises Deployment|Other|Other (Details in Description)|Partner Gap|Past Due|People/Relationship/Governance|Platform Technology Limitation|Preference for Competitor|Price|Product/Technology|Product Not on AWS|Security / Compliance|Self-Service|Technical Limitations|Term Sheet Impasse',
        'NextSteps' => '<string>',
        'NextStepsHistory' => [
            [
                'Time' => <DateTime>,
                'Value' => '<string>',
            ],
            // ...
        ],
        'Stage' => 'Not Started|In Progress|Prospect|Engaged|Identified|Qualify|Research|Seller Engaged|Evaluating|Seller Registered|Term Sheet Negotiation|Contract Negotiation|Onboarding|Building Integration|Qualified|On-hold|Technical Validation|Business Validation|Committed|Launched|Deferred to Partner|Closed Lost|Completed|Closed Incomplete',
        'TargetCloseDate' => '<string>',
    ],
    'OpportunityTeam' => [
        [
            'BusinessTitle' => 'AWSSalesRep|AWSAccountOwner|WWPSPDM|PDM|PSM|ISVSM',
            'Email' => '<string>',
            'FirstName' => '<string>',
            'LastName' => '<string>',
        ],
        // ...
    ],
    'Origin' => 'AWS Referral|Partner Referral',
    'Project' => [
        'ExpectedCustomerSpend' => [
            [
                'Amount' => '<string>',
                'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL',
                'EstimationUrl' => '<string>',
                'Frequency' => 'Monthly',
                'TargetCompany' => '<string>',
            ],
            // ...
        ],
    ],
    'RelatedEntityIds' => [
        'AwsProducts' => ['<string>', ...],
        'Solutions' => ['<string>', ...],
    ],
    'RelatedOpportunityId' => '<string>',
    'Visibility' => 'Full|Limited',
]

Result Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which the AWS Opportunity exists. This is the environment (e.g., AWS or Sandbox) where the opportunity is being managed.

Customer
Type: AwsOpportunityCustomer structure

Provides details about the customer associated with the AWS Opportunity, including account information, industry, and other customer data. These details help partners understand the business context of the opportunity.

Insights
Type: AwsOpportunityInsights structure

Provides insights into the AWS Opportunity, including engagement score and recommended actions that AWS suggests for the partner.

InvolvementType
Type: string

Specifies the type of involvement AWS has in the opportunity, such as direct cosell or advisory support. This field helps partners understand the role AWS plays in advancing the opportunity.

InvolvementTypeChangeReason
Type: string

Provides a reason for any changes in the involvement type of AWS in the opportunity. This field is used to track why the level of AWS engagement has changed from For Visibility Only to Co-sell offering transparency into the partnership dynamics.

LifeCycle
Type: AwsOpportunityLifeCycle structure

Contains lifecycle information for the AWS Opportunity, including review status, stage, and target close date. This field is crucial for partners to monitor the progression of the opportunity.

OpportunityTeam
Type: Array of AwsTeamMember structures

Details the AWS opportunity team, including members involved. This information helps partners know who from AWS is engaged and what their role is.

Origin
Type: string

Specifies whether the AWS Opportunity originated from AWS or the partner. This helps distinguish between opportunities that were sourced by AWS and those referred by the partner.

Project
Type: AwsOpportunityProject structure

Provides details about the project associated with the AWS Opportunity, including the customer’s business problem, expected outcomes, and project scope. This information is crucial for understanding the broader context of the opportunity.

RelatedEntityIds

Lists related entity identifiers, such as AWS products or partner solutions, associated with the AWS Opportunity. These identifiers provide additional context and help partners understand which AWS services are involved.

RelatedOpportunityId
Type: string

Provides the unique identifier of the related partner opportunity, allowing partners to link the AWS Opportunity to their corresponding opportunity in their CRM system.

Visibility
Type: string

Defines the visibility level for the AWS Opportunity. Use Full visibility for most cases, while Limited visibility is reserved for special programs or sensitive opportunities.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetEngagement

$result = $client->getEngagement([/* ... */]);
$promise = $client->getEngagementAsync([/* ... */]);

Use this action to retrieve the engagement record for a given EngagementIdentifier.

Parameter Syntax

$result = $client->getEngagement([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the engagement request. Valid values are AWS and Sandbox.

Identifier
Required: Yes
Type: string

Specifies the identifier of the Engagement record to retrieve.

Result Syntax

[
    'Arn' => '<string>',
    'Contexts' => [
        [
            'Payload' => [
                'CustomerProject' => [
                    'Customer' => [
                        'CompanyName' => '<string>',
                        'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                        'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
                        'WebsiteUrl' => '<string>',
                    ],
                    'Project' => [
                        'BusinessProblem' => '<string>',
                        'TargetCompletionDate' => '<string>',
                        'Title' => '<string>',
                    ],
                ],
            ],
            'Type' => 'CustomerProject',
        ],
        // ...
    ],
    'CreatedAt' => <DateTime>,
    'CreatedBy' => '<string>',
    'Description' => '<string>',
    'Id' => '<string>',
    'MemberCount' => <integer>,
    'Title' => '<string>',
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the engagement retrieved.

Contexts
Type: Array of EngagementContextDetails structures

A list of context objects associated with the engagement. Each context provides additional information related to the Engagement, such as customer projects or documents.

CreatedAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the Engagement was created, presented in ISO 8601 format (UTC). For example: "2023-05-01T20:37:46Z". This timestamp helps track the lifecycle of the Engagement.

CreatedBy
Type: string

The AWS account ID of the user who originally created the engagement. This field helps in tracking the origin of the engagement.

Description
Type: string

A more detailed description of the engagement. This provides additional context or information about the engagement's purpose or scope.

Id
Type: string

The unique resource identifier of the engagement retrieved.

MemberCount
Type: int

Specifies the current count of members participating in the Engagement. This count includes all active members regardless of their roles or permissions within the Engagement.

Title
Type: string

The title of the engagement. It provides a brief, descriptive name for the engagement that is meaningful and easily recognizable.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetEngagementInvitation

$result = $client->getEngagementInvitation([/* ... */]);
$promise = $client->getEngagementInvitationAsync([/* ... */]);

Retrieves the details of an engagement invitation shared by AWS with a partner. The information includes aspects such as customer, project details, and lifecycle information. To connect an engagement invitation with an opportunity, match the invitation’s Payload.Project.Title with opportunity Project.Title.

Parameter Syntax

$result = $client->getEngagementInvitation([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. The field accepts values from the predefined set: AWS for live operations or Sandbox for testing environments.

Identifier
Required: Yes
Type: string

Specifies the unique identifier for the retrieved engagement invitation.

Result Syntax

[
    'Arn' => '<string>',
    'Catalog' => '<string>',
    'EngagementDescription' => '<string>',
    'EngagementId' => '<string>',
    'EngagementTitle' => '<string>',
    'ExistingMembers' => [
        [
            'CompanyName' => '<string>',
            'WebsiteUrl' => '<string>',
        ],
        // ...
    ],
    'ExpirationDate' => <DateTime>,
    'Id' => '<string>',
    'InvitationDate' => <DateTime>,
    'InvitationMessage' => '<string>',
    'Payload' => [
        'OpportunityInvitation' => [
            'Customer' => [
                'CompanyName' => '<string>',
                'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
                'WebsiteUrl' => '<string>',
            ],
            'Project' => [
                'BusinessProblem' => '<string>',
                'ExpectedCustomerSpend' => [
                    [
                        'Amount' => '<string>',
                        'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL',
                        'EstimationUrl' => '<string>',
                        'Frequency' => 'Monthly',
                        'TargetCompany' => '<string>',
                    ],
                    // ...
                ],
                'TargetCompletionDate' => '<string>',
                'Title' => '<string>',
            ],
            'ReceiverResponsibilities' => ['<string>', ...],
            'SenderContacts' => [
                [
                    'BusinessTitle' => '<string>',
                    'Email' => '<string>',
                    'FirstName' => '<string>',
                    'LastName' => '<string>',
                    'Phone' => '<string>',
                ],
                // ...
            ],
        ],
    ],
    'PayloadType' => 'OpportunityInvitation',
    'Receiver' => [
        'Account' => [
            'Alias' => '<string>',
            'AwsAccountId' => '<string>',
        ],
    ],
    'RejectionReason' => '<string>',
    'SenderAwsAccountId' => '<string>',
    'SenderCompanyName' => '<string>',
    'Status' => 'ACCEPTED|PENDING|REJECTED|EXPIRED',
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) that identifies the engagement invitation.

Catalog
Required: Yes
Type: string

Indicates the catalog from which the engagement invitation details are retrieved. This field helps in identifying the appropriate catalog (e.g., AWS or Sandbox) used in the request.

EngagementDescription
Type: string

The description of the engagement associated with this invitation.

EngagementId
Type: string

The identifier of the engagement associated with this invitation.This ID links the invitation to its corresponding engagement.

EngagementTitle
Type: string

The title of the engagement invitation, summarizing the purpose or objectives of the opportunity shared by AWS.

ExistingMembers
Type: Array of EngagementMemberSummary structures

A list of active members currently part of the Engagement. This array contains a maximum of 10 members, each represented by an object with the following properties.

  • CompanyName: The name of the member's company.

  • WebsiteUrl: The website URL of the member's company.

ExpirationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the date on which the engagement invitation will expire if not accepted by the partner.

Id
Required: Yes
Type: string

Unique identifier assigned to the engagement invitation being retrieved.

InvitationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date when the engagement invitation was sent to the partner.

InvitationMessage
Type: string

The message sent to the invited partner when the invitation was created.

Payload
Type: Payload structure

Details of the engagement invitation payload, including specific data relevant to the invitation's contents, such as customer information and opportunity insights.

PayloadType
Type: string

The type of payload contained in the engagement invitation, indicating what data or context the payload covers.

Receiver
Type: Receiver structure

Information about the partner organization or team that received the engagement invitation, including contact details and identifiers.

RejectionReason
Type: string

If the engagement invitation was rejected, this field specifies the reason provided by the partner for the rejection.

SenderAwsAccountId
Type: string

Specifies the AWS Account ID of the sender, which identifies the AWS team responsible for sharing the engagement invitation.

SenderCompanyName
Type: string

The name of the AWS organization or team that sent the engagement invitation.

Status
Type: string

The current status of the engagement invitation.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetOpportunity

$result = $client->getOpportunity([/* ... */]);
$promise = $client->getOpportunityAsync([/* ... */]);

Fetches the Opportunity record from Partner Central by a given Identifier.

Use the ListOpportunities action or the event notification (from Amazon EventBridge) to obtain this identifier.

Parameter Syntax

$result = $client->getOpportunity([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity is fetched from. Use AWS to retrieve opportunities in the Amazon Web Services catalog, and Sandbox to retrieve opportunities in a secure, isolated testing environment.

Identifier
Required: Yes
Type: string

Read-only, system generated Opportunity unique identifier.

Result Syntax

[
    'Arn' => '<string>',
    'Catalog' => '<string>',
    'CreatedDate' => <DateTime>,
    'Customer' => [
        'Account' => [
            'Address' => [
                'City' => '<string>',
                'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                'PostalCode' => '<string>',
                'StateOrRegion' => '<string>',
                'StreetAddress' => '<string>',
            ],
            'AwsAccountId' => '<string>',
            'CompanyName' => '<string>',
            'Duns' => '<string>',
            'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
            'OtherIndustry' => '<string>',
            'WebsiteUrl' => '<string>',
        ],
        'Contacts' => [
            [
                'BusinessTitle' => '<string>',
                'Email' => '<string>',
                'FirstName' => '<string>',
                'LastName' => '<string>',
                'Phone' => '<string>',
            ],
            // ...
        ],
    ],
    'Id' => '<string>',
    'LastModifiedDate' => <DateTime>,
    'LifeCycle' => [
        'ClosedLostReason' => 'Customer Deficiency|Delay / Cancellation of Project|Legal / Tax / Regulatory|Lost to Competitor - Google|Lost to Competitor - Microsoft|Lost to Competitor - SoftLayer|Lost to Competitor - VMWare|Lost to Competitor - Other|No Opportunity|On Premises Deployment|Partner Gap|Price|Security / Compliance|Technical Limitations|Customer Experience|Other|People/Relationship/Governance|Product/Technology|Financial/Commercial',
        'NextSteps' => '<string>',
        'NextStepsHistory' => [
            [
                'Time' => <DateTime>,
                'Value' => '<string>',
            ],
            // ...
        ],
        'ReviewComments' => '<string>',
        'ReviewStatus' => 'Pending Submission|Submitted|In review|Approved|Rejected|Action Required',
        'ReviewStatusReason' => '<string>',
        'Stage' => 'Prospect|Qualified|Technical Validation|Business Validation|Committed|Launched|Closed Lost',
        'TargetCloseDate' => '<string>',
    ],
    'Marketing' => [
        'AwsFundingUsed' => 'Yes|No',
        'CampaignName' => '<string>',
        'Channels' => ['<string>', ...],
        'Source' => 'Marketing Activity|None',
        'UseCases' => ['<string>', ...],
    ],
    'NationalSecurity' => 'Yes|No',
    'OpportunityTeam' => [
        [
            'BusinessTitle' => '<string>',
            'Email' => '<string>',
            'FirstName' => '<string>',
            'LastName' => '<string>',
            'Phone' => '<string>',
        ],
        // ...
    ],
    'OpportunityType' => 'Net New Business|Flat Renewal|Expansion',
    'PartnerOpportunityIdentifier' => '<string>',
    'PrimaryNeedsFromAws' => ['<string>', ...],
    'Project' => [
        'AdditionalComments' => '<string>',
        'ApnPrograms' => ['<string>', ...],
        'CompetitorName' => 'Oracle Cloud|On-Prem|Co-location|Akamai|AliCloud|Google Cloud Platform|IBM Softlayer|Microsoft Azure|Other- Cost Optimization|No Competition|*Other',
        'CustomerBusinessProblem' => '<string>',
        'CustomerUseCase' => '<string>',
        'DeliveryModels' => ['<string>', ...],
        'ExpectedCustomerSpend' => [
            [
                'Amount' => '<string>',
                'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL',
                'EstimationUrl' => '<string>',
                'Frequency' => 'Monthly',
                'TargetCompany' => '<string>',
            ],
            // ...
        ],
        'OtherCompetitorNames' => '<string>',
        'OtherSolutionDescription' => '<string>',
        'RelatedOpportunityIdentifier' => '<string>',
        'SalesActivities' => ['<string>', ...],
        'Title' => '<string>',
    ],
    'RelatedEntityIdentifiers' => [
        'AwsMarketplaceOffers' => ['<string>', ...],
        'AwsProducts' => ['<string>', ...],
        'Solutions' => ['<string>', ...],
    ],
    'SoftwareRevenue' => [
        'DeliveryModel' => 'Contract|Pay-as-you-go|Subscription',
        'EffectiveDate' => '<string>',
        'ExpirationDate' => '<string>',
        'Value' => [
            'Amount' => '<string>',
            'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL',
        ],
    ],
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) that uniquely identifies the opportunity.

Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity information is retrieved from. Use AWS to retrieve opportunities in the Amazon Web Services catalog, and Sandbox to retrieve opportunities in a secure and isolated testing environment.

CreatedDate
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the Opportunity was last created.

Customer
Type: Customer structure

Specifies details of the customer associated with the Opportunity.

Id
Required: Yes
Type: string

Read-only, system generated Opportunity unique identifier.

LastModifiedDate
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the opportunity was last modified.

LifeCycle
Type: LifeCycle structure

An object that contains lifecycle details for the Opportunity.

Marketing
Type: Marketing structure

An object that contains marketing details for the Opportunity.

NationalSecurity
Type: string

Indicates whether the Opportunity pertains to a national security project. This field must be set to true only when the customer's industry is Government. Additional privacy and security measures apply during the review and management process for opportunities marked as NationalSecurity.

OpportunityTeam
Type: Array of Contact structures

Represents the internal team handling the opportunity. Specify the members involved in collaborating on this opportunity within the partner's organization.

OpportunityType
Type: string

Specifies the opportunity type as renewal, new, or expansion.

Opportunity types:

  • New opportunity: Represents a new business opportunity with a potential customer that's not previously engaged with your solutions or services.

  • Renewal opportunity: Represents an opportunity to renew an existing contract or subscription with a current customer, which helps to ensure service continuity.

  • Expansion opportunity: Represents an opportunity to expand the scope of a customer's contract or subscription, either by adding new services or increasing the volume of existing services.

PartnerOpportunityIdentifier
Type: string

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential to track and reconcile because it's included in the outbound payload sent back to the partner.

PrimaryNeedsFromAws
Type: Array of strings

Identifies the type of support the partner needs from Amazon Web Services.

Valid values:

  • Cosell—Architectural Validation: Confirmation from Amazon Web Services that the partner's proposed solution architecture is aligned with Amazon Web Services best practices and poses minimal architectural risks.

  • Cosell—Business Presentation: Request Amazon Web Services seller's participation in a joint customer presentation.

  • Cosell—Competitive Information: Access to Amazon Web Services competitive resources and support for the partner's proposed solution.

  • Cosell—Pricing Assistance: Connect with an Amazon Web Services seller for support situations where a partner may be receiving an upfront discount on a service (for example: EDP deals).

  • Cosell—Technical Consultation: Connect with an Amazon Web Services Solutions Architect to address the partner's questions about the proposed solution.

  • Cosell—Total Cost of Ownership Evaluation: Assistance with quoting different cost savings of proposed solutions on Amazon Web Services versus on-premises or a traditional hosting environment.

  • Cosell—Deal Support: Request Amazon Web Services seller's support to progress the opportunity (for example: joint customer call, strategic positioning).

  • Cosell—Support for Public Tender/RFx: Opportunity related to the public sector where the partner needs Amazon Web Services RFx support.

  • Do Not Need Support from Amazon Web Services Sales Rep: Indicates that a partner doesn't need support from an Amazon Web Services sales representative, and the partner solely manages the opportunity. It's possible to request coselling support on these opportunities at any stage during their lifecycle. Also known as, for-visibility-only (FVO) opportunity.

Project
Type: Project structure

An object that contains project details summary for the Opportunity.

RelatedEntityIdentifiers
Required: Yes
Type: RelatedEntityIdentifiers structure

Provides information about the associations of other entities with the opportunity. These entities include identifiers for AWSProducts, Partner Solutions, and AWSMarketplaceOffers.

SoftwareRevenue
Type: SoftwareRevenue structure

Specifies details of a customer's procurement terms. Required only for partners in eligible programs.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetResourceSnapshot

$result = $client->getResourceSnapshot([/* ... */]);
$promise = $client->getResourceSnapshotAsync([/* ... */]);

Use this action to retrieve a specific snapshot record.

Parameter Syntax

$result = $client->getResourceSnapshot([
    'Catalog' => '<string>', // REQUIRED
    'EngagementIdentifier' => '<string>', // REQUIRED
    'ResourceIdentifier' => '<string>', // REQUIRED
    'ResourceSnapshotTemplateIdentifier' => '<string>', // REQUIRED
    'ResourceType' => 'Opportunity', // REQUIRED
    'Revision' => <integer>,
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request. Valid values are:

  • AWS: Retrieves the snapshot from the production AWS environment.

  • Sandbox: Retrieves the snapshot from a sandbox environment used for testing or development purposes.

EngagementIdentifier
Required: Yes
Type: string

The unique identifier of the engagement associated with the snapshot. This field links the snapshot to a specific engagement context.

ResourceIdentifier
Required: Yes
Type: string

The unique identifier of the specific resource that was snapshotted. The format and constraints of this identifier depend on the ResourceType specified. For Opportunity type, it will be an opportunity ID

ResourceSnapshotTemplateIdentifier
Required: Yes
Type: string

he name of the template that defines the schema for the snapshot. This template determines which subset of the resource data is included in the snapshot and must correspond to an existing and valid template for the specified ResourceType.

ResourceType
Required: Yes
Type: string

Specifies the type of resource that was snapshotted. This field determines the structure and content of the snapshot payload. Valid value includes:Opportunity: For opportunity-related data.

Revision
Type: int

Specifies which revision of the snapshot to retrieve. If omitted returns the latest revision.

Result Syntax

[
    'Arn' => '<string>',
    'Catalog' => '<string>',
    'CreatedAt' => <DateTime>,
    'CreatedBy' => '<string>',
    'EngagementId' => '<string>',
    'Payload' => [
        'OpportunitySummary' => [
            'Customer' => [
                'Account' => [
                    'Address' => [
                        'City' => '<string>',
                        'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                        'PostalCode' => '<string>',
                        'StateOrRegion' => '<string>',
                        'StreetAddress' => '<string>',
                    ],
                    'AwsAccountId' => '<string>',
                    'CompanyName' => '<string>',
                    'Duns' => '<string>',
                    'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
                    'OtherIndustry' => '<string>',
                    'WebsiteUrl' => '<string>',
                ],
                'Contacts' => [
                    [
                        'BusinessTitle' => '<string>',
                        'Email' => '<string>',
                        'FirstName' => '<string>',
                        'LastName' => '<string>',
                        'Phone' => '<string>',
                    ],
                    // ...
                ],
            ],
            'Lifecycle' => [
                'NextSteps' => '<string>',
                'ReviewStatus' => 'Pending Submission|Submitted|In review|Approved|Rejected|Action Required',
                'Stage' => 'Prospect|Qualified|Technical Validation|Business Validation|Committed|Launched|Closed Lost',
                'TargetCloseDate' => '<string>',
            ],
            'OpportunityTeam' => [
                [
                    'BusinessTitle' => '<string>',
                    'Email' => '<string>',
                    'FirstName' => '<string>',
                    'LastName' => '<string>',
                    'Phone' => '<string>',
                ],
                // ...
            ],
            'OpportunityType' => 'Net New Business|Flat Renewal|Expansion',
            'PrimaryNeedsFromAws' => ['<string>', ...],
            'Project' => [
                'CustomerUseCase' => '<string>',
                'DeliveryModels' => ['<string>', ...],
                'ExpectedCustomerSpend' => [
                    [
                        'Amount' => '<string>',
                        'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL',
                        'EstimationUrl' => '<string>',
                        'Frequency' => 'Monthly',
                        'TargetCompany' => '<string>',
                    ],
                    // ...
                ],
                'OtherSolutionDescription' => '<string>',
                'SalesActivities' => ['<string>', ...],
            ],
            'RelatedEntityIdentifiers' => [
                'AwsMarketplaceOffers' => ['<string>', ...],
                'AwsProducts' => ['<string>', ...],
                'Solutions' => ['<string>', ...],
            ],
        ],
    ],
    'ResourceId' => '<string>',
    'ResourceSnapshotTemplateName' => '<string>',
    'ResourceType' => 'Opportunity',
    'Revision' => <integer>,
]

Result Details

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the snapshot. This globally unique identifier can be used for resource-specific operations across AWS services.

Catalog
Required: Yes
Type: string

The catalog in which the snapshot was created. Matches the Catalog specified in the request.

CreatedAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp when the snapshot was created, in ISO 8601 format (e.g., "2023-06-01T14:30:00Z"). This allows for precise tracking of when the snapshot was taken.

CreatedBy
Type: string

The AWS account ID of the principal (user or role) who created the snapshot. This helps in tracking the origin of the snapshot.

EngagementId
Type: string

The identifier of the engagement associated with this snapshot. Matches the EngagementIdentifier specified in the request.

Payload
Type: ResourceSnapshotPayload structure

Represents the payload of a resource snapshot. This structure is designed to accommodate different types of resource snapshots, currently supporting opportunity summaries.

ResourceId
Type: string

The identifier of the specific resource that was snapshotted. Matches the ResourceIdentifier specified in the request.

ResourceSnapshotTemplateName
Type: string

The name of the view used for this snapshot. This is the same as the template name.

ResourceType
Type: string

The type of the resource that was snapshotted. Matches the ResourceType specified in the request.

Revision
Type: int

The revision number of this snapshot. This is a positive integer that is sequential and unique within the context of a resource view.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetResourceSnapshotJob

$result = $client->getResourceSnapshotJob([/* ... */]);
$promise = $client->getResourceSnapshotJobAsync([/* ... */]);

Use this action to retrieves information about a specific resource snapshot job.

Parameter Syntax

$result = $client->getResourceSnapshotJob([
    'Catalog' => '<string>', // REQUIRED
    'ResourceSnapshotJobIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request. Valid values are:

  • AWS: Retrieves the snapshot job from the production AWS environment.

  • Sandbox: Retrieves the snapshot job from a sandbox environment used for testing or development purposes.

ResourceSnapshotJobIdentifier
Required: Yes
Type: string

The unique identifier of the resource snapshot job to be retrieved. This identifier is crucial for pinpointing the specific job you want to query.

Result Syntax

[
    'Arn' => '<string>',
    'Catalog' => '<string>',
    'CreatedAt' => <DateTime>,
    'EngagementId' => '<string>',
    'Id' => '<string>',
    'LastFailure' => '<string>',
    'LastSuccessfulExecutionDate' => <DateTime>,
    'ResourceArn' => '<string>',
    'ResourceId' => '<string>',
    'ResourceSnapshotTemplateName' => '<string>',
    'ResourceType' => 'Opportunity',
    'Status' => 'Running|Stopped',
]

Result Details

Members
Arn
Type: string

he Amazon Resource Name (ARN) of the snapshot job. This globally unique identifier can be used for resource-specific operations across AWS services.

Catalog
Required: Yes
Type: string

The catalog in which the snapshot job was created. This will match the catalog specified in the request.

CreatedAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the snapshot job was created, in ISO 8601 format (UTC). Example: "2023-05-01T20:37:46Z"

EngagementId
Type: string

The identifier of the engagement associated with this snapshot job. This links the job to a specific engagement context.

Id
Type: string

The unique identifier of the snapshot job. This matches the ResourceSnapshotJobIdentifier provided in the request.

LastFailure
Type: string

If the job has encountered any failures, this field contains the error message from the most recent failure. This can be useful for troubleshooting issues with the job.

LastSuccessfulExecutionDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time of the last successful execution of the job, in ISO 8601 format (UTC). Example: "2023-05-01T20:37:46Z"

ResourceArn
Type: string

The Amazon Resource Name (ARN) of the resource being snapshotted. This provides a globally unique identifier for the resource across AWS.

ResourceId
Type: string

The identifier of the specific resource being snapshotted. The format may vary depending on the ResourceType.

ResourceSnapshotTemplateName
Type: string

The name of the template used for creating the snapshot. This is the same as the template name. It defines the structure and content of the snapshot.

ResourceType
Type: string

The type of resource being snapshotted. This would have Opportunity as a value as it is dependent on the supported resource type.

Status
Type: string

The current status of the snapshot job. Valid values:

  • STOPPED: The job is not currently running.

  • RUNNING: The job is actively executing.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

GetSellingSystemSettings

$result = $client->getSellingSystemSettings([/* ... */]);
$promise = $client->getSellingSystemSettingsAsync([/* ... */]);

Retrieves the currently set system settings, which include the IAM Role used for resource snapshot jobs.

Parameter Syntax

$result = $client->getSellingSystemSettings([
    'Catalog' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which the settings are defined. Acceptable values include AWS for production and Sandbox for testing environments.

Result Syntax

[
    'Catalog' => '<string>',
    'ResourceSnapshotJobRoleArn' => '<string>',
]

Result Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which the settings are defined. Acceptable values include AWS for production and Sandbox for testing environments.

ResourceSnapshotJobRoleArn
Type: string

Specifies the ARN of the IAM Role used for resource snapshot job executions.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListEngagementByAcceptingInvitationTasks

$result = $client->listEngagementByAcceptingInvitationTasks([/* ... */]);
$promise = $client->listEngagementByAcceptingInvitationTasksAsync([/* ... */]);

Lists all in-progress, completed, or failed StartEngagementByAcceptingInvitationTask tasks that were initiated by the caller's account.

Parameter Syntax

$result = $client->listEngagementByAcceptingInvitationTasks([
    'Catalog' => '<string>', // REQUIRED
    'EngagementInvitationIdentifier' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'OpportunityIdentifier' => ['<string>', ...],
    'Sort' => [
        'SortBy' => 'StartTime', // REQUIRED
        'SortOrder' => 'ASCENDING|DESCENDING', // REQUIRED
    ],
    'TaskIdentifier' => ['<string>', ...],
    'TaskStatus' => ['<string>', ...],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request. Valid values are:

  • AWS: Retrieves the request from the production AWS environment.

  • Sandbox: Retrieves the request from a sandbox environment used for testing or development purposes.

EngagementInvitationIdentifier
Type: Array of strings

Filters tasks by the identifiers of the engagement invitations they are processing.

MaxResults
Type: int

Use this parameter to control the number of items returned in each request, which can be useful for performance tuning and managing large result sets.

NextToken
Type: string

Use this parameter for pagination when the result set spans multiple pages. This value is obtained from the NextToken field in the response of a previous call to this API.

OpportunityIdentifier
Type: Array of strings

Filters tasks by the identifiers of the opportunities they created or are associated with.

Sort
Type: ListTasksSortBase structure

Specifies the sorting criteria for the returned results. This allows you to order the tasks based on specific attributes.

TaskIdentifier
Type: Array of strings

Filters tasks by their unique identifiers. Use this when you want to retrieve information about specific tasks.

TaskStatus
Type: Array of strings

Filters the tasks based on their current status. This allows you to focus on tasks in specific states.

Result Syntax

[
    'NextToken' => '<string>',
    'TaskSummaries' => [
        [
            'EngagementInvitationId' => '<string>',
            'Message' => '<string>',
            'OpportunityId' => '<string>',
            'ReasonCode' => 'InvitationAccessDenied|InvitationValidationFailed|EngagementAccessDenied|OpportunityAccessDenied|ResourceSnapshotJobAccessDenied|ResourceSnapshotJobValidationFailed|ResourceSnapshotJobConflict|EngagementValidationFailed|EngagementConflict|OpportunitySubmissionFailed|EngagementInvitationConflict|OpportunityValidationFailed|OpportunityConflict|ResourceSnapshotAccessDenied|ResourceSnapshotValidationFailed|ResourceSnapshotConflict|InternalError|ServiceQuotaExceeded|RequestThrottled',
            'ResourceSnapshotJobId' => '<string>',
            'StartTime' => <DateTime>,
            'TaskArn' => '<string>',
            'TaskId' => '<string>',
            'TaskStatus' => 'IN_PROGRESS|COMPLETE|FAILED',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

A token used for pagination to retrieve the next page of results.If there are more results available, this field will contain a token that can be used in a subsequent API call to retrieve the next page. If there are no more results, this field will be null or an empty string.

TaskSummaries

An array of EngagementByAcceptingInvitationTaskSummary objects, each representing a task that matches the specified filters. The array may be empty if no tasks match the criteria.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListEngagementFromOpportunityTasks

$result = $client->listEngagementFromOpportunityTasks([/* ... */]);
$promise = $client->listEngagementFromOpportunityTasksAsync([/* ... */]);

Lists all in-progress, completed, or failed EngagementFromOpportunity tasks that were initiated by the caller's account.

Parameter Syntax

$result = $client->listEngagementFromOpportunityTasks([
    'Catalog' => '<string>', // REQUIRED
    'EngagementIdentifier' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'OpportunityIdentifier' => ['<string>', ...],
    'Sort' => [
        'SortBy' => 'StartTime', // REQUIRED
        'SortOrder' => 'ASCENDING|DESCENDING', // REQUIRED
    ],
    'TaskIdentifier' => ['<string>', ...],
    'TaskStatus' => ['<string>', ...],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request. Valid values are:

  • AWS: Retrieves the request from the production AWS environment.

  • Sandbox: Retrieves the request from a sandbox environment used for testing or development purposes.

EngagementIdentifier
Type: Array of strings

Filters tasks by the identifiers of the engagements they created or are associated with.

MaxResults
Type: int

Specifies the maximum number of results to return in a single page of the response.Use this parameter to control the number of items returned in each request, which can be useful for performance tuning and managing large result sets.

NextToken
Type: string

The token for requesting the next page of results. This value is obtained from the NextToken field in the response of a previous call to this API. Use this parameter for pagination when the result set spans multiple pages.

OpportunityIdentifier
Type: Array of strings

The identifier of the original opportunity associated with this task.

Sort
Type: ListTasksSortBase structure

Specifies the sorting criteria for the returned results. This allows you to order the tasks based on specific attributes.

TaskIdentifier
Type: Array of strings

Filters tasks by their unique identifiers. Use this when you want to retrieve information about specific tasks.

TaskStatus
Type: Array of strings

Filters the tasks based on their current status. This allows you to focus on tasks in specific states.

Result Syntax

[
    'NextToken' => '<string>',
    'TaskSummaries' => [
        [
            'EngagementId' => '<string>',
            'EngagementInvitationId' => '<string>',
            'Message' => '<string>',
            'OpportunityId' => '<string>',
            'ReasonCode' => 'InvitationAccessDenied|InvitationValidationFailed|EngagementAccessDenied|OpportunityAccessDenied|ResourceSnapshotJobAccessDenied|ResourceSnapshotJobValidationFailed|ResourceSnapshotJobConflict|EngagementValidationFailed|EngagementConflict|OpportunitySubmissionFailed|EngagementInvitationConflict|OpportunityValidationFailed|OpportunityConflict|ResourceSnapshotAccessDenied|ResourceSnapshotValidationFailed|ResourceSnapshotConflict|InternalError|ServiceQuotaExceeded|RequestThrottled',
            'ResourceSnapshotJobId' => '<string>',
            'StartTime' => <DateTime>,
            'TaskArn' => '<string>',
            'TaskId' => '<string>',
            'TaskStatus' => 'IN_PROGRESS|COMPLETE|FAILED',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

A token used for pagination to retrieve the next page of results. If there are more results available, this field will contain a token that can be used in a subsequent API call to retrieve the next page. If there are no more results, this field will be null or an empty string.

TaskSummaries
Type: Array of ListEngagementFromOpportunityTaskSummary structures

TaskSummaries An array of TaskSummary objects containing details about each task.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListEngagementInvitations

$result = $client->listEngagementInvitations([/* ... */]);
$promise = $client->listEngagementInvitationsAsync([/* ... */]);

Retrieves a list of engagement invitations sent to the partner. This allows partners to view all pending or past engagement invitations, helping them track opportunities shared by AWS.

Parameter Syntax

$result = $client->listEngagementInvitations([
    'Catalog' => '<string>', // REQUIRED
    'EngagementIdentifier' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'ParticipantType' => 'SENDER|RECEIVER', // REQUIRED
    'PayloadType' => ['<string>', ...],
    'SenderAwsAccountId' => ['<string>', ...],
    'Sort' => [
        'SortBy' => 'InvitationDate', // REQUIRED
        'SortOrder' => 'ASCENDING|DESCENDING', // REQUIRED
    ],
    'Status' => ['<string>', ...],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog from which to list the engagement invitations. Use AWS for production invitations or Sandbox for testing environments.

EngagementIdentifier
Type: Array of strings

Retrieves a list of engagement invitation summaries based on specified filters. The ListEngagementInvitations operation allows you to view all invitations that you have sent or received. You must specify the ParticipantType to filter invitations where you are either the SENDER or the RECEIVER. Invitations will automatically expire if not accepted within 15 days.

MaxResults
Type: int

Specifies the maximum number of engagement invitations to return in the response. If more results are available, a pagination token will be provided.

NextToken
Type: string

A pagination token used to retrieve additional pages of results when the response to a previous request was truncated. Pass this token to continue listing invitations from where the previous call left off.

ParticipantType
Required: Yes
Type: string

Specifies the type of participant for which to list engagement invitations. Identifies the role of the participant.

PayloadType
Type: Array of strings

Defines the type of payload associated with the engagement invitations to be listed. The attributes in this payload help decide on acceptance or rejection of the invitation.

SenderAwsAccountId
Type: Array of strings

List of sender AWS account IDs to filter the invitations.

Sort

Specifies the sorting options for listing engagement invitations. Invitations can be sorted by fields such as InvitationDate or Status to help partners view results in their preferred order.

Status
Type: Array of strings

Status values to filter the invitations.

Result Syntax

[
    'EngagementInvitationSummaries' => [
        [
            'Arn' => '<string>',
            'Catalog' => '<string>',
            'EngagementId' => '<string>',
            'EngagementTitle' => '<string>',
            'ExpirationDate' => <DateTime>,
            'Id' => '<string>',
            'InvitationDate' => <DateTime>,
            'ParticipantType' => 'SENDER|RECEIVER',
            'PayloadType' => 'OpportunityInvitation',
            'Receiver' => [
                'Account' => [
                    'Alias' => '<string>',
                    'AwsAccountId' => '<string>',
                ],
            ],
            'SenderAwsAccountId' => '<string>',
            'SenderCompanyName' => '<string>',
            'Status' => 'ACCEPTED|PENDING|REJECTED|EXPIRED',
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
EngagementInvitationSummaries
Type: Array of EngagementInvitationSummary structures

An array containing summaries of engagement invitations. Each summary includes information such as the invitation title, invitation date, and the current status of the invitation.

NextToken
Type: string

A pagination token returned when there are more results available than can be returned in a single call. Use this token to retrieve additional pages of engagement invitation summaries.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListEngagementMembers

$result = $client->listEngagementMembers([/* ... */]);
$promise = $client->listEngagementMembersAsync([/* ... */]);

Retrieves the details of member partners in an engagement. This operation can only be invoked by members of the engagement. The ListEngagementMembers operation allows you to fetch information about the members of a specific engagement. This action is restricted to members of the engagement being queried.

Parameter Syntax

$result = $client->listEngagementMembers([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

The catalog related to the request.

Identifier
Required: Yes
Type: string

Identifier of the engagement record to retrieve members from.

MaxResults
Type: int

The maximum number of results to return in a single call.

NextToken
Type: string

The token for the next set of results.

Result Syntax

[
    'EngagementMemberList' => [
        [
            'AccountId' => '<string>',
            'CompanyName' => '<string>',
            'WebsiteUrl' => '<string>',
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
EngagementMemberList
Required: Yes
Type: Array of EngagementMember structures

Provides a list of engagement members.

NextToken
Type: string

A pagination token used to retrieve the next set of results. If there are more results available than can be returned in a single response, this token will be present. Use this token in a subsequent request to retrieve the next page of results. If there are no more results, this value will be null.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListEngagementResourceAssociations

$result = $client->listEngagementResourceAssociations([/* ... */]);
$promise = $client->listEngagementResourceAssociationsAsync([/* ... */]);

Lists the associations between resources and engagements where the caller is a member and has at least one snapshot in the engagement.

Parameter Syntax

$result = $client->listEngagementResourceAssociations([
    'Catalog' => '<string>', // REQUIRED
    'CreatedBy' => '<string>',
    'EngagementIdentifier' => '<string>',
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'ResourceIdentifier' => '<string>',
    'ResourceType' => 'Opportunity',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which to search for engagement-resource associations.

CreatedBy
Type: string

Filters the results to include only associations with resources owned by the specified AWS account. Use this when you want to find associations related to resources owned by a particular account.

EngagementIdentifier
Type: string

Filters the results to include only associations related to the specified engagement. Use this when you want to find all resources associated with a specific engagement.

MaxResults
Type: int

Limits the number of results returned in a single call. Use this to control the number of results returned, especially useful for pagination.

NextToken
Type: string

A token used for pagination of results. Include this token in subsequent requests to retrieve the next set of results.

ResourceIdentifier
Type: string

Filters the results to include only associations with the specified resource. Varies depending on the resource type. Use this when you want to find all engagements associated with a specific resource.

ResourceType
Type: string

Filters the results to include only associations with resources of the specified type.

Result Syntax

[
    'EngagementResourceAssociationSummaries' => [
        [
            'Catalog' => '<string>',
            'CreatedBy' => '<string>',
            'EngagementId' => '<string>',
            'ResourceId' => '<string>',
            'ResourceType' => 'Opportunity',
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
EngagementResourceAssociationSummaries
Required: Yes
Type: Array of EngagementResourceAssociationSummary structures

A list of engagement-resource association summaries.

NextToken
Type: string

A token to retrieve the next set of results. Use this token in a subsequent request to retrieve additional results if the response was truncated.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListEngagements

$result = $client->listEngagements([/* ... */]);
$promise = $client->listEngagementsAsync([/* ... */]);

This action allows users to retrieve a list of engagement records from Partner Central. This action can be used to manage and track various engagements across different stages of the partner selling process.

Parameter Syntax

$result = $client->listEngagements([
    'Catalog' => '<string>', // REQUIRED
    'CreatedBy' => ['<string>', ...],
    'EngagementIdentifier' => ['<string>', ...],
    'ExcludeCreatedBy' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Sort' => [
        'SortBy' => 'CreatedDate', // REQUIRED
        'SortOrder' => 'ASCENDING|DESCENDING', // REQUIRED
    ],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request.

CreatedBy
Type: Array of strings

A list of AWS account IDs. When specified, the response includes engagements created by these accounts. This filter is useful for finding engagements created by specific team members.

EngagementIdentifier
Type: Array of strings

An array of strings representing engagement identifiers to retrieve.

ExcludeCreatedBy
Type: Array of strings

An array of strings representing AWS Account IDs. Use this to exclude engagements created by specific users.

MaxResults
Type: int

The maximum number of results to return in a single call.

NextToken
Type: string

The token for the next set of results. This value is returned from a previous call.

Sort
Type: EngagementSort structure

An object that specifies the sort order of the results.

Result Syntax

[
    'EngagementSummaryList' => [
        [
            'Arn' => '<string>',
            'CreatedAt' => <DateTime>,
            'CreatedBy' => '<string>',
            'Id' => '<string>',
            'MemberCount' => <integer>,
            'Title' => '<string>',
        ],
        // ...
    ],
    'NextToken' => '<string>',
]

Result Details

Members
EngagementSummaryList
Required: Yes
Type: Array of EngagementSummary structures

An array of engagement summary objects.

NextToken
Type: string

The token to retrieve the next set of results. This field will be null if there are no more results.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListOpportunities

$result = $client->listOpportunities([/* ... */]);
$promise = $client->listOpportunitiesAsync([/* ... */]);

This request accepts a list of filters that retrieve opportunity subsets as well as sort options. This feature is available to partners from Partner Central using the ListOpportunities API action.

To synchronize your system with Amazon Web Services, only list the opportunities that were newly created or updated. We recommend you rely on events emitted by the service into your Amazon Web Services account’s Amazon EventBridge default event bus, you can also use the ListOpportunities action.

We recommend the following approach:

  1. Find the latest LastModifiedDate that you stored, and only use the values that came from Amazon Web Services. Don’t use values generated by your system.

  2. When you send a ListOpportunities request, submit the date in ISO 8601 format in the AfterLastModifiedDate filter.

  3. Amazon Web Services only returns opportunities created or updated on or after that date and time. Use NextToken to iterate over all pages.

Parameter Syntax

$result = $client->listOpportunities([
    'Catalog' => '<string>', // REQUIRED
    'CustomerCompanyName' => ['<string>', ...],
    'Identifier' => ['<string>', ...],
    'LastModifiedDate' => [
        'AfterLastModifiedDate' => <integer || string || DateTime>,
        'BeforeLastModifiedDate' => <integer || string || DateTime>,
    ],
    'LifeCycleReviewStatus' => ['<string>', ...],
    'LifeCycleStage' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Sort' => [
        'SortBy' => 'LastModifiedDate|Identifier|CustomerCompanyName', // REQUIRED
        'SortOrder' => 'ASCENDING|DESCENDING', // REQUIRED
    ],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunities are listed in. Use AWS for listing real opportunities in the Amazon Web Services catalog, and Sandbox for testing in secure, isolated environments.

CustomerCompanyName
Type: Array of strings

Filters the opportunities based on the customer's company name. This allows partners to search for opportunities associated with a specific customer by matching the provided company name string.

Identifier
Type: Array of strings

Filters the opportunities based on the opportunity identifier. This allows partners to retrieve specific opportunities by providing their unique identifiers, ensuring precise results.

LastModifiedDate
Type: LastModifiedDate structure

Filters the opportunities based on their last modified date. This filter helps retrieve opportunities that were updated after the specified date, allowing partners to track recent changes or updates.

LifeCycleReviewStatus
Type: Array of strings

Filters the opportunities based on their current lifecycle approval status. Use this filter to retrieve opportunities with statuses such as Pending Submission, In Review, Action Required, or Approved.

LifeCycleStage
Type: Array of strings

Filters the opportunities based on their lifecycle stage. This filter allows partners to retrieve opportunities at various stages in the sales cycle, such as Qualified, Technical Validation, Business Validation, or Closed Won.

MaxResults
Type: int

Specifies the maximum number of results to return in a single call. This limits the number of opportunities returned in the response to avoid providing too many results at once.

Default: 20

NextToken
Type: string

A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.

Sort
Type: OpportunitySort structure

An object that specifies how the response is sorted. The default Sort.SortBy value is LastModifiedDate.

Result Syntax

[
    'NextToken' => '<string>',
    'OpportunitySummaries' => [
        [
            'Arn' => '<string>',
            'Catalog' => '<string>',
            'CreatedDate' => <DateTime>,
            'Customer' => [
                'Account' => [
                    'Address' => [
                        'City' => '<string>',
                        'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                        'PostalCode' => '<string>',
                        'StateOrRegion' => '<string>',
                    ],
                    'CompanyName' => '<string>',
                    'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
                    'OtherIndustry' => '<string>',
                    'WebsiteUrl' => '<string>',
                ],
            ],
            'Id' => '<string>',
            'LastModifiedDate' => <DateTime>,
            'LifeCycle' => [
                'ClosedLostReason' => 'Customer Deficiency|Delay / Cancellation of Project|Legal / Tax / Regulatory|Lost to Competitor - Google|Lost to Competitor - Microsoft|Lost to Competitor - SoftLayer|Lost to Competitor - VMWare|Lost to Competitor - Other|No Opportunity|On Premises Deployment|Partner Gap|Price|Security / Compliance|Technical Limitations|Customer Experience|Other|People/Relationship/Governance|Product/Technology|Financial/Commercial',
                'NextSteps' => '<string>',
                'ReviewComments' => '<string>',
                'ReviewStatus' => 'Pending Submission|Submitted|In review|Approved|Rejected|Action Required',
                'ReviewStatusReason' => '<string>',
                'Stage' => 'Prospect|Qualified|Technical Validation|Business Validation|Committed|Launched|Closed Lost',
                'TargetCloseDate' => '<string>',
            ],
            'OpportunityType' => 'Net New Business|Flat Renewal|Expansion',
            'PartnerOpportunityIdentifier' => '<string>',
            'Project' => [
                'DeliveryModels' => ['<string>', ...],
                'ExpectedCustomerSpend' => [
                    [
                        'Amount' => '<string>',
                        'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL',
                        'EstimationUrl' => '<string>',
                        'Frequency' => 'Monthly',
                        'TargetCompany' => '<string>',
                    ],
                    // ...
                ],
            ],
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.

OpportunitySummaries
Required: Yes
Type: Array of OpportunitySummary structures

An array that contains minimal details for opportunities that match the request criteria. This summary view provides a quick overview of relevant opportunities.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListResourceSnapshotJobs

$result = $client->listResourceSnapshotJobs([/* ... */]);
$promise = $client->listResourceSnapshotJobsAsync([/* ... */]);

Lists resource snapshot jobs owned by the customer. This operation supports various filtering scenarios, including listing all jobs owned by the caller, jobs for a specific engagement, jobs with a specific status, or any combination of these filters.

Parameter Syntax

$result = $client->listResourceSnapshotJobs([
    'Catalog' => '<string>', // REQUIRED
    'EngagementIdentifier' => '<string>',
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Sort' => [
        'SortBy' => 'CreatedDate',
        'SortOrder' => 'ASCENDING|DESCENDING',
    ],
    'Status' => 'Running|Stopped',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request.

EngagementIdentifier
Type: string

The identifier of the engagement to filter the response.

MaxResults
Type: int

The maximum number of results to return in a single call. If omitted, defaults to 50.

NextToken
Type: string

The token for the next set of results.

Sort
Type: SortObject structure

Configures the sorting of the response. If omitted, results are sorted by CreatedDate in descending order.

Status
Type: string

The status of the jobs to filter the response.

Result Syntax

[
    'NextToken' => '<string>',
    'ResourceSnapshotJobSummaries' => [
        [
            'Arn' => '<string>',
            'EngagementId' => '<string>',
            'Id' => '<string>',
            'Status' => 'Running|Stopped',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to retrieve the next set of results. If there are no additional results, this value is null.

ResourceSnapshotJobSummaries
Required: Yes
Type: Array of ResourceSnapshotJobSummary structures

An array of resource snapshot job summary objects.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ListResourceSnapshots

$result = $client->listResourceSnapshots([/* ... */]);
$promise = $client->listResourceSnapshotsAsync([/* ... */]);

Retrieves a list of resource view snapshots based on specified criteria.

Parameter Syntax

$result = $client->listResourceSnapshots([
    'Catalog' => '<string>', // REQUIRED
    'CreatedBy' => '<string>',
    'EngagementIdentifier' => '<string>', // REQUIRED
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'ResourceIdentifier' => '<string>',
    'ResourceSnapshotTemplateIdentifier' => '<string>',
    'ResourceType' => 'Opportunity',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request.

CreatedBy
Type: string

Filters the response to include only snapshots of resources created by the specified AWS account.

EngagementIdentifier
Required: Yes
Type: string

The unique identifier of the engagement associated with the snapshots.

MaxResults
Type: int

The maximum number of results to return in a single call.

NextToken
Type: string

The token for the next set of results.

ResourceIdentifier
Type: string

Filters the response to include only snapshots of the specified resource.

ResourceSnapshotTemplateIdentifier
Type: string

Filters the response to include only snapshots created using the specified template.

ResourceType
Type: string

Filters the response to include only snapshots of the specified resource type.

Result Syntax

[
    'NextToken' => '<string>',
    'ResourceSnapshotSummaries' => [
        [
            'Arn' => '<string>',
            'CreatedBy' => '<string>',
            'ResourceId' => '<string>',
            'ResourceSnapshotTemplateName' => '<string>',
            'ResourceType' => 'Opportunity',
            'Revision' => <integer>,
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

The token to retrieve the next set of results. If there are no additional results, this value is null.

ResourceSnapshotSummaries
Required: Yes
Type: Array of ResourceSnapshotSummary structures

An array of resource snapshot summary objects.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

ListSolutions

$result = $client->listSolutions([/* ... */]);
$promise = $client->listSolutionsAsync([/* ... */]);

Retrieves a list of Partner Solutions that the partner registered on Partner Central. This API is used to generate a list of solutions that an end user selects from for association with an opportunity.

Parameter Syntax

$result = $client->listSolutions([
    'Catalog' => '<string>', // REQUIRED
    'Category' => ['<string>', ...],
    'Identifier' => ['<string>', ...],
    'MaxResults' => <integer>,
    'NextToken' => '<string>',
    'Sort' => [
        'SortBy' => 'Identifier|Name|Status|Category|CreatedDate', // REQUIRED
        'SortOrder' => 'ASCENDING|DESCENDING', // REQUIRED
    ],
    'Status' => ['<string>', ...],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the solutions are listed in. Use AWS to list solutions in the Amazon Web Services catalog, and Sandbox to list solutions in a secure and isolated testing environment.

Category
Type: Array of strings

Filters the solutions based on the category to which they belong. This allows partners to search for solutions within specific categories, such as Software, Consulting, or Managed Services.

Identifier
Type: Array of strings

Filters the solutions based on their unique identifier. Use this filter to retrieve specific solutions by providing the solution's identifier for accurate results.

MaxResults
Type: int

The maximum number of results returned by a single call. This value must be provided in the next call to retrieve the next set of results.

Default: 20

NextToken
Type: string

A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.

Sort
Type: SolutionSort structure

Object that configures sorting done on the response. Default Sort.SortBy is Identifier.

Status
Type: Array of strings

Filters solutions based on their status. This filter helps partners manage their solution portfolios effectively.

Result Syntax

[
    'NextToken' => '<string>',
    'SolutionSummaries' => [
        [
            'Arn' => '<string>',
            'Catalog' => '<string>',
            'Category' => '<string>',
            'CreatedDate' => <DateTime>,
            'Id' => '<string>',
            'Name' => '<string>',
            'Status' => 'Active|Inactive|Draft',
        ],
        // ...
    ],
]

Result Details

Members
NextToken
Type: string

A pagination token used to retrieve the next set of results in subsequent calls. This token is included in the response only if there are additional result pages available.

SolutionSummaries
Required: Yes
Type: Array of SolutionBase structures

An array with minimal details for solutions matching the request criteria.

Errors

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

PutSellingSystemSettings

$result = $client->putSellingSystemSettings([/* ... */]);
$promise = $client->putSellingSystemSettingsAsync([/* ... */]);

Updates the currently set system settings, which include the IAM Role used for resource snapshot jobs.

Parameter Syntax

$result = $client->putSellingSystemSettings([
    'Catalog' => '<string>', // REQUIRED
    'ResourceSnapshotJobRoleIdentifier' => '<string>',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which the settings will be updated. Acceptable values include AWS for production and Sandbox for testing environments.

ResourceSnapshotJobRoleIdentifier
Type: string

Specifies the ARN of the IAM Role used for resource snapshot job executions.

Result Syntax

[
    'Catalog' => '<string>',
    'ResourceSnapshotJobRoleArn' => '<string>',
]

Result Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog in which the settings are defined. Acceptable values include AWS for production and Sandbox for testing environments.

ResourceSnapshotJobRoleArn
Type: string

Specifies the ARN of the IAM Role used for resource snapshot job executions.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

RejectEngagementInvitation

$result = $client->rejectEngagementInvitation([/* ... */]);
$promise = $client->rejectEngagementInvitationAsync([/* ... */]);

This action rejects an EngagementInvitation that AWS shared. Rejecting an invitation indicates that the partner doesn't want to pursue the opportunity, and all related data will become inaccessible thereafter.

Parameter Syntax

$result = $client->rejectEngagementInvitation([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
    'RejectionReason' => '<string>',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

This is the catalog that's associated with the engagement invitation. Acceptable values are AWS or Sandbox, and these values determine the environment in which the opportunity is managed.

Identifier
Required: Yes
Type: string

This is the unique identifier of the rejected EngagementInvitation. Providing the correct identifier helps to ensure that the intended invitation is rejected.

RejectionReason
Type: string

This describes the reason for rejecting the engagement invitation, which helps AWS track usage patterns. Acceptable values include the following:

  • Customer problem unclear: The customer's problem isn't understood.

  • Next steps unclear: The next steps required to proceed aren't understood.

  • Unable to support: The partner is unable to provide support due to resource or capability constraints.

  • Duplicate of partner referral: The opportunity is a duplicate of an existing referral.

  • Other: Any reason not covered by other values.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

StartEngagementByAcceptingInvitationTask

$result = $client->startEngagementByAcceptingInvitationTask([/* ... */]);
$promise = $client->startEngagementByAcceptingInvitationTaskAsync([/* ... */]);

This action starts the engagement by accepting an EngagementInvitation. The task is asynchronous and involves the following steps: accepting the invitation, creating an opportunity in the partner’s account from the AWS opportunity, and copying details for tracking. When completed, an Opportunity Created event is generated, indicating that the opportunity has been successfully created in the partner's account.

Parameter Syntax

$result = $client->startEngagementByAcceptingInvitationTask([
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the task. Use AWS for production engagements and Sandbox for testing scenarios.

ClientToken
Required: Yes
Type: string

A unique, case-sensitive identifier provided by the client that helps to ensure the idempotency of the request. This can be a random or meaningful string but must be unique for each request.

Identifier
Required: Yes
Type: string

Specifies the unique identifier of the EngagementInvitation to be accepted. Providing the correct identifier helps ensure that the correct engagement is processed.

Result Syntax

[
    'EngagementInvitationId' => '<string>',
    'Message' => '<string>',
    'OpportunityId' => '<string>',
    'ReasonCode' => 'InvitationAccessDenied|InvitationValidationFailed|EngagementAccessDenied|OpportunityAccessDenied|ResourceSnapshotJobAccessDenied|ResourceSnapshotJobValidationFailed|ResourceSnapshotJobConflict|EngagementValidationFailed|EngagementConflict|OpportunitySubmissionFailed|EngagementInvitationConflict|OpportunityValidationFailed|OpportunityConflict|ResourceSnapshotAccessDenied|ResourceSnapshotValidationFailed|ResourceSnapshotConflict|InternalError|ServiceQuotaExceeded|RequestThrottled',
    'ResourceSnapshotJobId' => '<string>',
    'StartTime' => <DateTime>,
    'TaskArn' => '<string>',
    'TaskId' => '<string>',
    'TaskStatus' => 'IN_PROGRESS|COMPLETE|FAILED',
]

Result Details

Members
EngagementInvitationId
Type: string

Returns the identifier of the engagement invitation that was accepted and used to create the opportunity.

Message
Type: string

If the task fails, this field contains a detailed message describing the failure and possible recovery steps.

OpportunityId
Type: string

Returns the original opportunity identifier passed in the request. This is the unique identifier for the opportunity.

ReasonCode
Type: string

Indicates the reason for task failure using an enumerated code.

ResourceSnapshotJobId
Type: string

The identifier of the resource snapshot job created as part of this task.

StartTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp indicating when the task was initiated. The format follows RFC 3339 section 5.6.

TaskArn
Type: string

The Amazon Resource Name (ARN) of the task, used for tracking and managing the task within AWS.

TaskId
Type: string

The unique identifier of the task, used to track the task’s progress.

TaskStatus
Type: string

Indicates the current status of the task.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ServiceQuotaExceededException:

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

StartEngagementFromOpportunityTask

$result = $client->startEngagementFromOpportunityTask([/* ... */]);
$promise = $client->startEngagementFromOpportunityTaskAsync([/* ... */]);

This action initiates the engagement process from an existing opportunity by accepting the engagement invitation and creating a corresponding opportunity in the partner’s system. Similar to StartEngagementByAcceptingInvitationTask, this action is asynchronous and performs multiple steps before completion.

Parameter Syntax

$result = $client->startEngagementFromOpportunityTask([
    'AwsSubmission' => [ // REQUIRED
        'InvolvementType' => 'For Visibility Only|Co-Sell', // REQUIRED
        'Visibility' => 'Full|Limited',
    ],
    'Catalog' => '<string>', // REQUIRED
    'ClientToken' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
AwsSubmission
Required: Yes
Type: AwsSubmission structure

Indicates the level of AWS involvement in the opportunity. This field helps track AWS participation throughout the engagement, such as providing technical support, deal assistance, and sales support.

Catalog
Required: Yes
Type: string

Specifies the catalog in which the engagement is tracked. Acceptable values include AWS for production and Sandbox for testing environments.

ClientToken
Required: Yes
Type: string

A unique token provided by the client to help ensure the idempotency of the request. It helps prevent the same task from being performed multiple times.

Identifier
Required: Yes
Type: string

The unique identifier of the opportunity from which the engagement task is to be initiated. This helps ensure that the task is applied to the correct opportunity.

Result Syntax

[
    'EngagementId' => '<string>',
    'EngagementInvitationId' => '<string>',
    'Message' => '<string>',
    'OpportunityId' => '<string>',
    'ReasonCode' => 'InvitationAccessDenied|InvitationValidationFailed|EngagementAccessDenied|OpportunityAccessDenied|ResourceSnapshotJobAccessDenied|ResourceSnapshotJobValidationFailed|ResourceSnapshotJobConflict|EngagementValidationFailed|EngagementConflict|OpportunitySubmissionFailed|EngagementInvitationConflict|OpportunityValidationFailed|OpportunityConflict|ResourceSnapshotAccessDenied|ResourceSnapshotValidationFailed|ResourceSnapshotConflict|InternalError|ServiceQuotaExceeded|RequestThrottled',
    'ResourceSnapshotJobId' => '<string>',
    'StartTime' => <DateTime>,
    'TaskArn' => '<string>',
    'TaskId' => '<string>',
    'TaskStatus' => 'IN_PROGRESS|COMPLETE|FAILED',
]

Result Details

Members
EngagementId
Type: string

The identifier of the newly created engagement. Only populated if TaskStatus is COMPLETE.

EngagementInvitationId
Type: string

The identifier of the new engagement invitation. Only populated if TaskStatus is COMPLETE.

Message
Type: string

If the task fails, this field contains a detailed message describing the failure and possible recovery steps.

OpportunityId
Type: string

Returns the original opportunity identifier passed in the request, which is the unique identifier for the opportunity created in the partner’s system.

ReasonCode
Type: string

Indicates the reason for task failure using an enumerated code.

ResourceSnapshotJobId
Type: string

The identifier of the resource snapshot job created to add the opportunity resource snapshot to the Engagement. Only populated if TaskStatus is COMPLETE.

StartTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp indicating when the task was initiated. The format follows RFC 3339 section 5.6.

TaskArn
Type: string

The Amazon Resource Name (ARN) of the task, used for tracking and managing the task within AWS.

TaskId
Type: string

The unique identifier of the task, used to track the task’s progress. This value follows a specific pattern: ^oit-[0-9a-z]{13}$.

TaskStatus
Type: string

Indicates the current status of the task. Valid values include IN_PROGRESS, COMPLETE, and FAILED.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ServiceQuotaExceededException:

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

StartResourceSnapshotJob

$result = $client->startResourceSnapshotJob([/* ... */]);
$promise = $client->startResourceSnapshotJobAsync([/* ... */]);

Starts a resource snapshot job that has been previously created.

Parameter Syntax

$result = $client->startResourceSnapshotJob([
    'Catalog' => '<string>', // REQUIRED
    'ResourceSnapshotJobIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request.

ResourceSnapshotJobIdentifier
Required: Yes
Type: string

The identifier of the resource snapshot job to start.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

StopResourceSnapshotJob

$result = $client->stopResourceSnapshotJob([/* ... */]);
$promise = $client->stopResourceSnapshotJobAsync([/* ... */]);

Stops a resource snapshot job. The job must be started prior to being stopped.

Parameter Syntax

$result = $client->stopResourceSnapshotJob([
    'Catalog' => '<string>', // REQUIRED
    'ResourceSnapshotJobIdentifier' => '<string>', // REQUIRED
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request.

ResourceSnapshotJobIdentifier
Required: Yes
Type: string

The identifier of the job to stop.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

SubmitOpportunity

$result = $client->submitOpportunity([/* ... */]);
$promise = $client->submitOpportunityAsync([/* ... */]);

Use this action to submit an opportunity that was previously created by partner for AWS review. After you perform this action, the opportunity becomes non-editable until it is reviewed by AWS and has LifeCycle.ReviewStatus as either Approved or Action Required.

Parameter Syntax

$result = $client->submitOpportunity([
    'Catalog' => '<string>', // REQUIRED
    'Identifier' => '<string>', // REQUIRED
    'InvolvementType' => 'For Visibility Only|Co-Sell', // REQUIRED
    'Visibility' => 'Full|Limited',
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog related to the request.

Identifier
Required: Yes
Type: string

The identifier of the opportunity previously created by partner and needs to be submitted.

InvolvementType
Required: Yes
Type: string

Specifies the level of AWS sellers' involvement on the opportunity.

Visibility
Type: string

Determines whether to restrict visibility of the opportunity from AWS sales. Default value is Full.

Result Syntax

[]

Result Details

The results for this operation are always empty.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

UpdateOpportunity

$result = $client->updateOpportunity([/* ... */]);
$promise = $client->updateOpportunityAsync([/* ... */]);

Updates the Opportunity record identified by a given Identifier. This operation allows you to modify the details of an existing opportunity to reflect the latest information and progress. Use this action to keep the opportunity record up-to-date and accurate.

When you perform updates, include the entire payload with each request. If any field is omitted, the API assumes that the field is set to null. The best practice is to always perform a GetOpportunity to retrieve the latest values, then send the complete payload with the updated values to be changed.

Parameter Syntax

$result = $client->updateOpportunity([
    'Catalog' => '<string>', // REQUIRED
    'Customer' => [
        'Account' => [
            'Address' => [
                'City' => '<string>',
                'CountryCode' => 'US|AF|AX|AL|DZ|AS|AD|AO|AI|AQ|AG|AR|AM|AW|AU|AT|AZ|BS|BH|BD|BB|BY|BE|BZ|BJ|BM|BT|BO|BQ|BA|BW|BV|BR|IO|BN|BG|BF|BI|KH|CM|CA|CV|KY|CF|TD|CL|CN|CX|CC|CO|KM|CG|CK|CR|CI|HR|CU|CW|CY|CZ|CD|DK|DJ|DM|DO|EC|EG|SV|GQ|ER|EE|ET|FK|FO|FJ|FI|FR|GF|PF|TF|GA|GM|GE|DE|GH|GI|GR|GL|GD|GP|GU|GT|GG|GN|GW|GY|HT|HM|VA|HN|HK|HU|IS|IN|ID|IR|IQ|IE|IM|IL|IT|JM|JP|JE|JO|KZ|KE|KI|KR|KW|KG|LA|LV|LB|LS|LR|LY|LI|LT|LU|MO|MK|MG|MW|MY|MV|ML|MT|MH|MQ|MR|MU|YT|MX|FM|MD|MC|MN|ME|MS|MA|MZ|MM|NA|NR|NP|NL|AN|NC|NZ|NI|NE|NG|NU|NF|MP|NO|OM|PK|PW|PS|PA|PG|PY|PE|PH|PN|PL|PT|PR|QA|RE|RO|RU|RW|BL|SH|KN|LC|MF|PM|VC|WS|SM|ST|SA|SN|RS|SC|SL|SG|SX|SK|SI|SB|SO|ZA|GS|SS|ES|LK|SD|SR|SJ|SZ|SE|CH|SY|TW|TJ|TZ|TH|TL|TG|TK|TO|TT|TN|TR|TM|TC|TV|UG|UA|AE|GB|UM|UY|UZ|VU|VE|VN|VG|VI|WF|EH|YE|ZM|ZW',
                'PostalCode' => '<string>',
                'StateOrRegion' => '<string>',
                'StreetAddress' => '<string>',
            ],
            'AwsAccountId' => '<string>',
            'CompanyName' => '<string>', // REQUIRED
            'Duns' => '<string>',
            'Industry' => 'Aerospace|Agriculture|Automotive|Computers and Electronics|Consumer Goods|Education|Energy - Oil and Gas|Energy - Power and Utilities|Financial Services|Gaming|Government|Healthcare|Hospitality|Life Sciences|Manufacturing|Marketing and Advertising|Media and Entertainment|Mining|Non-Profit Organization|Professional Services|Real Estate and Construction|Retail|Software and Internet|Telecommunications|Transportation and Logistics|Travel|Wholesale and Distribution|Other',
            'OtherIndustry' => '<string>',
            'WebsiteUrl' => '<string>',
        ],
        'Contacts' => [
            [
                'BusinessTitle' => '<string>',
                'Email' => '<string>',
                'FirstName' => '<string>',
                'LastName' => '<string>',
                'Phone' => '<string>',
            ],
            // ...
        ],
    ],
    'Identifier' => '<string>', // REQUIRED
    'LastModifiedDate' => <integer || string || DateTime>, // REQUIRED
    'LifeCycle' => [
        'ClosedLostReason' => 'Customer Deficiency|Delay / Cancellation of Project|Legal / Tax / Regulatory|Lost to Competitor - Google|Lost to Competitor - Microsoft|Lost to Competitor - SoftLayer|Lost to Competitor - VMWare|Lost to Competitor - Other|No Opportunity|On Premises Deployment|Partner Gap|Price|Security / Compliance|Technical Limitations|Customer Experience|Other|People/Relationship/Governance|Product/Technology|Financial/Commercial',
        'NextSteps' => '<string>',
        'NextStepsHistory' => [
            [
                'Time' => <integer || string || DateTime>, // REQUIRED
                'Value' => '<string>', // REQUIRED
            ],
            // ...
        ],
        'ReviewComments' => '<string>',
        'ReviewStatus' => 'Pending Submission|Submitted|In review|Approved|Rejected|Action Required',
        'ReviewStatusReason' => '<string>',
        'Stage' => 'Prospect|Qualified|Technical Validation|Business Validation|Committed|Launched|Closed Lost',
        'TargetCloseDate' => '<string>',
    ],
    'Marketing' => [
        'AwsFundingUsed' => 'Yes|No',
        'CampaignName' => '<string>',
        'Channels' => ['<string>', ...],
        'Source' => 'Marketing Activity|None',
        'UseCases' => ['<string>', ...],
    ],
    'NationalSecurity' => 'Yes|No',
    'OpportunityType' => 'Net New Business|Flat Renewal|Expansion',
    'PartnerOpportunityIdentifier' => '<string>',
    'PrimaryNeedsFromAws' => ['<string>', ...],
    'Project' => [
        'AdditionalComments' => '<string>',
        'ApnPrograms' => ['<string>', ...],
        'CompetitorName' => 'Oracle Cloud|On-Prem|Co-location|Akamai|AliCloud|Google Cloud Platform|IBM Softlayer|Microsoft Azure|Other- Cost Optimization|No Competition|*Other',
        'CustomerBusinessProblem' => '<string>',
        'CustomerUseCase' => '<string>',
        'DeliveryModels' => ['<string>', ...],
        'ExpectedCustomerSpend' => [
            [
                'Amount' => '<string>', // REQUIRED
                'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL', // REQUIRED
                'EstimationUrl' => '<string>',
                'Frequency' => 'Monthly', // REQUIRED
                'TargetCompany' => '<string>', // REQUIRED
            ],
            // ...
        ],
        'OtherCompetitorNames' => '<string>',
        'OtherSolutionDescription' => '<string>',
        'RelatedOpportunityIdentifier' => '<string>',
        'SalesActivities' => ['<string>', ...],
        'Title' => '<string>',
    ],
    'SoftwareRevenue' => [
        'DeliveryModel' => 'Contract|Pay-as-you-go|Subscription',
        'EffectiveDate' => '<string>',
        'ExpirationDate' => '<string>',
        'Value' => [
            'Amount' => '<string>', // REQUIRED
            'CurrencyCode' => 'USD|EUR|GBP|AUD|CAD|CNY|NZD|INR|JPY|CHF|SEK|AED|AFN|ALL|AMD|ANG|AOA|ARS|AWG|AZN|BAM|BBD|BDT|BGN|BHD|BIF|BMD|BND|BOB|BOV|BRL|BSD|BTN|BWP|BYN|BZD|CDF|CHE|CHW|CLF|CLP|COP|COU|CRC|CUC|CUP|CVE|CZK|DJF|DKK|DOP|DZD|EGP|ERN|ETB|FJD|FKP|GEL|GHS|GIP|GMD|GNF|GTQ|GYD|HKD|HNL|HRK|HTG|HUF|IDR|ILS|IQD|IRR|ISK|JMD|JOD|KES|KGS|KHR|KMF|KPW|KRW|KWD|KYD|KZT|LAK|LBP|LKR|LRD|LSL|LYD|MAD|MDL|MGA|MKD|MMK|MNT|MOP|MRU|MUR|MVR|MWK|MXN|MXV|MYR|MZN|NAD|NGN|NIO|NOK|NPR|OMR|PAB|PEN|PGK|PHP|PKR|PLN|PYG|QAR|RON|RSD|RUB|RWF|SAR|SBD|SCR|SDG|SGD|SHP|SLL|SOS|SRD|SSP|STN|SVC|SYP|SZL|THB|TJS|TMT|TND|TOP|TRY|TTD|TWD|TZS|UAH|UGX|USN|UYI|UYU|UZS|VEF|VND|VUV|WST|XAF|XCD|XDR|XOF|XPF|XSU|XUA|YER|ZAR|ZMW|ZWL', // REQUIRED
        ],
    ],
]);

Parameter Details

Members
Catalog
Required: Yes
Type: string

Specifies the catalog associated with the request. This field takes a string value from a predefined list: AWS or Sandbox. The catalog determines which environment the opportunity is updated in. Use AWS to update real opportunities in the production environment, and Sandbox for testing in secure, isolated environments. When you use the Sandbox catalog, it allows you to simulate and validate your interactions with Amazon Web Services services without affecting live data or operations.

Customer
Type: Customer structure

Specifies details of the customer associated with the Opportunity.

Identifier
Required: Yes
Type: string

Read-only, system generated Opportunity unique identifier.

LastModifiedDate
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the opportunity was last modified.

LifeCycle
Type: LifeCycle structure

An object that contains lifecycle details for the Opportunity.

Marketing
Type: Marketing structure

An object that contains marketing details for the Opportunity.

NationalSecurity
Type: string

Specifies if the opportunity is associated with national security concerns. This flag is only applicable when the industry is Government. For national-security-related opportunities, validation and compliance rules may apply, impacting the opportunity's visibility and processing.

OpportunityType
Type: string

Specifies the opportunity type as a renewal, new, or expansion.

Opportunity types:

  • New opportunity: Represents a new business opportunity with a potential customer that's not previously engaged with your solutions or services.

  • Renewal opportunity: Represents an opportunity to renew an existing contract or subscription with a current customer, ensuring continuity of service.

  • Expansion opportunity: Represents an opportunity to expand the scope of an existing contract or subscription, either by adding new services or increasing the volume of existing services for a current customer.

PartnerOpportunityIdentifier
Type: string

Specifies the opportunity's unique identifier in the partner's CRM system. This value is essential to track and reconcile because it's included in the outbound payload sent back to the partner.

PrimaryNeedsFromAws
Type: Array of strings

Identifies the type of support the partner needs from Amazon Web Services.

Valid values:

  • Cosell—Architectural Validation: Confirmation from Amazon Web Services that the partner's proposed solution architecture is aligned with Amazon Web Services best practices and poses minimal architectural risks.

  • Cosell—Business Presentation: Request Amazon Web Services seller's participation in a joint customer presentation.

  • Cosell—Competitive Information: Access to Amazon Web Services competitive resources and support for the partner's proposed solution.

  • Cosell—Pricing Assistance: Connect with an AWS seller for support situations where a partner may be receiving an upfront discount on a service (for example: EDP deals).

  • Cosell—Technical Consultation: Connection with an Amazon Web Services Solutions Architect to address the partner's questions about the proposed solution.

  • Cosell—Total Cost of Ownership Evaluation: Assistance with quoting different cost savings of proposed solutions on Amazon Web Services versus on-premises or a traditional hosting environment.

  • Cosell—Deal Support: Request Amazon Web Services seller's support to progress the opportunity (for example: joint customer call, strategic positioning).

  • Cosell—Support for Public Tender/RFx: Opportunity related to the public sector where the partner needs RFx support from Amazon Web Services.

  • Do Not Need Support from AWS Sales Rep: Indicates that a partner doesn't need support from an Amazon Web Services Sales representative. The opportunity is managed solely by the partner. It's possible to request coselling support on these opportunities at any stage during their lifecycle. Also known as, for-visibility-only (FVO) opportunity.

Project
Type: Project structure

An object that contains project details summary for the Opportunity.

SoftwareRevenue
Type: SoftwareRevenue structure

Specifies details of a customer's procurement terms. Required only for partners in eligible programs.

Result Syntax

[
    'Id' => '<string>',
    'LastModifiedDate' => <DateTime>,
]

Result Details

Members
Id
Required: Yes
Type: string

Read-only, system generated Opportunity unique identifier.

LastModifiedDate
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the opportunity was last modified.

Errors

ThrottlingException:

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

ConflictException:

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

AccessDeniedException:

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

InternalServerException:

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

ValidationException:

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

ResourceNotFoundException:

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

Shapes

AccessDeniedException

Description

This error occurs when you don't have permission to perform the requested action.

You don’t have access to this action or resource. Review IAM policies or contact your AWS administrator for assistance.

Members
Message
Type: string

Account

Description

Specifies the Customer's account details associated with the Opportunity.

Members
Address
Type: Address structure

Specifies the end Customer's address details associated with the Opportunity.

AwsAccountId
Type: string

Specifies the Customer Amazon Web Services account ID associated with the Opportunity.

CompanyName
Required: Yes
Type: string

Specifies the end Customer's company name associated with the Opportunity.

Duns
Type: string

Indicates the Customer DUNS number, if available.

Industry
Type: string

Specifies the industry the end Customer belongs to that's associated with the Opportunity. It refers to the category or sector where the customer's business operates. This is a required field.

OtherIndustry
Type: string

Specifies the end Customer's industry associated with the Opportunity, when the selected value in the Industry field is Other.

WebsiteUrl
Type: string

Specifies the end customer's company website URL associated with the Opportunity. This value is crucial to map the customer within the Amazon Web Services CRM system. This field is required in all cases except when the opportunity is related to national security.

AccountReceiver

Description

Contains the account details of the partner who received the Engagement Invitation, including the AWS account ID and company name.

Members
Alias
Type: string

Represents the alias of the partner account receiving the Engagement Invitation, making it easier to identify and track the recipient in reports or logs.

AwsAccountId
Required: Yes
Type: string

Indicates the AWS account ID of the partner who received the Engagement Invitation. This is a unique identifier for managing engagements with specific AWS accounts.

AccountSummary

Description

An object that contains an Account's subset of fields.

Members
Address
Type: AddressSummary structure

Specifies the end Customer's address details associated with the Opportunity.

CompanyName
Required: Yes
Type: string

Specifies the end Customer's company name associated with the Opportunity.

Industry
Type: string

Specifies which industry the end Customer belongs to associated with the Opportunity. It refers to the category or sector that the customer's business operates in.

To submit a value outside the picklist, use Other.

Conditionally mandatory if Other is selected for Industry Vertical in LOVs.

OtherIndustry
Type: string

Specifies the end Customer's industry associated with the Opportunity, when the selected value in the Industry field is Other. This field is relevant when the customer's industry doesn't fall under the predefined picklist values and requires a custom description.

WebsiteUrl
Type: string

Specifies the end customer's company website URL associated with the Opportunity. This value is crucial to map the customer within the Amazon Web Services CRM system.

Address

Description

Specifies the end Customer's address details associated with the Opportunity.

Members
City
Type: string

Specifies the end Customer's city associated with the Opportunity.

CountryCode
Type: string

Specifies the end Customer's country associated with the Opportunity.

PostalCode
Type: string

Specifies the end Customer's postal code associated with the Opportunity.

StateOrRegion
Type: string

Specifies the end Customer's state or region associated with the Opportunity.

Valid values: Alabama | Alaska | American Samoa | Arizona | Arkansas | California | Colorado | Connecticut | Delaware | Dist. of Columbia | Federated States of Micronesia | Florida | Georgia | Guam | Hawaii | Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky | Louisiana | Maine | Marshall Islands | Maryland | Massachusetts | Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska | Nevada | New Hampshire | New Jersey | New Mexico | New York | North Carolina | North Dakota | Northern Mariana Islands | Ohio | Oklahoma | Oregon | Palau | Pennsylvania | Puerto Rico | Rhode Island | South Carolina | South Dakota | Tennessee | Texas | Utah | Vermont | Virginia | Virgin Islands | Washington | West Virginia | Wisconsin | Wyoming | APO/AE | AFO/FPO | FPO, AP

StreetAddress
Type: string

Specifies the end Customer's street address associated with the Opportunity.

AddressSummary

Description

An object that contains an Address object's subset of fields.

Members
City
Type: string

Specifies the end Customer's city associated with the Opportunity.

CountryCode
Type: string

Specifies the end Customer's country associated with the Opportunity.

PostalCode
Type: string

Specifies the end Customer's postal code associated with the Opportunity.

StateOrRegion
Type: string

Specifies the end Customer's state or region associated with the Opportunity.

Valid values: Alabama | Alaska | American Samoa | Arizona | Arkansas | California | Colorado | Connecticut | Delaware | Dist. of Columbia | Federated States of Micronesia | Florida | Georgia | Guam | Hawaii | Idaho | Illinois | Indiana | Iowa | Kansas | Kentucky | Louisiana | Maine | Marshall Islands | Maryland | Massachusetts | Michigan | Minnesota | Mississippi | Missouri | Montana | Nebraska | Nevada | New Hampshire | New Jersey | New Mexico | New York | North Carolina | North Dakota | Northern Mariana Islands | Ohio | Oklahoma | Oregon | Palau | Pennsylvania | Puerto Rico | Rhode Island | South Carolina | South Dakota | Tennessee | Texas | Utah | Vermont | Virginia | Virgin Islands | Washington | West Virginia | Wisconsin | Wyoming | APO/AE | AFO/FPO | FPO, AP

AssigneeContact

Description

Represents the contact details of the individual assigned to manage the opportunity within the partner organization. This helps to ensure that there is a point of contact for the opportunity's progress.

Members
BusinessTitle
Required: Yes
Type: string

Specifies the business title of the assignee managing the opportunity. This helps clarify the individual's role and responsibilities within the organization. Use the value PartnerAccountManager to update details of the opportunity owner.

Email
Required: Yes
Type: string

Provides the email address of the assignee. This email is used for communications and notifications related to the opportunity.

FirstName
Required: Yes
Type: string

Specifies the first name of the assignee managing the opportunity. The system automatically retrieves this value from the user profile by referencing the associated email address.

LastName
Required: Yes
Type: string

Specifies the last name of the assignee managing the opportunity. The system automatically retrieves this value from the user profile by referencing the associated email address.

AwsOpportunityCustomer

Description

Represents the customer associated with the AWS opportunity. This field captures key details about the customer that are necessary for managing the opportunity.

Members
Contacts
Type: Array of Contact structures

Provides a list of customer contacts involved in the opportunity. These contacts may include decision makers, influencers, and other stakeholders within the customer's organization.

AwsOpportunityInsights

Description

Contains insights provided by AWS for the opportunity, offering recommendations and analysis that can help the partner optimize their engagement and strategy.

Members
EngagementScore
Type: string

Represents a score assigned by AWS to indicate the level of engagement and potential success for the opportunity. This score helps partners prioritize their efforts.

NextBestActions
Type: string

Provides recommendations from AWS on the next best actions to take in order to move the opportunity forward and increase the likelihood of success.

AwsOpportunityLifeCycle

Description

Tracks the lifecycle of the AWS opportunity, including stages such as qualification, validation, and closure. This field helps partners understand the current status and progression of the opportunity.

Members
ClosedLostReason
Type: string

Indicates the reason why an opportunity was marked as Closed Lost. This helps in understanding the context behind the lost opportunity and aids in refining future strategies.

NextSteps
Type: string

Specifies the immediate next steps required to progress the opportunity. These steps are based on AWS guidance and the current stage of the opportunity.

NextStepsHistory
Type: Array of ProfileNextStepsHistory structures

Provides a historical log of previous next steps that were taken to move the opportunity forward. This helps in tracking the decision-making process and identifying any delays or obstacles encountered.

Stage
Type: string

Represents the current stage of the opportunity in its lifecycle, such as Qualification, Validation, or Closed Won. This helps in understanding the opportunity's progress.

TargetCloseDate
Type: string

Indicates the expected date by which the opportunity is projected to close. This field helps in planning resources and timelines for both the partner and AWS.

AwsOpportunityProject

Description

Captures details about the project associated with the opportunity, including objectives, scope, and customer requirements.

Members
ExpectedCustomerSpend
Type: Array of ExpectedCustomerSpend structures

Indicates the expected spending by the customer over the course of the project. This value helps partners and AWS estimate the financial impact of the opportunity. Use the AWS Pricing Calculator to create an estimate of the customer’s total spend. If only annual recurring revenue (ARR) is available, distribute it across 12 months to provide an average monthly value.

AwsOpportunityRelatedEntities

Description

Represents other entities related to the AWS opportunity, such as AWS products, partner solutions, and marketplace offers. These associations help build a complete picture of the solution being sold.

Members
AwsProducts
Type: Array of strings

Specifies the AWS products associated with the opportunity. This field helps track the specific products that are part of the proposed solution.

Solutions
Type: Array of strings

Specifies the partner solutions related to the opportunity. These solutions represent the partner's offerings that are being positioned as part of the overall AWS opportunity.

AwsSubmission

Description

Indicates the level of AWS involvement in the opportunity. This field helps track AWS participation throughout the engagement, such as providing technical support, deal assistance, and sales support.

Members
InvolvementType
Required: Yes
Type: string

Specifies the type of AWS involvement in the opportunity, such as coselling, deal support, or technical consultation. This helps categorize the nature of AWS participation.

Visibility
Type: string

Determines who can view AWS involvement in the opportunity. Typically, this field is set to Full for most cases, but it may be restricted based on special program requirements or confidentiality needs.

AwsTeamMember

Description

Represents an Amazon Web Services team member for the engagement. This structure includes details such as name, email, and business title.

Members
BusinessTitle
Type: string

Specifies the Amazon Web Services team member's business title and indicates their organizational role.

Email
Type: string

Provides the Amazon Web Services team member's email address.

FirstName
Type: string

Provides the Amazon Web Services team member's first name.

LastName
Type: string

Provides the Amazon Web Services team member's last name.

ConflictException

Description

This error occurs when the request can’t be processed due to a conflict with the target resource's current state, which could result from updating or deleting the resource.

Suggested action: Fetch the latest state of the resource, verify the state, and retry the request.

Members
Message
Type: string

Contact

Description

An object that contains a Customer Partner's contact details.

Members
BusinessTitle
Type: string

The partner contact's title (job title or role) associated with the Opportunity. BusinessTitle supports either PartnerAccountManager or OpportunityOwner.

Email
Type: string

The contact's email address associated with the Opportunity.

FirstName
Type: string

The contact's first name associated with the Opportunity.

LastName
Type: string

The contact's last name associated with the Opportunity.

Phone
Type: string

The contact's phone number associated with the Opportunity.

Customer

Description

An object that contains the customer's Account and Contact.

Members
Account
Type: Account structure

An object that contains the customer's account details.

Contacts
Type: Array of Contact structures

Represents the contact details for individuals associated with the customer of the Opportunity. This field captures relevant contacts, including decision-makers, influencers, and technical stakeholders within the customer organization. These contacts are key to progressing the opportunity.

CustomerProjectsContext

Description

The CustomerProjects structure in Engagements offers a flexible framework for managing customer-project relationships. It supports multiple customers per Engagement and multiple projects per customer, while also allowing for customers without projects and projects without specific customers.

All Engagement members have full visibility of customers and their associated projects, enabling the capture of relevant context even when project details are not fully defined. This structure also facilitates targeted invitations, allowing partners to focus on specific customers and their business problems when sending Engagement invitations.

Members
Customer
Type: EngagementCustomer structure

Contains details about the customer associated with the Engagement Invitation, including company information and industry.

Project

Information about the customer project associated with the Engagement.

CustomerSummary

Description

An object that contains a Customer object's subset of fields.

Members
Account
Type: AccountSummary structure

An object that contains a customer's account details.

EngagementContextDetails

Description

Provides detailed context information for an Engagement. This structure allows for specifying the type of context and its associated payload.

Members
Payload
Type: EngagementContextPayload structure

Contains the specific details of the Engagement context. The structure of this payload varies depending on the Type field.

Type
Required: Yes
Type: string

Specifies the type of Engagement context. Valid values are "CustomerProject" or "Document", indicating whether the context relates to a customer project or a document respectively.

EngagementContextPayload

Description

Represents the payload of an Engagement context. The structure of this payload varies based on the context type specified in the EngagementContextDetails.

Members
CustomerProject
Type: CustomerProjectsContext structure

Contains detailed information about a customer project when the context type is "CustomerProject". This field is present only when the Type in EngagementContextDetails is set to "CustomerProject".

EngagementCustomer

Description

Contains details about the customer associated with the Engagement Invitation, including company information and industry.

Members
CompanyName
Required: Yes
Type: string

Represents the name of the customer’s company associated with the Engagement Invitation. This field is used to identify the customer.

CountryCode
Required: Yes
Type: string

Indicates the country in which the customer’s company operates. This field is useful for understanding regional requirements or compliance needs.

Industry
Required: Yes
Type: string

Specifies the industry to which the customer’s company belongs. This field helps categorize the opportunity based on the customer’s business sector.

WebsiteUrl
Required: Yes
Type: string

Provides the website URL of the customer’s company. This field helps partners verify the legitimacy and size of the customer organization.

EngagementCustomerProjectDetails

Description

Provides comprehensive details about a customer project associated with an Engagement. This may include information such as project goals, timelines, and specific customer requirements.

Members
BusinessProblem
Required: Yes
Type: string

A description of the business problem the project aims to solve.

TargetCompletionDate
Required: Yes
Type: string

The target completion date for the customer's project.

Title
Required: Yes
Type: string

The title of the project.

EngagementInvitationSummary

Description

Provides a summarized view of the Engagement Invitation, including details like the identifier, status, and sender. This summary helps partners track and manage AWS originated opportunities.

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the Engagement Invitation. The ARN is a unique identifier that allows partners to reference the invitation in their system and manage its lifecycle.

Catalog
Required: Yes
Type: string

Specifies the catalog in which the Engagement Invitation resides. This can be either the AWS or Sandbox catalog, indicating whether the opportunity is live or being tested.

EngagementId
Type: string

The identifier of the Engagement associated with this invitation. This links the invitation to its parent Engagement.

EngagementTitle
Type: string

Provides a short title or description of the Engagement Invitation. This title helps partners quickly identify and differentiate between multiple engagement opportunities.

ExpirationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the date and time when the Engagement Invitation will expire. After this date, the invitation can no longer be accepted, and the opportunity will be unavailable to the partner.

Id
Required: Yes
Type: string

Represents the unique identifier of the Engagement Invitation. This identifier is used to track the invitation and to manage responses like acceptance or rejection.

InvitationDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the date when the Engagement Invitation was sent to the partner. This provides context for when the opportunity was shared and helps in tracking the timeline for engagement.

ParticipantType
Type: string

Identifies the role of the caller in the engagement invitation.

PayloadType
Type: string

Describes the type of payload associated with the Engagement Invitation, such as Opportunity or MarketplaceOffer. This helps partners understand the nature of the engagement request from AWS.

Receiver
Type: Receiver structure

Specifies the partner company or individual that received the Engagement Invitation. This field is important for tracking who the invitation was sent to within the partner organization.

SenderAwsAccountId
Type: string

Specifies the AWS account ID of the sender who initiated the Engagement Invitation. This allows the partner to identify the AWS entity or representative responsible for sharing the opportunity.

SenderCompanyName
Type: string

Indicates the name of the company or AWS division that sent the Engagement Invitation. This information is useful for partners to know which part of AWS is requesting engagement.

Status
Type: string

Represents the current status of the Engagement Invitation, such as Pending, Accepted, or Rejected. The status helps track the progress and response to the invitation.

EngagementMember

Description

Engagement members are the participants in an Engagement, which is likely a collaborative project or business opportunity within the AWS partner network. Members can be different partner organizations or AWS accounts that are working together on a specific engagement.

Each member is represented by their AWS Account ID, Company Name, and associated details. Members have a status within the Engagement (PENDING, ACCEPTED, REJECTED, or WITHDRAWN), indicating their current state of participation. Only existing members of an Engagement can view the list of other members. This implies a level of privacy and access control within the Engagement structure.

Members
AccountId
Type: string

This is the unique identifier for the AWS account associated with the member organization. It's used for AWS-related operations and identity verification.

CompanyName
Type: string

The official name of the member's company or organization.

WebsiteUrl
Type: string

The URL of the member company's website. This offers a way to find more information about the member organization and serves as an additional identifier.

EngagementMemberSummary

Description

The EngagementMemberSummary provides a snapshot of essential information about participants in an AWS Partner Central Engagement. This compact data structure encapsulates key details of each member, facilitating efficient collaboration and management within the Engagement.

Members
CompanyName
Type: string

The official name of the member's company or organization.

WebsiteUrl
Type: string

The URL of the member company's website. This offers a way to find more information about the member organization and serves as an additional identifier.

EngagementResourceAssociationSummary

Description

This provide a streamlined view of the relationships between engagements and resources. These summaries offer a crucial link between collaborative engagements and the specific resources involved, such as opportunities.These summaries are particularly valuable for partners navigating complex engagements with multiple resources. They enable quick insights into resource distribution across engagements, support efficient resource management, and help maintain a clear overview of collaborative activities.

Members
Catalog
Required: Yes
Type: string

Indicates the environment in which the resource and engagement exist.

CreatedBy
Type: string

The AWS account ID of the entity that created the association.

EngagementId
Type: string

A unique identifier for the engagement associated with the resource.

ResourceId
Type: string

A unique identifier for the specific resource. Varies depending on the resource type.

ResourceType
Type: string

Categorizes the type of resource associated with the engagement.

EngagementSort

Description

Specifies the sorting parameters for listing Engagements.

Members
SortBy
Required: Yes
Type: string

The field by which to sort the results.

SortOrder
Required: Yes
Type: string

The order in which to sort the results.

EngagementSummary

Description

An object that contains an Engagement's subset of fields.

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the created engagement.

CreatedAt
Type: timestamp (string|DateTime or anything parsable by strtotime)

The date and time when the engagement was created.

CreatedBy
Type: string

The AWS account ID of the engagement creator.

Id
Type: string

The unique identifier for the engagement.

MemberCount
Type: int

The number of members in the engagement.

Title
Type: string

The title of the engagement.

ExpectedCustomerSpend

Description

Provides an estimate of the revenue that the partner is expected to generate from the opportunity. This information helps partners assess the financial value of the project.

Members
Amount
Required: Yes
Type: string

Represents the estimated monthly revenue that the partner expects to earn from the opportunity. This helps in forecasting financial returns.

CurrencyCode
Required: Yes
Type: string

Indicates the currency in which the revenue estimate is provided. This helps in understanding the financial impact across different markets.

EstimationUrl
Type: string

A URL providing additional information or context about the spend estimation.

Frequency
Required: Yes
Type: string

Indicates how frequently the customer is expected to spend the projected amount. This can include values such as Monthly, Quarterly, or Annually. The default value is Monthly, representing recurring monthly spend.

TargetCompany
Required: Yes
Type: string

Specifies the name of the partner company that is expected to generate revenue from the opportunity. This field helps track the partner’s involvement in the opportunity.

InternalServerException

Description

This error occurs when the specified resource can’t be found or doesn't exist. Resource ID and type might be incorrect.

Suggested action: This is usually a transient error. Retry after the provided retry delay or a short interval. If the problem persists, contact AWS support.

Members
Message
Type: string

Invitation

Description

The Invitation structure represents an invitation exchanged between partners and AWS. It includes a message, receiver information, and a payload providing context for the invitation.

Members
Message
Required: Yes
Type: string

A message accompanying the invitation.

Payload
Required: Yes
Type: Payload structure

Contains the data payload associated with the Engagement Invitation. This payload includes essential details related to the AWS opportunity and is used by partners to evaluate whether to accept or reject the engagement.

Receiver
Required: Yes
Type: Receiver structure

Represents the entity that received the Engagement Invitation, including account and company details. This field is essential for tracking the partner who is being invited to collaborate.

LastModifiedDate

Description

Defines a filter to retrieve opportunities based on the last modified date. This filter is useful for tracking changes or updates to opportunities over time.

Members
AfterLastModifiedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

Specifies the date after which the opportunities were modified. Use this filter to retrieve only those opportunities that were modified after a given timestamp.

BeforeLastModifiedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

Specifies the date before which the opportunities were modified. Use this filter to retrieve only those opportunities that were modified before a given timestamp.

LifeCycle

Description

An object that contains the Opportunity lifecycle's details.

Members
ClosedLostReason
Type: string

Specifies the reason code when an opportunity is marked as Closed Lost. When you select an appropriate reason code, you communicate the context for closing the Opportunity, and aid in accurate reports and analysis of opportunity outcomes. The possible values are:

  • Customer Deficiency: The customer lacked necessary resources or capabilities.

  • Delay/Cancellation of Project: The project was delayed or canceled.

  • Legal/Tax/Regulatory: Legal, tax, or regulatory issues prevented progress.

  • Lost to Competitor—Google: The opportunity was lost to Google.

  • Lost to Competitor—Microsoft: The opportunity was lost to Microsoft.

  • Lost to Competitor—SoftLayer: The opportunity was lost to SoftLayer.

  • Lost to Competitor—VMWare: The opportunity was lost to VMWare.

  • Lost to Competitor—Other: The opportunity was lost to a competitor not listed above.

  • No Opportunity: There was no opportunity to pursue.

  • On Premises Deployment: The customer chose an on-premises solution.

  • Partner Gap: The partner lacked necessary resources or capabilities.

  • Price: The price was not competitive or acceptable to the customer.

  • Security/Compliance: Security or compliance issues prevented progress.

  • Technical Limitations: Technical limitations prevented progress.

  • Customer Experience: Issues related to the customer's experience impacted the decision.

  • Other: Any reason not covered by the other values.

  • People/Relationship/Governance: Issues related to people, relationships, or governance.

  • Product/Technology: Issues related to the product or technology.

  • Financial/Commercial: Financial or commercial issues impacted the decision.

NextSteps
Type: string

Specifies the upcoming actions or tasks for the Opportunity. Use this field to communicate with Amazon Web Services about the next actions required for the Opportunity.

NextStepsHistory
Type: Array of NextStepsHistory structures

Captures a chronological record of the next steps or actions planned or taken for the current opportunity, along with the timestamp.

ReviewComments
Type: string

Indicates why an opportunity was sent back for further details. Partners must take corrective action based on the ReviewComments.

ReviewStatus
Type: string

Indicates the review status of an opportunity referred by a partner. This field is read-only and only applicable for partner referrals. The possible values are:

  • Pending Submission: Not submitted for validation (editable).

  • Submitted: Submitted for validation, and Amazon Web Services hasn't reviewed it (read-only).

  • In Review: Amazon Web Services is validating (read-only).

  • Action Required: Issues that Amazon Web Services highlights need to be addressed. Partners should use the UpdateOpportunity API action to update the opportunity and helps to ensure that all required changes are made. Only the following fields are editable when the Lifecycle.ReviewStatus is Action Required:

    • Customer.Account.Address.City

    • Customer.Account.Address.CountryCode

    • Customer.Account.Address.PostalCode

    • Customer.Account.Address.StateOrRegion

    • Customer.Account.Address.StreetAddress

    • Customer.Account.WebsiteUrl

    • LifeCycle.TargetCloseDate

    • Project.ExpectedMonthlyAWSRevenue.Amount

    • Project.ExpectedMonthlyAWSRevenue.CurrencyCode

    • Project.CustomerBusinessProblem

    • PartnerOpportunityIdentifier

    After updates, the opportunity re-enters the validation phase. This process repeats until all issues are resolved, and the opportunity's Lifecycle.ReviewStatus is set to Approved or Rejected.

  • Approved: Validated and converted into the Amazon Web Services seller's pipeline (editable).

  • Rejected: Disqualified (read-only).

ReviewStatusReason
Type: string

Indicates the reason a decision was made during the opportunity review process. This field combines the reasons for both disqualified and action required statuses, and provide clarity for why an opportunity was disqualified or requires further action.

Stage
Type: string

Specifies the current stage of the Opportunity's lifecycle as it maps to Amazon Web Services stages from the current stage in the partner CRM. This field provides a translated value of the stage, and offers insight into the Opportunity's progression in the sales cycle, according to Amazon Web Services definitions.

A lead and a prospect must be further matured to a Qualified opportunity before submission. Opportunities that were closed/lost before submission aren't suitable for submission.

The descriptions of each sales stage are:

  • Prospect: Amazon Web Services identifies the opportunity. It can be active (Comes directly from the end customer through a lead) or latent (Your account team believes it exists based on research, account plans, sales plays).

  • Qualified: Your account team engaged with the customer to discuss viability and requirements. The customer agreed that the opportunity is real, of interest, and may solve business/technical needs.

  • Technical Validation: All parties understand the implementation plan.

  • Business Validation: Pricing was proposed, and all parties agree to the steps to close.

  • Committed: The customer signed the contract, but Amazon Web Services hasn't started billing.

  • Launched: The workload is complete, and Amazon Web Services has started billing.

  • Closed Lost: The opportunity is lost, and there are no steps to move forward.

TargetCloseDate
Type: string

Specifies the date when Amazon Web Services expects to start significant billing, when the project finishes, and when it moves into production. This field informs the Amazon Web Services seller about when the opportunity launches and starts to incur Amazon Web Services usage.

Ensure the Target Close Date isn't in the past.

LifeCycleForView

Description

Provides the lifecycle view of an opportunity resource shared through a snapshot.

Members
NextSteps
Type: string

Describes the next steps for the opportunity shared through a snapshot.

ReviewStatus
Type: string

Defines the approval status of the opportunity shared through a snapshot.

Stage
Type: string

Defines the current stage of the opportunity shared through a snapshot.

TargetCloseDate
Type: string

The projected launch date of the opportunity shared through a snapshot.

LifeCycleSummary

Description

An object that contains a LifeCycle object's subset of fields.

Members
ClosedLostReason
Type: string

Specifies the reason code when an opportunity is marked as Closed Lost. When you select an appropriate reason code, you communicate the context for closing the Opportunity, and aid in accurate reports and analysis of opportunity outcomes.

NextSteps
Type: string

Specifies the upcoming actions or tasks for the Opportunity. This field is utilized to communicate to Amazon Web Services the next actions required for the Opportunity.

ReviewComments
Type: string

Indicates why an opportunity was sent back for further details. Partners must take corrective action based on the ReviewComments.

ReviewStatus
Type: string

Indicates the review status of a partner referred opportunity. This field is read-only and only applicable for partner referrals. Valid values:

  • Pending Submission: Not submitted for validation (editable).

  • Submitted: Submitted for validation and not yet Amazon Web Services reviewed (read-only).

  • In Review: Undergoing Amazon Web Services validation (read-only).

  • Action Required: Address any issues Amazon Web Services highlights. Use the UpdateOpportunity API action to update the opportunity, and ensure you make all required changes. Only these fields are editable when the Lifecycle.ReviewStatus is Action Required:

    • Customer.Account.Address.City

    • Customer.Account.Address.CountryCode

    • Customer.Account.Address.PostalCode

    • Customer.Account.Address.StateOrRegion

    • Customer.Account.Address.StreetAddress

    • Customer.Account.WebsiteUrl

    • LifeCycle.TargetCloseDate

    • Project.ExpectedCustomerSpend.Amount

    • Project.ExpectedCustomerSpend.CurrencyCode

    • Project.CustomerBusinessProblem

    • PartnerOpportunityIdentifier

    After updates, the opportunity re-enters the validation phase. This process repeats until all issues are resolved, and the opportunity's Lifecycle.ReviewStatus is set to Approved or Rejected.

  • Approved: Validated and converted into the Amazon Web Services seller's pipeline (editable).

  • Rejected: Disqualified (read-only).

ReviewStatusReason
Type: string

Indicates the reason a specific decision was taken during the opportunity review process. This field combines the reasons for both disqualified and action required statuses, and provides clarity for why an opportunity was disqualified or required further action.

Stage
Type: string

Specifies the current stage of the Opportunity's lifecycle as it maps to Amazon Web Services stages from the current stage in the partner CRM. This field provides a translated value of the stage, and offers insight into the Opportunity's progression in the sales cycle, according to Amazon Web Services definitions.

A lead and a prospect must be further matured to a Qualified opportunity before submission. Opportunities that were closed/lost before submission aren't suitable for submission.

The descriptions of each sales stage are:

  • Prospect: Amazon Web Services identifies the opportunity. It can be active (Comes directly from the end customer through a lead) or latent (Your account team believes it exists based on research, account plans, sales plays).

  • Qualified: Your account team engaged with the customer to discuss viability and understand requirements. The customer agreed that the opportunity is real, of interest, and may solve business/technical needs.

  • Technical Validation: All parties understand the implementation plan.

  • Business Validation: Pricing was proposed, and all parties agree to the steps to close.

  • Committed: The customer signed the contract, but Amazon Web Services hasn't started billing.

  • Launched: The workload is complete, and Amazon Web Services has started billing.

  • Closed Lost: The opportunity is lost, and there are no steps to move forward.

TargetCloseDate
Type: string

Specifies the date when Amazon Web Services expects to start significant billing, when the project finishes, and when it moves into production. This field informs the Amazon Web Services seller about when the opportunity launches and starts to incur Amazon Web Services usage.

Ensure the Target Close Date isn't in the past.

ListEngagementByAcceptingInvitationTaskSummary

Description

Specifies a subset of fields associated with tasks related to accepting an engagement invitation.

Members
EngagementInvitationId
Type: string

The unique identifier of the engagement invitation that was accepted.

Message
Type: string

Detailed message describing the failure and possible recovery steps.

OpportunityId
Type: string

Unique identifier of opportunity that was created.

ReasonCode
Type: string

A code pointing to the specific reason for the failure.

ResourceSnapshotJobId
Type: string

Unique identifier of the resource snapshot job that was created.

StartTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

Task start timestamp.

TaskArn
Type: string

The Amazon Resource Name (ARN) that uniquely identifies the task.

TaskId
Type: string

Unique identifier of the task.

TaskStatus
Type: string

Status of the task.

ListEngagementFromOpportunityTaskSummary

Description

Provides a summary of a task related to creating an engagement from an opportunity. This structure contains key information about the task's status, associated identifiers, and any failure details.

Members
EngagementId
Type: string

The unique identifier of the engagement created as a result of the task. This field is populated when the task is completed successfully.

EngagementInvitationId
Type: string

The unique identifier of the engagement identifier created as a result of the task. This field is populated when the task is completed successfully.

Message
Type: string

A detailed message providing additional information about the task, especially useful in case of failures. This field may contain error details or other relevant information about the task's execution

OpportunityId
Type: string

The unique identifier of the original Opportunity from which the Engagement is being created. This field helps track the source of the Engagement creation task.

ReasonCode
Type: string

A code indicating the specific reason for a task failure. This field is populated when the task status is FAILED and provides a categorized reason for the failure.

ResourceSnapshotJobId
Type: string

The identifier of the resource snapshot job associated with this task, if a snapshot was created as part of the Engagement creation process.

StartTime
Type: timestamp (string|DateTime or anything parsable by strtotime)

The timestamp indicating when the task was initiated, in RFC 3339 5.6 date-time format.

TaskArn
Type: string

The Amazon Resource Name (ARN) uniquely identifying this task within AWS. This ARN can be used for referencing the task in other AWS services or APIs.

TaskId
Type: string

A unique identifier for a specific task.

TaskStatus
Type: string

The current status of the task.

ListTasksSortBase

Description

Defines the sorting parameters for listing tasks. This structure allows for specifying the field to sort by and the order of sorting.

Members
SortBy
Required: Yes
Type: string

Specifies the field by which the task list should be sorted.

SortOrder
Required: Yes
Type: string

Determines the order in which the sorted results are presented.

Marketing

Description

An object that contains marketing details for the Opportunity.

Members
AwsFundingUsed
Type: string

Indicates if the Opportunity is a marketing development fund (MDF) funded activity.

CampaignName
Type: string

Specifies the Opportunity marketing campaign code. The Amazon Web Services campaign code is a reference to specific marketing initiatives, promotions, or activities. This field captures the identifier used to track and categorize the Opportunity within marketing campaigns. If you don't have a campaign code, contact your Amazon Web Services point of contact to obtain one.

Channels
Type: Array of strings

Specifies the Opportunity's channel that the marketing activity is associated with or was contacted through. This field provides information about the specific marketing channel that contributed to the generation of the lead or contact.

Source
Type: string

Indicates if the Opportunity was sourced from an Amazon Web Services marketing activity. Use the value Marketing Activity. Use None if it's not associated with an Amazon Web Services marketing activity. This field helps Amazon Web Services track the return on marketing investments and enables better distribution of marketing budgets among partners.

UseCases
Type: Array of strings

Specifies the marketing activity use case or purpose that led to the Opportunity's creation or contact. This field captures the context or marketing activity's execution's intention and the direct correlation to the generated opportunity or contact. Must be empty when Marketing.AWSFundingUsed = No.

Valid values: AI/ML | Analytics | Application Integration | Blockchain | Business Applications | Cloud Financial Management | Compute | Containers | Customer Engagement | Databases | Developer Tools | End User Computing | Front End Web & Mobile | Game Tech | IoT | Management & Governance | Media Services | Migration & Transfer | Networking & Content Delivery | Quantum Technologies | Robotics | Satellite | Security | Serverless | Storage | VR & AR

MonetaryValue

Description

Specifies payments details.

Members
Amount
Required: Yes
Type: string

Specifies the payment amount.

CurrencyCode
Required: Yes
Type: string

Specifies the payment currency.

NextStepsHistory

Description

Read-only; shows the last 50 values and change dates for the NextSteps field.

Members
Time
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the step execution time.

Value
Required: Yes
Type: string

Indicates the step's execution details.

OpportunityEngagementInvitationSort

Description

Defines sorting options for retrieving Engagement Invitations. Sorting can be done based on various criteria like the invitation date or status.

Members
SortBy
Required: Yes
Type: string

Specifies the field by which the Engagement Invitations are sorted. Common values include InvitationDate and Status.

SortOrder
Required: Yes
Type: string

Defines the order in which the Engagement Invitations are sorted. The values can be ASC (ascending) or DESC (descending).

OpportunityInvitationPayload

Description

Represents the data payload of an Engagement Invitation for a specific opportunity. This contains detailed information that partners use to evaluate the engagement.

Members
Customer
Required: Yes
Type: EngagementCustomer structure

Contains information about the customer related to the opportunity in the Engagement Invitation. This data helps partners understand the customer’s profile and requirements.

Project
Required: Yes
Type: ProjectDetails structure

Describes the project details associated with the opportunity, including the customer’s needs and the scope of work expected to be performed.

ReceiverResponsibilities
Required: Yes
Type: Array of strings

Outlines the responsibilities or expectations of the receiver in the context of the invitation.

SenderContacts
Type: Array of SenderContact structures

Represents the contact details of the AWS representatives involved in sending the Engagement Invitation. These contacts are opportunity stakeholders.

OpportunitySort

Description

Object that configures response sorting.

Members
SortBy
Required: Yes
Type: string

Field name to sort by.

SortOrder
Required: Yes
Type: string

Sort order.

Default: Descending

OpportunitySummary

Description

An object that contains an Opportunity's subset of fields.

Members
Arn
Type: string

The Amazon Resource Name (ARN) for the opportunity. This globally unique identifier can be used for IAM policies and cross-service references.

Catalog
Required: Yes
Type: string

Specifies the catalog associated with the opportunity, either AWS or Sandbox. This indicates the environment in which the opportunity is managed.

CreatedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the Opportunity was last created.

Customer
Type: CustomerSummary structure

An object that contains the Opportunity's customer details.

Id
Type: string

Read-only, system-generated Opportunity unique identifier.

LastModifiedDate
Type: timestamp (string|DateTime or anything parsable by strtotime)

DateTime when the Opportunity was last modified.

LifeCycle
Type: LifeCycleSummary structure

An object that contains the Opportunity's lifecycle details.

OpportunityType
Type: string

Specifies opportunity type as a renewal, new, or expansion.

Opportunity types:

  • New Opportunity: Represents a new business opportunity with a potential customer that's not previously engaged with your solutions or services.

  • Renewal Opportunity: Represents an opportunity to renew an existing contract or subscription with a current customer, ensuring continuity of service.

  • Expansion Opportunity: Represents an opportunity to expand the scope of an existing contract or subscription, either by adding new services or increasing the volume of existing services for a current customer.

PartnerOpportunityIdentifier
Type: string

Specifies the Opportunity's unique identifier in the partner's CRM system. This value is essential to track and reconcile because it's included in the outbound payload sent back to the partner. It allows partners to link an opportunity to their CRM.

Project
Type: ProjectSummary structure

An object that contains the Opportunity's project details summary.

OpportunitySummaryView

Description

Provides a comprehensive view of an opportunity summary, including lifecycle information, team details, opportunity type, primary needs from AWS, and associated project information.

Members
Customer
Type: Customer structure

An object that contains the customer's Account and Contact.

Lifecycle
Type: LifeCycleForView structure

Contains information about the opportunity's lifecycle, including its current stage, status, and important dates such as creation and last modification times.

OpportunityTeam
Type: Array of Contact structures

Represents the internal team handling the opportunity. Specify the members involved in collaborating on an opportunity within the partner's organization.

OpportunityType
Type: string

Specifies the opportunity type.

PrimaryNeedsFromAws
Type: Array of strings

Identifies the type of support the partner needs from AWS.

Project
Type: ProjectView structure

Contains summary information about the project associated with the opportunity, including project name, description, timeline, and other relevant details.

RelatedEntityIdentifiers
Type: RelatedEntityIdentifiers structure

This field provides the associations' information for other entities with the opportunity. These entities include identifiers for AWSProducts, Partner Solutions, and AWSMarketplaceOffers.

Payload

Description

Contains the data payload associated with the Engagement Invitation. This payload includes essential details related to the AWS opportunity and is used by partners to evaluate whether to accept or reject the engagement.

Members
OpportunityInvitation

Specifies the details of the opportunity invitation within the Engagement Invitation payload. This data helps partners understand the context, scope, and expected involvement for the opportunity from AWS.

ProfileNextStepsHistory

Description

Tracks the history of next steps associated with the opportunity. This field captures the actions planned for the future and their timeline.

Members
Time
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the date and time when a particular next step was recorded or planned. This helps in managing the timeline for the opportunity.

Value
Required: Yes
Type: string

Represents the details of the next step recorded, such as follow-up actions or decisions made. This field helps in tracking progress and ensuring alignment with project goals.

Project

Description

An object that contains the Opportunity's project details.

Members
AdditionalComments
Type: string

Captures additional comments or information for the Opportunity that weren't captured in other fields.

ApnPrograms
Type: Array of strings

Specifies the Amazon Partner Network (APN) program that influenced the Opportunity. APN programs refer to specific partner programs or initiatives that can impact the Opportunity.

Valid values: APN Immersion Days | APN Solution Space | ATO (Authority to Operate) | AWS Marketplace Campaign | IS Immersion Day SFID Program | ISV Workload Migration | Migration Acceleration Program | P3 | Partner Launch Initiative | Partner Opportunity Acceleration Funded | The Next Smart | VMware Cloud on AWS | Well-Architected | Windows | Workspaces/AppStream Accelerator Program | WWPS NDPP

CompetitorName
Type: string

Name of the Opportunity's competitor (if any). Use Other to submit a value not in the picklist.

CustomerBusinessProblem
Type: string

Describes the problem the end customer has, and how the partner is helping. Utilize this field to provide a concise narrative that outlines the customer's business challenge or issue. Elaborate on how the partner's solution or offerings align to resolve the customer's business problem. Include relevant information about the partner's value proposition, unique selling points, and expertise to tackle the issue. Offer insights on how the proposed solution meets the customer's needs and provides value. Use concise language and precise descriptions to convey the context and significance of the Opportunity. The content in this field helps Amazon Web Services understand the nature of the Opportunity and the strategic fit of the partner's solution.

CustomerUseCase
Type: string

Specifies the proposed solution focus or type of workload for the Opportunity. This field captures the primary use case or objective of the proposed solution, and provides context and clarity to the addressed workload.

Valid values: AI Machine Learning and Analytics | Archiving | Big Data: Data Warehouse/Data Integration/ETL/Data Lake/BI | Blockchain | Business Applications: Mainframe Modernization | Business Applications & Contact Center | Business Applications & SAP Production | Centralized Operations Management | Cloud Management Tools | Cloud Management Tools & DevOps with Continuous Integration & Continuous Delivery (CICD) | Configuration, Compliance & Auditing | Connected Services | Containers & Serverless | Content Delivery & Edge Services | Database | Edge Computing/End User Computing | Energy | Enterprise Governance & Controls | Enterprise Resource Planning | Financial Services | Healthcare and Life Sciences | High Performance Computing | Hybrid Application Platform | Industrial Software | IOT | Manufacturing, Supply Chain and Operations | Media & High performance computing (HPC) | Migration/Database Migration | Monitoring, logging and performance | Monitoring & Observability | Networking | Outpost | SAP | Security & Compliance | Storage & Backup | Training | VMC | VMWare | Web development & DevOps

DeliveryModels
Type: Array of strings

Specifies the deployment or consumption model for your solution or service in the Opportunity's context. You can select multiple options.

Options' descriptions from the Delivery Model field are:

  • SaaS or PaaS: Your Amazon Web Services based solution deployed as SaaS or PaaS in your Amazon Web Services environment.

  • BYOL or AMI: Your Amazon Web Services based solution deployed as BYOL or AMI in the end customer's Amazon Web Services environment.

  • Managed Services: The end customer's Amazon Web Services business management (For example: Consulting, design, implementation, billing support, cost optimization, technical support).

  • Professional Services: Offerings to help enterprise end customers achieve specific business outcomes for enterprise cloud adoption (For example: Advisory or transformation planning).

  • Resell: Amazon Web Services accounts and billing management for your customers.

  • Other: Delivery model not described above.

ExpectedCustomerSpend
Type: Array of ExpectedCustomerSpend structures

Represents the estimated amount that the customer is expected to spend on AWS services related to the opportunity. This helps in evaluating the potential financial value of the opportunity for AWS.

OtherCompetitorNames
Type: string

Only allowed when CompetitorNames has Other selected.

OtherSolutionDescription
Type: string

Specifies the offered solution for the customer's business problem when the RelatedEntityIdentifiers.Solutions field value is Other.

RelatedOpportunityIdentifier
Type: string

Specifies the current opportunity's parent opportunity identifier.

SalesActivities
Type: Array of strings

Specifies the Opportunity's sales activities conducted with the end customer. These activities help drive Amazon Web Services assignment priority.

Valid values:

  • Initialized discussions with customer: Initial conversations with the customer to understand their needs and introduce your solution.

  • Customer has shown interest in solution: After initial discussions, the customer is interested in your solution.

  • Conducted POC/demo: You conducted a proof of concept (POC) or demonstration of the solution for the customer.

  • In evaluation/planning stage: The customer is evaluating the solution and planning potential implementation.

  • Agreed on solution to Business Problem: Both parties agree on how the solution addresses the customer's business problem.

  • Completed Action Plan: A detailed action plan is complete and outlines the steps for implementation.

  • Finalized Deployment Need: Both parties agree with and finalized the deployment needs.

  • SOW Signed: Both parties signed a statement of work (SOW), and formalize the agreement and detail the project scope and deliverables.

Title
Type: string

Specifies the Opportunity's title or name.

ProjectDetails

Description

Contains details about the project associated with the Engagement Invitation, including the business problem and expected outcomes.

Members
BusinessProblem
Required: Yes
Type: string

Describes the business problem that the project aims to solve. This information is crucial for understanding the project’s goals and objectives.

ExpectedCustomerSpend
Required: Yes
Type: Array of ExpectedCustomerSpend structures

Contains revenue estimates for the partner related to the project. This field provides an idea of the financial potential of the opportunity for the partner.

TargetCompletionDate
Required: Yes
Type: string

Specifies the estimated date of project completion. This field helps track the project timeline and manage expectations.

Title
Required: Yes
Type: string

Specifies the title of the project. This title helps partners quickly identify and understand the focus of the project.

ProjectSummary

Description

An object that contains a Project object's subset of fields.

Members
DeliveryModels
Type: Array of strings

Specifies your solution or service's deployment or consumption model in the Opportunity's context. You can select multiple options.

Options' descriptions from the Delivery Model field are:

  • SaaS or PaaS: Your Amazon Web Services based solution deployed as SaaS or PaaS in your Amazon Web Services environment.

  • BYOL or AMI: Your Amazon Web Services based solution deployed as BYOL or AMI in the end customer's Amazon Web Services environment.

  • Managed Services: The end customer's Amazon Web Services business management (For example: Consulting, design, implementation, billing support, cost optimization, technical support).

  • Professional Services: Offerings to help enterprise end customers achieve specific business outcomes for enterprise cloud adoption (For example: Advisory or transformation planning).

  • Resell: Amazon Web Services accounts and billing management for your customers.

  • Other: Delivery model not described above.

ExpectedCustomerSpend
Type: Array of ExpectedCustomerSpend structures

Provides a summary of the expected customer spend for the project, offering a high-level view of the potential financial impact.

ProjectView

Description

Provides the project view of an opportunity resource shared through a snapshot.

Members
CustomerUseCase
Type: string

Specifies the proposed solution focus or type of workload for the project.

DeliveryModels
Type: Array of strings

Describes the deployment or consumption model for the partner solution or offering. This field indicates how the project's solution will be delivered or implemented for the customer.

ExpectedCustomerSpend
Type: Array of ExpectedCustomerSpend structures

Provides information about the anticipated customer spend related to this project. This may include details such as amount, frequency, and currency of expected expenditure.

OtherSolutionDescription
Type: string

Offers a description of other solutions if the standard solutions do not adequately cover the project's scope.

SalesActivities
Type: Array of strings

Lists the pre-sales activities that have occurred with the end-customer related to the opportunity. This field is conditionally mandatory when the project is qualified for Co-Sell and helps drive assignment priority on the AWS side. It provides insight into the engagement level with the customer.

Receiver

Description

Represents the entity that received the Engagement Invitation, including account and company details. This field is essential for tracking the partner who is being invited to collaborate.

Members
Account
Type: AccountReceiver structure

Specifies the AWS account of the partner who received the Engagement Invitation. This field is used to track the invitation recipient within the AWS ecosystem.

RelatedEntityIdentifiers

Description

This field provides the associations' information for other entities with the opportunity. These entities include identifiers for AWSProducts, Partner Solutions, and AWSMarketplaceOffers.

Members
AwsMarketplaceOffers
Type: Array of strings

Takes one value per opportunity. Each value is an Amazon Resource Name (ARN), in this format: "offers": ["arn:aws:aws-marketplace:us-east-1:999999999999:AWSMarketplace/Offer/offer-sampleOffer32"].

Use the ListEntities action in the Marketplace Catalog APIs for a list of offers in the associated Marketplace seller account.

AwsProducts
Type: Array of strings

Enables the association of specific Amazon Web Services products with the Opportunity. Partners can indicate the relevant Amazon Web Services products for the Opportunity's solution and align with the customer's needs. Returns multiple values separated by commas. For example, "AWSProducts" : ["AmazonRedshift", "AWSAppFabric", "AWSCleanRooms"].

Use the file with the list of Amazon Web Services products hosted on GitHub: Amazon Web Services products.

Solutions
Type: Array of strings

Enables partner solutions or offerings' association with an opportunity. To associate a solution, provide the solution's unique identifier, which you can obtain with the ListSolutions operation.

If the specific solution identifier is not available, you can use the value Other and provide details about the solution in the otherSolutionOffered field. But when the opportunity reaches the Committed stage or beyond, the Other value cannot be used, and a valid solution identifier must be provided.

By associating the relevant solutions with the opportunity, you can communicate the offerings that are being considered or implemented to address the customer's business problem.

ResourceNotFoundException

Description

This error occurs when the specified resource can't be found. The resource might not exist, or isn't visible with the current credentials.

Suggested action: Verify that the resource ID is correct and the resource is in the expected AWS region. Check IAM permissions for accessing the resource.

Members
Message
Type: string

ResourceSnapshotJobSummary

Description

An object that contains a Resource Snapshot Job's subset of fields.

Members
Arn
Type: string

The Amazon Resource Name (ARN) for the resource snapshot job.

EngagementId
Type: string

The unique identifier for the engagement within the AWS Partner Central system. This ID is used for direct references to the engagement within the service.

Id
Type: string

The unique identifier for the resource snapshot job within the AWS Partner Central system. This ID is used for direct references to the job within the service.

Status
Type: string

Represents the current status of the resource snapshot job.

ResourceSnapshotPayload

Description

Represents the payload of a resource snapshot. This structure is designed to accommodate different types of resource snapshots, currently supporting opportunity summaries.

Members
OpportunitySummary
Type: OpportunitySummaryView structure

An object that contains an opportunity's subset of fields.

ResourceSnapshotSummary

Description

Provides a concise summary of a resource snapshot, including its unique identifier and version information. This structure is used to quickly reference and identify specific versions of resource snapshots.

Members
Arn
Type: string

The Amazon Resource Name (ARN) of the snapshot. This globally unique identifier can be used for cross-service references and in IAM policies.

CreatedBy
Type: string

The AWS account ID of the principal (user or role) who created the snapshot. This helps in tracking the origin of the snapshot.

ResourceId
Type: string

The identifier of the specific resource snapshotted. The format might vary depending on the ResourceType.

ResourceSnapshotTemplateName
Type: string

The name of the template used to create the snapshot.

ResourceType
Type: string

The type of resource snapshotted.

Revision
Type: int

The revision number of the snapshot. This integer value is incremented each time the snapshot is updated, allowing for version tracking of the resource snapshot.

SenderContact

Description

An object that contains the details of the sender-provided contact person for the EngagementInvitation.

Members
BusinessTitle
Type: string

The sender-provided contact's title (job title or role) associated with the EngagementInvitation.

Email
Required: Yes
Type: string

The sender-provided contact's email address associated with the EngagementInvitation.

FirstName
Type: string

The sender-provided contact's last name associated with the EngagementInvitation.

LastName
Type: string

The sender-provided contact's first name associated with the EngagementInvitation.

Phone
Type: string

The sender-provided contact's phone number associated with the EngagementInvitation.

ServiceQuotaExceededException

Description

This error occurs when the request would cause a service quota to be exceeded. Service quotas represent the maximum allowed use of a specific resource, and this error indicates that the request would surpass that limit.

Suggested action: Review the Quotas for the resource, and either reduce usage or request a quota increase.

Members
Message
Type: string

SoftwareRevenue

Description

Specifies a customer's procurement terms details. Required only for partners in eligible programs.

Members
DeliveryModel
Type: string

Specifies the customer's intended payment type agreement or procurement method to acquire the solution or service outlined in the Opportunity.

EffectiveDate
Type: string

Specifies the Opportunity's customer engagement start date for the contract's effectiveness.

ExpirationDate
Type: string

Specifies the expiration date for the contract between the customer and Amazon Web Services partner. It signifies the termination date of the agreed-upon engagement period between both parties.

Value
Type: MonetaryValue structure

Specifies the payment value (amount and currency).

SolutionBase

Description

Specifies minimal information for the solution offered to solve the customer's business problem.

Members
Arn
Type: string

The SolutionBase structure provides essential information about a solution.

Catalog
Required: Yes
Type: string

Specifies the catalog in which the solution is hosted, either AWS or Sandbox. This helps partners differentiate between live solutions and those in testing environments.

Category
Required: Yes
Type: string

Specifies the solution category, which helps to categorize and organize the solutions partners offer. Valid values: Software Product | Consulting Service | Hardware Product | Communications Product | Professional Service | Managed Service | Value-Added Resale Amazon Web Services Service | Distribution Service | Training Service | Merger and Acquisition Advising Service.

CreatedDate
Required: Yes
Type: timestamp (string|DateTime or anything parsable by strtotime)

Indicates the solution creation date. This is useful to track and audit.

Id
Required: Yes
Type: string

Enables the association of solutions (offerings) to opportunities.

Name
Required: Yes
Type: string

Specifies the solution name.

Status
Required: Yes
Type: string

Specifies the solution's current status, which indicates its state in the system. Valid values: Active | Inactive | Draft. The status helps partners and Amazon Web Services track the solution's lifecycle and availability. Filter for Active solutions for association to an opportunity.

SolutionSort

Description

Configures the solutions' response sorting that enables partners to order solutions based on specified attributes.

Members
SortBy
Required: Yes
Type: string

Specifies the attribute to sort by, such as Name, CreatedDate, or Status.

SortOrder
Required: Yes
Type: string

Specifies the sorting order, either Ascending or Descending. The default is Descending.

SortObject

Description

Defines the sorting parameters for listing resource snapshot jobs. This structure allows you to specify the field to sort by and the order of sorting.

Members
SortBy
Type: string

Specifies the field by which to sort the resource snapshot jobs.

SortOrder
Type: string

Determines the order in which the sorted results are presented.

ThrottlingException

Description

This error occurs when there are too many requests sent. Review the provided quotas and adapt your usage to avoid throttling.

This error occurs when there are too many requests sent. Review the provided Quotas and retry after the provided delay.

Members
Message
Type: string

ValidationException

Description

The input fails to satisfy the constraints specified by the service or business validation rules.

Suggested action: Review the error message, including the failed fields and reasons, to correct the request payload.

Members
ErrorList
Type: Array of ValidationExceptionError structures

A list of issues that were discovered in the submitted request or the resource state.

Message
Required: Yes
Type: string
Reason
Required: Yes
Type: string

The primary reason for this validation exception to occur.

  • REQUEST_VALIDATION_FAILED: The request format is not valid.

    Fix: Verify your request payload includes all required fields, uses correct data types and string formats.

  • BUSINESS_VALIDATION_FAILED: The requested change doesn't pass the business validation rules.

    Fix: Check that your change aligns with the business rules defined by AWS Partner Central.

ValidationExceptionError

Description

Indicates an invalid value for a field.

  • REQUIRED_FIELD_MISSING: The request is missing a required field.

    Fix: Verify your request payload includes all required fields.

  • INVALID_ENUM_VALUE: The enum field value isn't an accepted values.

    Fix: Check the documentation for the list of valid enum values, and update your request with a valid value.

  • INVALID_STRING_FORMAT: The string format is invalid.

    Fix: Confirm that the string is in the expected format (For example: email address, date).

  • INVALID_VALUE: The value isn't valid.

    Fix: Confirm that the value meets the expected criteria and is within the allowable range or set.

  • TOO_MANY_VALUES: There are too many values in a field that expects fewer entries.

    Fix: Reduce the number of values to match the expected limit.

  • ACTION_NOT_PERMITTED: The action isn't permitted due to current state or permissions.

    Fix: Verify that the action is appropriate for the current state, and that you have the necessary permissions to perform it.

  • DUPLICATE_KEY_VALUE: The value in a field duplicates a value that must be unique.

    Fix: Verify that the value is unique and doesn't duplicate an existing value in the system.

Members
Code
Required: Yes
Type: string

Specifies the error code for the invalid field value.

FieldName
Type: string

Specifies the field name with the invalid value.

Message
Required: Yes
Type: string

Specifies the detailed error message for the invalid field value.