AWS marketplace documentation change
Summary
Added documentation for two new EventBridge event types: 'Events for cancellations' and 'Events for billing adjustments', including detailed event schemas and examples for various status changes in cancellation requests and billing adjustment processes.
Security assessment
The changes are feature additions for AWS Marketplace EventBridge notifications, documenting new event types related to business processes (cancellations and billing adjustments). There is no evidence of addressing a security vulnerability, incident, or weakness. The changes are routine documentation updates for expanding notification capabilities.
Diff
diff --git a/marketplace/latest/userguide/notifications-eventbridge.md b/marketplace/latest/userguide/notifications-eventbridge.md index 91831f37a..7eb515873 100644 --- a//marketplace/latest/userguide/notifications-eventbridge.md +++ b//marketplace/latest/userguide/notifications-eventbridge.md @@ -5 +5 @@ -Events for new offersEvents for change setsEvents for security summary reportEvents for disbursementsEvents for agreementsEvents for licenses +Events for new offersEvents for change setsEvents for security summary reportEvents for disbursementsEvents for agreementsEvents for licensesEvents for cancellationsEvents for billing adjustments @@ -24,0 +25,4 @@ As a seller, you can use Amazon EventBridge to receive notifications for events + * Events for cancellations + + * Events for billing adjustments + @@ -45,0 +50,7 @@ Customer's SaaS entitlements are revoked | `License Deprovisioned` | Events for +Seller submits a cancellation request | `Agreement Cancellation Request Pending Approval - Proposer` | Events for cancellations +Cancellation request is approved or auto-approved | `Agreement Cancellation Request Approved - Proposer` | Events for cancellations +Cancellation request is denied by buyer | `Agreement Cancellation Request Rejected - Proposer` | Events for cancellations +Seller withdraws a cancellation request | `Agreement Cancellation Request Cancelled - Proposer` | Events for cancellations +Cancellation request fails validation | `Agreement Cancellation Request Validation Failed - Proposer` | Events for cancellations +Billing adjustment is processed | `Purchase Agreement Billing Adjustment Completed - Proposer` | Events for billing adjustments +Billing adjustment fails validation | `Purchase Agreement Billing Adjustment Failed - Proposer` | Events for billing adjustments @@ -696,0 +708,235 @@ The following is an example event body for **License Deprovisioned - Manufacture +## Events for cancellations + +When a cancellation request status changes, sellers, buyers, and ISVs (for CPPO) receive events. Each event is sent to the relevant party with a role-specific detail type (Proposer for sellers, Acceptor for buyers, Manufacturer for ISVs). The source for these events is `aws.agreement-marketplace`. + +For information on creating EventBridge rules, see [Amazon EventBridge rules](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-rules.html) in the _Amazon EventBridge User Guide_. + +The following is an example event body for **Agreement Cancellation Request Pending Approval - Proposer**. This event is sent when you submit a cancellation request and it is awaiting buyer approval. + + + { + "version": "0", + "id": "01234567-0123-0123-0123-0123456789ab", + "detail-type": "Agreement Cancellation Request Pending Approval - Proposer", + "source": "aws.agreement-marketplace", + "account": "123456789012", + "time": "2025-01-01T13:12:22Z", + "region": "us-east-1", + "resources": [], + "detail": { + "requestId": "3d4c9f9b-b809-4f5e-9fac-a9ae98b05cbb", + "catalog": "AWSMarketplace", + "agreement": { + "id": "agmt-abcdexampleid", + "acceptorId": "123465789012", + "productId": "prod-exampleid", + "offerId": "offer-exampleid" + }, + "agreementCancellationRequest": { + "id": "acr-abcdexampleid", + "reasonCode": "INCORRECT_TERMS_ACCEPTED", + "reasonMessage": "", + "statusCode": "PENDING_APPROVAL", + "statusMessage": "", + "createdAt": "2025-01-01T13:12:22Z", + "updatedAt": "2025-01-01T13:12:22Z" + } + } + } + +The following is an example event body for **Agreement Cancellation Request Approved - Proposer**. This event is sent when the buyer approves your cancellation request or when it is auto-approved after 7 days. + + + { + "version": "0", + "id": "01234567-0123-0123-0123-0123456789ab", + "detail-type": "Agreement Cancellation Request Approved - Proposer", + "source": "aws.agreement-marketplace", + "account": "123456789012", + "time": "2025-01-01T13:16:07Z", + "region": "us-east-1", + "resources": [], + "detail": { + "requestId": "3d4c9f9b-b809-4f5e-9fac-a9ae98b05cbb", + "catalog": "AWSMarketplace", + "agreement": { + "id": "agmt-abcdexampleid", + "acceptorId": "123465789012", + "productId": "prod-exampleid", + "offerId": "offer-exampleid" + }, + "agreementCancellationRequest": { + "id": "acr-abcdexampleid", + "reasonCode": "INCORRECT_TERMS_ACCEPTED", + "reasonMessage": "The terms accepted in agreement had wrong rate", + "statusCode": "APPROVED", + "statusMessage": "", + "createdAt": "2025-01-03T16:16:22Z", + "updatedAt": "2025-01-03T16:20:08Z" + } + } + } + +The following is an example event body for **Agreement Cancellation Request Rejected - Proposer**. This event is sent when the buyer denies your cancellation request. + + + { + "version": "0", + "id": "01234567-0123-0123-0123-0123456789ab", + "detail-type": "Agreement Cancellation Request Rejected - Proposer", + "source": "aws.agreement-marketplace", + "account": "123456789012", + "time": "2025-01-02T10:30:00Z", + "region": "us-east-1", + "resources": [], + "detail": { + "requestId": "3d4c9f9b-b809-4f5e-9fac-a9ae98b05cbb", + "catalog": "AWSMarketplace", + "agreement": { + "id": "agmt-abcdexampleid", + "acceptorId": "123465789012", + "productId": "prod-exampleid", + "offerId": "offer-exampleid" + }, + "agreementCancellationRequest": { + "id": "acr-abcdexampleid", + "reasonCode": "INCORRECT_TERMS_ACCEPTED", + "reasonMessage": "", + "statusCode": "REJECTED", + "statusMessage": "We still need this product", + "createdAt": "2025-01-01T13:12:22Z", + "updatedAt": "2025-01-02T10:30:00Z" + } + } + } + +The following is an example event body for **Agreement Cancellation Request Cancelled - Proposer**. This event is sent when you withdraw a cancellation request. + + + { + "version": "0", + "id": "01234567-0123-0123-0123-0123456789ab", + "detail-type": "Agreement Cancellation Request Cancelled - Proposer", + "source": "aws.agreement-marketplace", + "account": "123456789012", + "time": "2025-01-02T08:00:00Z", + "region": "us-east-1", + "resources": [], + "detail": { + "requestId": "3d4c9f9b-b809-4f5e-9fac-a9ae98b05cbb", + "catalog": "AWSMarketplace", + "agreement": { + "id": "agmt-abcdexampleid", + "acceptorId": "123465789012", + "productId": "prod-exampleid", + "offerId": "offer-exampleid" + }, + "agreementCancellationRequest": { + "id": "acr-abcdexampleid", + "reasonCode": "INCORRECT_TERMS_ACCEPTED", + "reasonMessage": "", + "statusCode": "CANCELLED", + "statusMessage": "Seller withdrew the request", + "createdAt": "2025-01-01T13:12:22Z", + "updatedAt": "2025-01-02T08:00:00Z" + } + } + } + +The following is an example event body for **Agreement Cancellation Request Validation Failed - Proposer**. This event is sent only to the seller when an async validation fails after submission. + + + { + "version": "0", + "id": "01234567-0123-0123-0123-0123456789ab", + "detail-type": "Agreement Cancellation Request Validation Failed - Proposer", + "source": "aws.agreement-marketplace", + "account": "123456789012", + "time": "2025-01-01T13:15:00Z", + "region": "us-east-1", + "resources": [], + "detail": { + "requestId": "3d4c9f9b-b809-4f5e-9fac-a9ae98b05cbb", + "catalog": "AWSMarketplace", + "agreement": { + "id": "agmt-abcdexampleid", + "acceptorId": "123465789012", + "productId": "prod-exampleid", + "offerId": "offer-exampleid" + }, + "agreementCancellationRequest": { + "id": "acr-abcdexampleid", + "reasonCode": "INCORRECT_TERMS_ACCEPTED", + "reasonMessage": "The terms accepted in agreement had wrong rate", + "statusCode": "VALIDATION_FAILED", + "statusMessage": "Agreement has a renewal agreement that must be canceled first", + "createdAt": "2025-01-01T13:12:22Z", + "updatedAt": "2025-01-01T13:15:00Z" + } + } + } + +## Events for billing adjustments + +When a billing adjustment status changes, sellers, buyers, and ISVs (for CPPO) receive events. Each event is sent to the relevant party with a role-specific detail type (Proposer for sellers, Acceptor for buyers, Manufacturer for ISVs). The source for these events is `aws.agreement-marketplace`. + +The following is an example event body for **Purchase Agreement Billing Adjustment Completed - Proposer**. + + + {