createSubscription
abstract suspend fun createSubscription(input: CreateSubscriptionRequest): CreateSubscriptionResponse
Creates a flat-rate pricing subscription for the specified resources.
When approvalMode is set to MANUAL, paid-tier subscriptions are created in PENDING_APPROVAL status and require a separate ApprovePaidSubscription call before billing starts. Free-tier subscriptions are always activated immediately regardless of approval mode.
When approvalMode is set to IMMEDIATE or is not specified, the subscription is activated immediately.
Samples
// Create a flat rate pricing subscription (deferred approval)
val resp = pricingPlanManagerClient.createSubscription {
planFamily = "CloudFront"
planTier = "PRO"
resourceArns = listOf<String>(
"arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE",
"arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/a1b2c3d4"
)
approvalMode = ApprovalMode.fromValue("MANUAL")
}Content copied to clipboard
// Create a subscription with approval mode
val resp = pricingPlanManagerClient.createSubscription {
planFamily = "CloudFront"
planTier = "PRO"
resourceArns = listOf<String>(
"arn:aws:cloudfront::123456789012:distribution/EDFDVBD6EXAMPLE",
"arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/a1b2c3d4"
)
approvalMode = ApprovalMode.fromValue("IMMEDIATE")
}Content copied to clipboard