createPortfolio method
Creates a portfolio.
A delegated admin is authorized to invoke this command.
May throw InvalidParametersException.
May throw LimitExceededException.
May throw TagOptionNotMigratedException.
Parameter displayName :
The name to use for display purposes.
Parameter providerName :
The name of the portfolio provider.
Parameter acceptLanguage :
The language code.
-
jp- Japanese -
zh- Chinese
Parameter description :
The description of the portfolio.
Parameter idempotencyToken :
A unique identifier that you provide to ensure idempotency. If multiple
requests differ only by the idempotency token, the same response is
returned for each repeated request.
Parameter tags :
One or more tags.
Implementation
Future<CreatePortfolioOutput> createPortfolio({
required String displayName,
required String providerName,
String? acceptLanguage,
String? description,
String? idempotencyToken,
List<Tag>? tags,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'AWS242ServiceCatalogService.CreatePortfolio'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'DisplayName': displayName,
'ProviderName': providerName,
if (acceptLanguage != null) 'AcceptLanguage': acceptLanguage,
if (description != null) 'Description': description,
'IdempotencyToken': idempotencyToken ?? _s.generateIdempotencyToken(),
if (tags != null) 'Tags': tags,
},
);
return CreatePortfolioOutput.fromJson(jsonResponse.body);
}