updateDomainContact method

Future<UpdateDomainContactResponse> updateDomainContact({
  1. required String domainName,
  2. ContactDetail? adminContact,
  3. ContactDetail? registrantContact,
  4. ContactDetail? techContact,
})

This operation updates the contact information for a particular domain. You must specify information for at least one contact: registrant, administrator, or technical.

If the update is successful, this method returns an operation ID that you can use to track the progress and completion of the action. If the request is not completed successfully, the domain registrant will be notified by email.

May throw InvalidInput. May throw DuplicateRequest. May throw TLDRulesViolation. May throw OperationLimitExceeded. May throw UnsupportedTLD.

Parameter domainName : The name of the domain that you want to update contact information for.

Parameter adminContact : Provides detailed contact information.

Parameter registrantContact : Provides detailed contact information.

Parameter techContact : Provides detailed contact information.

Implementation

Future<UpdateDomainContactResponse> updateDomainContact({
  required String domainName,
  ContactDetail? adminContact,
  ContactDetail? registrantContact,
  ContactDetail? techContact,
}) async {
  ArgumentError.checkNotNull(domainName, 'domainName');
  _s.validateStringLength(
    'domainName',
    domainName,
    0,
    255,
    isRequired: true,
  );
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'Route53Domains_v20140515.UpdateDomainContact'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      'DomainName': domainName,
      if (adminContact != null) 'AdminContact': adminContact,
      if (registrantContact != null) 'RegistrantContact': registrantContact,
      if (techContact != null) 'TechContact': techContact,
    },
  );

  return UpdateDomainContactResponse.fromJson(jsonResponse.body);
}