submitOpportunity method
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.
May throw AccessDeniedException.
May throw InternalServerException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
May throw ValidationException.
Parameter catalog :
Specifies the catalog related to the request. Valid values are:
- AWS: Submits the opportunity request from the production AWS environment.
- Sandbox: Submits the opportunity request from a sandbox environment used for testing or development purposes.
Parameter identifier :
The identifier of the Opportunity previously created by partner and needs
to be submitted.
Parameter involvementType :
Specifies the level of AWS sellers' involvement on the opportunity. Valid
values:
-
Co-sell: Indicates the user wants to co-sell with AWS. Share the opportunity with AWS to receive deal assistance and support. -
For Visibility Only: Indicates that the user does not need support from AWS Sales Rep. Share this opportunity with AWS for visibility only, you will not receive deal assistance and support.
Parameter visibility :
Determines whether to restrict visibility of the opportunity from AWS
sales. Default value is Full. Valid values:
-
Full: The opportunity is fully visible to AWS sales. -
Limited: The opportunity has restricted visibility to AWS sales.
Implementation
Future<void> submitOpportunity({
required String catalog,
required String identifier,
required SalesInvolvementType involvementType,
Visibility? visibility,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.0',
'X-Amz-Target': 'AWSPartnerCentralSelling.SubmitOpportunity'
};
await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'Catalog': catalog,
'Identifier': identifier,
'InvolvementType': involvementType.value,
if (visibility != null) 'Visibility': visibility.value,
},
);
}