createLicense method
- required String beneficiary,
- required String clientToken,
- required ConsumptionConfiguration consumptionConfiguration,
- required List<
Entitlement> entitlements, - required String homeRegion,
- required Issuer issuer,
- required String licenseName,
- required String productName,
- required String productSKU,
- required DatetimeRange validity,
- List<
Metadata> ? licenseMetadata, - List<
Tag> ? tags,
Creates a license.
May throw AccessDeniedException.
May throw AuthorizationException.
May throw InvalidParameterValueException.
May throw RateLimitExceededException.
May throw RedirectException.
May throw ServerInternalException.
May throw ValidationException.
Parameter beneficiary :
License beneficiary.
Parameter clientToken :
Unique, case-sensitive identifier that you provide to ensure the
idempotency of the request.
Parameter consumptionConfiguration :
Configuration for consumption of the license. Choose a provisional
configuration for workloads running with continuous connectivity. Choose a
borrow configuration for workloads with offline usage.
Parameter entitlements :
License entitlements.
Parameter homeRegion :
Home Region for the license.
Parameter issuer :
License issuer.
Parameter licenseName :
License name.
Parameter productName :
Product name.
Parameter productSKU :
Product SKU.
Parameter validity :
Date and time range during which the license is valid, in ISO8601-UTC
format.
Parameter licenseMetadata :
Information about the license.
Parameter tags :
Tags to add to the license. For more information about tagging support in
License Manager, see the TagResource
operation.
Implementation
Future<CreateLicenseResponse> createLicense({
required String beneficiary,
required String clientToken,
required ConsumptionConfiguration consumptionConfiguration,
required List<Entitlement> entitlements,
required String homeRegion,
required Issuer issuer,
required String licenseName,
required String productName,
required String productSKU,
required DatetimeRange validity,
List<Metadata>? licenseMetadata,
List<Tag>? tags,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AWSLicenseManager.CreateLicense'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'Beneficiary': beneficiary,
'ClientToken': clientToken,
'ConsumptionConfiguration': consumptionConfiguration,
'Entitlements': entitlements,
'HomeRegion': homeRegion,
'Issuer': issuer,
'LicenseName': licenseName,
'ProductName': productName,
'ProductSKU': productSKU,
'Validity': validity,
if (licenseMetadata != null) 'LicenseMetadata': licenseMetadata,
if (tags != null) 'Tags': tags,
},
);
return CreateLicenseResponse.fromJson(jsonResponse.body);
}