createDomainEntry method

Future<CreateDomainEntryResult> createDomainEntry({
  1. required DomainEntry domainEntry,
  2. required String domainName,
})

Creates one of the following domain name system (DNS) records in a domain DNS zone: Address (A), canonical name (CNAME), mail exchanger (MX), name server (NS), start of authority (SOA), service locator (SRV), or text (TXT).

The create domain entry operation supports tag-based access control via resource tags applied to the resource identified by domain name. For more information, see the Lightsail Dev Guide.

May throw ServiceException. May throw InvalidInputException. May throw NotFoundException. May throw OperationFailureException. May throw AccessDeniedException. May throw AccountSetupInProgressException. May throw UnauthenticatedException.

Parameter domainEntry : An array of key-value pairs containing information about the domain entry request.

Parameter domainName : The domain name (e.g., example.com) for which you want to create the domain entry.

Implementation

Future<CreateDomainEntryResult> createDomainEntry({
  required DomainEntry domainEntry,
  required String domainName,
}) async {
  ArgumentError.checkNotNull(domainEntry, 'domainEntry');
  ArgumentError.checkNotNull(domainName, 'domainName');
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'Lightsail_20161128.CreateDomainEntry'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'domainEntry': domainEntry,
      'domainName': domainName,
    },
  );

  return CreateDomainEntryResult.fromJson(jsonResponse.body);
}