CreateContractualInvestmentAttestation
Creates an attestation that claims an investment award for a completed milestone or outcome within a private pricing contract. Supply a clientToken to make the request idempotent so a safe retry does not create a duplicate attestation. This operation starts an asynchronous review and returns an attestationId while the attestation is pending.
Request Syntax
{
"additionalRecipients": [
{
"email": "string"
}
],
"approverDetails": {
"email": "string",
"name": "string",
"title": "string"
},
"attestationDetails": {
"attestationValue": { ... },
"investmentDistributions": [
{
"accountId": "string",
"investmentAmount": {
"currencyAmount": "string",
"currencyCode": "string"
}
}
]
},
"clientToken": "string",
"contractArn": "string",
"contractDocumentId": "string",
"investmentDisbursedAt": number,
"investmentId": "string",
"investmentSummaryId": "string"
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- additionalRecipients
-
The email addresses to copy as viewers on the executive approval request.
Type: Array of AdditionalRecipient objects
Array Members: Minimum number of 0 items. Maximum number of 10 items.
Required: No
- approverDetails
-
The details of the executive who authorized the attestation, under the terms of the private pricing contract. The executive receives a click-to-accept email to confirm the attestation.
Type: ApproverDetails object
Required: Yes
- attestationDetails
-
The details of the attestation, including the value being claimed and how the resulting investment is distributed across investment accounts.
Type: AttestationDetails object
Required: Yes
- clientToken
-
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you retry a request that completed successfully using the same client token and parameters, the retry completes without performing any further actions.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 64.
Pattern:
[!-~]+Required: No
- contractArn
-
The Amazon Resource Name (ARN) of the contract that contains the investment being attested.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 500.
Pattern:
arn:aws[a-z-]*:billing::[0-9]{12}:contract/[a-zA-Z0-9_\+=\.\@-]{0,70}[a-zA-Z0-9]Required: Yes
- contractDocumentId
-
The contract ID from the contract document, located in the top-right corner of the private pricing contract pages. This value confirms that you have access to the contract.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 36.
Required: Yes
- investmentDisbursedAt
-
The date on which the investment is disbursed to the investment accounts. The disbursement date is subject to review timelines.
Type: Timestamp
Required: No
- investmentId
-
The identifier of the investment (outcome) being attested.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 36.
Pattern:
[a-zA-Z0-9_\-]+Required: Yes
- investmentSummaryId
-
The identifier of the investment summary being attested. This is the parent to the investmentId.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 36.
Pattern:
[a-zA-Z0-9_\-]+Required: Yes
Response Syntax
{
"attestationId": "string"
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- attestationId
-
The identifier of the submitted attestation.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 36.
Pattern:
[a-zA-Z0-9_\-]+
Errors
For information about the errors that are common to all actions, see Common Error Types.
- AccessDeniedException
-
You don't have sufficient access to perform this action.
HTTP Status Code: 400
- ConflictException
-
The requested operation would cause a conflict with the current state of a service resource associated with the request. Resolve the conflict before retrying this request.
- resourceId
-
The identifier for the service resource associated with the request.
- resourceType
-
The type of resource associated with the request.
HTTP Status Code: 400
- InternalServerException
-
The request processing failed because of an unknown error, exception, or failure.
HTTP Status Code: 500
- ResourceNotFoundException
-
The specified ARN in the request doesn't exist.
- resourceId
-
Value is a list of resource IDs that were not found.
- resourceType
-
Value is the type of resource that was not found.
HTTP Status Code: 400
- ThrottlingException
-
The request was denied due to request throttling.
HTTP Status Code: 400
- ValidationException
-
The input fails to satisfy the constraints specified by an Amazon Web Services service.
- fieldList
-
The input fails to satisfy the constraints specified by an Amazon service.
- reason
-
The input fails to satisfy the constraints specified by an Amazon service.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific Amazon SDKs, see the following: