createHttpNamespace method
Creates an HTTP namespace. Service instances registered using an HTTP
namespace can be discovered using a DiscoverInstances request
but can't be discovered using DNS.
For the current quota on the number of namespaces that you can create using the same Amazon Web Services account, see Cloud Map quotas in the Cloud Map Developer Guide.
May throw DuplicateRequest.
May throw InvalidInput.
May throw NamespaceAlreadyExists.
May throw ResourceLimitExceeded.
May throw TooManyTagsException.
Parameter name :
The name that you want to assign to this namespace.
Parameter creatorRequestId :
A unique string that identifies the request and that allows failed
CreateHttpNamespace requests to be retried without the risk
of running the operation twice. CreatorRequestId can be any
unique string (for example, a date/time stamp).
Parameter description :
A description for the namespace.
Parameter tags :
The tags to add to the namespace. Each tag consists of a key and an
optional value that you define. Tags keys can be up to 128 characters in
length, and tag values can be up to 256 characters in length.
Implementation
Future<CreateHttpNamespaceResponse> createHttpNamespace({
required String name,
String? creatorRequestId,
String? description,
List<Tag>? tags,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'Route53AutoNaming_v20170314.CreateHttpNamespace'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'Name': name,
'CreatorRequestId': creatorRequestId ?? _s.generateIdempotencyToken(),
if (description != null) 'Description': description,
if (tags != null) 'Tags': tags,
},
);
return CreateHttpNamespaceResponse.fromJson(jsonResponse.body);
}