Class DomainsClient (0.5.4)

public class DomainsClient implements BackgroundResource

Service Description: The Cloud Domains API enables management and configuration of domain names.

This class provides the ability to make remote calls to the backing service through method calls that map to API methods. Sample code to get started:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName location = LocationName.of("[PROJECT]", "[LOCATION]");
   String query = "query107944136";
   SearchDomainsResponse response = domainsClient.searchDomains(location, query);
 }
 

Note: close() needs to be called on the DomainsClient object to clean up resources such as threads. In the example above, try-with-resources is used, which automatically calls close().

The surface of this class includes several types of Java methods for each of the API's methods:

  1. A "flattened" method. With this type of method, the fields of the request type have been converted into function parameters. It may be the case that not all fields are available as parameters, and not every API method will have a flattened method entry point.
  2. A "request object" method. This type of method only takes one parameter, a request object, which must be constructed before the call. Not every API method will have a request object method.
  3. A "callable" method. This type of method takes no parameters and returns an immutable API callable object, which can be used to initiate calls to the service.

See the individual methods for example code.

Many parameters require resource names to be formatted in a particular way. To assist with these names, this class includes a format method for each type of name, and additionally a parse method to extract the individual identifiers contained within names that are returned.

This class can be customized by passing in a custom instance of DomainsSettings to create(). For example:

To customize credentials:


 DomainsSettings domainsSettings =
     DomainsSettings.newBuilder()
         .setCredentialsProvider(FixedCredentialsProvider.create(myCredentials))
         .build();
 DomainsClient domainsClient = DomainsClient.create(domainsSettings);
 

To customize the endpoint:


 DomainsSettings domainsSettings = DomainsSettings.newBuilder().setEndpoint(myEndpoint).build();
 DomainsClient domainsClient = DomainsClient.create(domainsSettings);
 

Please refer to the GitHub repository's samples for more quickstart code snippets.

Inheritance

java.lang.Object > DomainsClient

Implements

BackgroundResource

Static Methods

create()

public static final DomainsClient create()

Constructs an instance of DomainsClient with default settings.

Returns
TypeDescription
DomainsClient
Exceptions
TypeDescription
IOException

create(DomainsSettings settings)

public static final DomainsClient create(DomainsSettings settings)

Constructs an instance of DomainsClient, using the given settings. The channels are created based on the settings passed in, or defaults for any settings that are not set.

Parameter
NameDescription
settingsDomainsSettings
Returns
TypeDescription
DomainsClient
Exceptions
TypeDescription
IOException

create(DomainsStub stub)

public static final DomainsClient create(DomainsStub stub)

Constructs an instance of DomainsClient, using the given stub for making calls. This is for advanced usage - prefer using create(DomainsSettings).

Parameter
NameDescription
stubDomainsStub
Returns
TypeDescription
DomainsClient

Constructors

DomainsClient(DomainsSettings settings)

protected DomainsClient(DomainsSettings settings)

Constructs an instance of DomainsClient, using the given settings. This is protected so that it is easy to make a subclass, but otherwise, the static factory methods should be preferred.

Parameter
NameDescription
settingsDomainsSettings

DomainsClient(DomainsStub stub)

protected DomainsClient(DomainsStub stub)
Parameter
NameDescription
stubDomainsStub

Methods

awaitTermination(long duration, TimeUnit unit)

public boolean awaitTermination(long duration, TimeUnit unit)
Parameters
NameDescription
durationlong
unitTimeUnit
Returns
TypeDescription
boolean
Exceptions
TypeDescription
InterruptedException

close()

public final void close()

configureContactSettingsAsync(ConfigureContactSettingsRequest request)

public final OperationFuture<Registration,OperationMetadata> configureContactSettingsAsync(ConfigureContactSettingsRequest request)

Updates a Registration's contact settings. Some changes require confirmation by the domain's registrant contact .

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureContactSettingsRequest request =
       ConfigureContactSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setContactSettings(ContactSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .addAllContactNotices(new ArrayList
Parameter
NameDescription
requestConfigureContactSettingsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureContactSettingsAsync(RegistrationName registration, ContactSettings contactSettings, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> configureContactSettingsAsync(RegistrationName registration, ContactSettings contactSettings, FieldMask updateMask)

Updates a Registration's contact settings. Some changes require confirmation by the domain's registrant contact .

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   ContactSettings contactSettings = ContactSettings.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response =
       domainsClient
           .configureContactSettingsAsync(registration, contactSettings, updateMask)
           .get();
 }
 
Parameters
NameDescription
registrationRegistrationName

Required. The name of the Registration whose contact settings are being updated, in the format projects/*/locations/*/registrations/*.

contactSettingsContactSettings

Fields of the ContactSettings to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the registrant contact is being updated, the update_mask is "registrant_contact".

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureContactSettingsAsync(String registration, ContactSettings contactSettings, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> configureContactSettingsAsync(String registration, ContactSettings contactSettings, FieldMask updateMask)

Updates a Registration's contact settings. Some changes require confirmation by the domain's registrant contact .

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   ContactSettings contactSettings = ContactSettings.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response =
       domainsClient
           .configureContactSettingsAsync(registration, contactSettings, updateMask)
           .get();
 }
 
Parameters
NameDescription
registrationString

Required. The name of the Registration whose contact settings are being updated, in the format projects/*/locations/*/registrations/*.

contactSettingsContactSettings

Fields of the ContactSettings to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the registrant contact is being updated, the update_mask is "registrant_contact".

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureContactSettingsCallable()

public final UnaryCallable<ConfigureContactSettingsRequest,Operation> configureContactSettingsCallable()

Updates a Registration's contact settings. Some changes require confirmation by the domain's registrant contact .

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureContactSettingsRequest request =
       ConfigureContactSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setContactSettings(ContactSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .addAllContactNotices(new ArrayList
Returns
TypeDescription
UnaryCallable<ConfigureContactSettingsRequest,Operation>

configureContactSettingsOperationCallable()

public final OperationCallable<ConfigureContactSettingsRequest,Registration,OperationMetadata> configureContactSettingsOperationCallable()

Updates a Registration's contact settings. Some changes require confirmation by the domain's registrant contact .

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureContactSettingsRequest request =
       ConfigureContactSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setContactSettings(ContactSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .addAllContactNotices(new ArrayList
Returns
TypeDescription
OperationCallable<ConfigureContactSettingsRequest,Registration,OperationMetadata>

configureDnsSettingsAsync(ConfigureDnsSettingsRequest request)

public final OperationFuture<Registration,OperationMetadata> configureDnsSettingsAsync(ConfigureDnsSettingsRequest request)

Updates a Registration's DNS settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureDnsSettingsRequest request =
       ConfigureDnsSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setDnsSettings(DnsSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .setValidateOnly(true)
           .build();
   Registration response = domainsClient.configureDnsSettingsAsync(request).get();
 }
 
Parameter
NameDescription
requestConfigureDnsSettingsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureDnsSettingsAsync(RegistrationName registration, DnsSettings dnsSettings, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> configureDnsSettingsAsync(RegistrationName registration, DnsSettings dnsSettings, FieldMask updateMask)

Updates a Registration's DNS settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   DnsSettings dnsSettings = DnsSettings.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response =
       domainsClient.configureDnsSettingsAsync(registration, dnsSettings, updateMask).get();
 }
 
Parameters
NameDescription
registrationRegistrationName

Required. The name of the Registration whose DNS settings are being updated, in the format projects/*/locations/*/registrations/*.

dnsSettingsDnsSettings

Fields of the DnsSettings to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the name servers are being updated for an existing Custom DNS configuration, the update_mask is "custom_dns.name_servers".

When changing the DNS provider from one type to another, pass the new provider's field name as part of the field mask. For example, when changing from a Google Domains DNS configuration to a Custom DNS configuration, the update_mask is "custom_dns". //

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureDnsSettingsAsync(String registration, DnsSettings dnsSettings, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> configureDnsSettingsAsync(String registration, DnsSettings dnsSettings, FieldMask updateMask)

Updates a Registration's DNS settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   DnsSettings dnsSettings = DnsSettings.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response =
       domainsClient.configureDnsSettingsAsync(registration, dnsSettings, updateMask).get();
 }
 
Parameters
NameDescription
registrationString

Required. The name of the Registration whose DNS settings are being updated, in the format projects/*/locations/*/registrations/*.

dnsSettingsDnsSettings

Fields of the DnsSettings to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the name servers are being updated for an existing Custom DNS configuration, the update_mask is "custom_dns.name_servers".

When changing the DNS provider from one type to another, pass the new provider's field name as part of the field mask. For example, when changing from a Google Domains DNS configuration to a Custom DNS configuration, the update_mask is "custom_dns". //

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureDnsSettingsCallable()

public final UnaryCallable<ConfigureDnsSettingsRequest,Operation> configureDnsSettingsCallable()

Updates a Registration's DNS settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureDnsSettingsRequest request =
       ConfigureDnsSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setDnsSettings(DnsSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .setValidateOnly(true)
           .build();
   ApiFuture<Operation> future =
       domainsClient.configureDnsSettingsCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<ConfigureDnsSettingsRequest,Operation>

configureDnsSettingsOperationCallable()

public final OperationCallable<ConfigureDnsSettingsRequest,Registration,OperationMetadata> configureDnsSettingsOperationCallable()

Updates a Registration's DNS settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureDnsSettingsRequest request =
       ConfigureDnsSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setDnsSettings(DnsSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .setValidateOnly(true)
           .build();
   OperationFuture
Returns
TypeDescription
OperationCallable<ConfigureDnsSettingsRequest,Registration,OperationMetadata>

configureManagementSettingsAsync(ConfigureManagementSettingsRequest request)

public final OperationFuture<Registration,OperationMetadata> configureManagementSettingsAsync(ConfigureManagementSettingsRequest request)

Updates a Registration's management settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureManagementSettingsRequest request =
       ConfigureManagementSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setManagementSettings(ManagementSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Registration response = domainsClient.configureManagementSettingsAsync(request).get();
 }
 
Parameter
NameDescription
requestConfigureManagementSettingsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureManagementSettingsAsync(RegistrationName registration, ManagementSettings managementSettings, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> configureManagementSettingsAsync(RegistrationName registration, ManagementSettings managementSettings, FieldMask updateMask)

Updates a Registration's management settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   ManagementSettings managementSettings = ManagementSettings.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response =
       domainsClient
           .configureManagementSettingsAsync(registration, managementSettings, updateMask)
           .get();
 }
 
Parameters
NameDescription
registrationRegistrationName

Required. The name of the Registration whose management settings are being updated, in the format projects/*/locations/*/registrations/*.

managementSettingsManagementSettings

Fields of the ManagementSettings to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the update_mask is "transfer_lock_state".

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureManagementSettingsAsync(String registration, ManagementSettings managementSettings, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> configureManagementSettingsAsync(String registration, ManagementSettings managementSettings, FieldMask updateMask)

Updates a Registration's management settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   ManagementSettings managementSettings = ManagementSettings.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response =
       domainsClient
           .configureManagementSettingsAsync(registration, managementSettings, updateMask)
           .get();
 }
 
Parameters
NameDescription
registrationString

Required. The name of the Registration whose management settings are being updated, in the format projects/*/locations/*/registrations/*.

managementSettingsManagementSettings

Fields of the ManagementSettings to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the transfer lock is being updated, the update_mask is "transfer_lock_state".

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

configureManagementSettingsCallable()

public final UnaryCallable<ConfigureManagementSettingsRequest,Operation> configureManagementSettingsCallable()

Updates a Registration's management settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureManagementSettingsRequest request =
       ConfigureManagementSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setManagementSettings(ManagementSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Operation> future =
       domainsClient.configureManagementSettingsCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<ConfigureManagementSettingsRequest,Operation>

configureManagementSettingsOperationCallable()

public final OperationCallable<ConfigureManagementSettingsRequest,Registration,OperationMetadata> configureManagementSettingsOperationCallable()

Updates a Registration's management settings.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ConfigureManagementSettingsRequest request =
       ConfigureManagementSettingsRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .setManagementSettings(ManagementSettings.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   OperationFuture
Returns
TypeDescription
OperationCallable<ConfigureManagementSettingsRequest,Registration,OperationMetadata>

deleteRegistrationAsync(DeleteRegistrationRequest request)

public final OperationFuture<Empty,OperationMetadata> deleteRegistrationAsync(DeleteRegistrationRequest request)

Deletes a Registration resource.

This method works on any Registration resource using Subscription or Commitment billing, provided that the resource was created at least 1 day in the past.

For Registration resources using Monthly billing, this method works if:

  • state is EXPORTED with expire_time in the past
  • state is REGISTRATION_FAILED
  • state is TRANSFER_FAILED

When an active registration is successfully deleted, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   DeleteRegistrationRequest request =
       DeleteRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   domainsClient.deleteRegistrationAsync(request).get();
 }
 
Parameter
NameDescription
requestDeleteRegistrationRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteRegistrationAsync(RegistrationName name)

public final OperationFuture<Empty,OperationMetadata> deleteRegistrationAsync(RegistrationName name)

Deletes a Registration resource.

This method works on any Registration resource using Subscription or Commitment billing, provided that the resource was created at least 1 day in the past.

For Registration resources using Monthly billing, this method works if:

  • state is EXPORTED with expire_time in the past
  • state is REGISTRATION_FAILED
  • state is TRANSFER_FAILED

When an active registration is successfully deleted, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName name = RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   domainsClient.deleteRegistrationAsync(name).get();
 }
 
Parameter
NameDescription
nameRegistrationName

Required. The name of the Registration to delete, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteRegistrationAsync(String name)

public final OperationFuture<Empty,OperationMetadata> deleteRegistrationAsync(String name)

Deletes a Registration resource.

This method works on any Registration resource using Subscription or Commitment billing, provided that the resource was created at least 1 day in the past.

For Registration resources using Monthly billing, this method works if:

  • state is EXPORTED with expire_time in the past
  • state is REGISTRATION_FAILED
  • state is TRANSFER_FAILED

When an active registration is successfully deleted, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String name = RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   domainsClient.deleteRegistrationAsync(name).get();
 }
 
Parameter
NameDescription
nameString

Required. The name of the Registration to delete, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
OperationFuture<Empty,OperationMetadata>

deleteRegistrationCallable()

public final UnaryCallable<DeleteRegistrationRequest,Operation> deleteRegistrationCallable()

Deletes a Registration resource.

This method works on any Registration resource using Subscription or Commitment billing, provided that the resource was created at least 1 day in the past.

For Registration resources using Monthly billing, this method works if:

  • state is EXPORTED with expire_time in the past
  • state is REGISTRATION_FAILED
  • state is TRANSFER_FAILED

When an active registration is successfully deleted, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   DeleteRegistrationRequest request =
       DeleteRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   ApiFuture<Operation> future = domainsClient.deleteRegistrationCallable().futureCall(request);
   // Do something.
   future.get();
 }
 
Returns
TypeDescription
UnaryCallable<DeleteRegistrationRequest,Operation>

deleteRegistrationOperationCallable()

public final OperationCallable<DeleteRegistrationRequest,Empty,OperationMetadata> deleteRegistrationOperationCallable()

Deletes a Registration resource.

This method works on any Registration resource using Subscription or Commitment billing, provided that the resource was created at least 1 day in the past.

For Registration resources using Monthly billing, this method works if:

  • state is EXPORTED with expire_time in the past
  • state is REGISTRATION_FAILED
  • state is TRANSFER_FAILED

When an active registration is successfully deleted, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   DeleteRegistrationRequest request =
       DeleteRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   OperationFuture
Returns
TypeDescription
OperationCallable<DeleteRegistrationRequest,Empty,OperationMetadata>

exportRegistrationAsync(ExportRegistrationRequest request)

public final OperationFuture<Registration,OperationMetadata> exportRegistrationAsync(ExportRegistrationRequest request)

Exports a Registration resource, such that it is no longer managed by Cloud Domains.

When an active domain is successfully exported, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ExportRegistrationRequest request =
       ExportRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   Registration response = domainsClient.exportRegistrationAsync(request).get();
 }
 
Parameter
NameDescription
requestExportRegistrationRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

exportRegistrationAsync(RegistrationName name)

public final OperationFuture<Registration,OperationMetadata> exportRegistrationAsync(RegistrationName name)

Exports a Registration resource, such that it is no longer managed by Cloud Domains.

When an active domain is successfully exported, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName name = RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   Registration response = domainsClient.exportRegistrationAsync(name).get();
 }
 
Parameter
NameDescription
nameRegistrationName

Required. The name of the Registration to export, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

exportRegistrationAsync(String name)

public final OperationFuture<Registration,OperationMetadata> exportRegistrationAsync(String name)

Exports a Registration resource, such that it is no longer managed by Cloud Domains.

When an active domain is successfully exported, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String name = RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   Registration response = domainsClient.exportRegistrationAsync(name).get();
 }
 
Parameter
NameDescription
nameString

Required. The name of the Registration to export, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

exportRegistrationCallable()

public final UnaryCallable<ExportRegistrationRequest,Operation> exportRegistrationCallable()

Exports a Registration resource, such that it is no longer managed by Cloud Domains.

When an active domain is successfully exported, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ExportRegistrationRequest request =
       ExportRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   ApiFuture<Operation> future = domainsClient.exportRegistrationCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<ExportRegistrationRequest,Operation>

exportRegistrationOperationCallable()

public final OperationCallable<ExportRegistrationRequest,Registration,OperationMetadata> exportRegistrationOperationCallable()

Exports a Registration resource, such that it is no longer managed by Cloud Domains.

When an active domain is successfully exported, you can continue to use the domain in Google Domains until it expires. The calling user becomes the domain's sole owner in Google Domains, and permissions for the domain are subsequently managed there. The domain does not renew automatically unless the new owner sets up billing in Google Domains.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ExportRegistrationRequest request =
       ExportRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   OperationFuture
Returns
TypeDescription
OperationCallable<ExportRegistrationRequest,Registration,OperationMetadata>

getOperationsClient()

public final OperationsClient getOperationsClient()

Returns the OperationsClient that can be used to query the status of a long-running operation returned by another API method call.

Returns
TypeDescription
OperationsClient

getRegistration(GetRegistrationRequest request)

public final Registration getRegistration(GetRegistrationRequest request)

Gets the details of a Registration resource.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   GetRegistrationRequest request =
       GetRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   Registration response = domainsClient.getRegistration(request);
 }
 
Parameter
NameDescription
requestGetRegistrationRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
Registration

getRegistration(RegistrationName name)

public final Registration getRegistration(RegistrationName name)

Gets the details of a Registration resource.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName name = RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   Registration response = domainsClient.getRegistration(name);
 }
 
Parameter
NameDescription
nameRegistrationName

Required. The name of the Registration to get, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
Registration

getRegistration(String name)

public final Registration getRegistration(String name)

Gets the details of a Registration resource.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String name = RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   Registration response = domainsClient.getRegistration(name);
 }
 
Parameter
NameDescription
nameString

Required. The name of the Registration to get, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
Registration

getRegistrationCallable()

public final UnaryCallable<GetRegistrationRequest,Registration> getRegistrationCallable()

Gets the details of a Registration resource.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   GetRegistrationRequest request =
       GetRegistrationRequest.newBuilder()
           .setName(RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   ApiFuture<Registration> future = domainsClient.getRegistrationCallable().futureCall(request);
   // Do something.
   Registration response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<GetRegistrationRequest,Registration>

getSettings()

public final DomainsSettings getSettings()
Returns
TypeDescription
DomainsSettings

getStub()

public DomainsStub getStub()
Returns
TypeDescription
DomainsStub

isShutdown()

public boolean isShutdown()
Returns
TypeDescription
boolean

isTerminated()

public boolean isTerminated()
Returns
TypeDescription
boolean

listRegistrations(ListRegistrationsRequest request)

public final DomainsClient.ListRegistrationsPagedResponse listRegistrations(ListRegistrationsRequest request)

Lists the Registration resources in a project.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ListRegistrationsRequest request =
       ListRegistrationsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .build();
   for (Registration element : domainsClient.listRegistrations(request).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
requestListRegistrationsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
DomainsClient.ListRegistrationsPagedResponse

listRegistrations(LocationName parent)

public final DomainsClient.ListRegistrationsPagedResponse listRegistrations(LocationName parent)

Lists the Registration resources in a project.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   for (Registration element : domainsClient.listRegistrations(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentLocationName

Required. The project and location from which to list Registrations, specified in the format projects/*/locations/*.

Returns
TypeDescription
DomainsClient.ListRegistrationsPagedResponse

listRegistrations(String parent)

public final DomainsClient.ListRegistrationsPagedResponse listRegistrations(String parent)

Lists the Registration resources in a project.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   for (Registration element : domainsClient.listRegistrations(parent).iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Parameter
NameDescription
parentString

Required. The project and location from which to list Registrations, specified in the format projects/*/locations/*.

Returns
TypeDescription
DomainsClient.ListRegistrationsPagedResponse

listRegistrationsCallable()

public final UnaryCallable<ListRegistrationsRequest,ListRegistrationsResponse> listRegistrationsCallable()

Lists the Registration resources in a project.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ListRegistrationsRequest request =
       ListRegistrationsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .build();
   while (true) {
     ListRegistrationsResponse response =
         domainsClient.listRegistrationsCallable().call(request);
     for (Registration element : response.getResponsesList()) {
       // doThingsWith(element);
     }
     String nextPageToken = response.getNextPageToken();
     if (!Strings.isNullOrEmpty(nextPageToken)) {
       request = request.toBuilder().setPageToken(nextPageToken).build();
     } else {
       break;
     }
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListRegistrationsRequest,ListRegistrationsResponse>

listRegistrationsPagedCallable()

public final UnaryCallable<ListRegistrationsRequest,DomainsClient.ListRegistrationsPagedResponse> listRegistrationsPagedCallable()

Lists the Registration resources in a project.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ListRegistrationsRequest request =
       ListRegistrationsRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setPageSize(883849137)
           .setPageToken("pageToken873572522")
           .setFilter("filter-1274492040")
           .build();
   ApiFuture<Registration> future =
       domainsClient.listRegistrationsPagedCallable().futureCall(request);
   // Do something.
   for (Registration element : future.get().iterateAll()) {
     // doThingsWith(element);
   }
 }
 
Returns
TypeDescription
UnaryCallable<ListRegistrationsRequest,ListRegistrationsPagedResponse>

registerDomainAsync(LocationName parent, Registration registration, Money yearlyPrice)

public final OperationFuture<Registration,OperationMetadata> registerDomainAsync(LocationName parent, Registration registration, Money yearlyPrice)

Registers a new domain name and creates a corresponding Registration resource.

Call RetrieveRegisterParameters first to check availability of the domain name and determine parameters like price that are needed to build a call to this method.

A successful call creates a Registration resource in state REGISTRATION_PENDING, which resolves to ACTIVE within 1-2 minutes, indicating that the domain was successfully registered. If the resource ends up in state REGISTRATION_FAILED, it indicates that the domain was not registered successfully, and you can safely delete the resource and retry registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   Registration registration = Registration.newBuilder().build();
   Money yearlyPrice = Money.newBuilder().build();
   Registration response =
       domainsClient.registerDomainAsync(parent, registration, yearlyPrice).get();
 }
 
Parameters
NameDescription
parentLocationName

Required. The parent resource of the Registration. Must be in the format projects/*/locations/*.

registrationRegistration

Required. The complete Registration resource to be created.

yearlyPricecom.google.type.Money

Required. Yearly price to register or renew the domain. The value that should be put here can be obtained from RetrieveRegisterParameters or SearchDomains calls.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

registerDomainAsync(RegisterDomainRequest request)

public final OperationFuture<Registration,OperationMetadata> registerDomainAsync(RegisterDomainRequest request)

Registers a new domain name and creates a corresponding Registration resource.

Call RetrieveRegisterParameters first to check availability of the domain name and determine parameters like price that are needed to build a call to this method.

A successful call creates a Registration resource in state REGISTRATION_PENDING, which resolves to ACTIVE within 1-2 minutes, indicating that the domain was successfully registered. If the resource ends up in state REGISTRATION_FAILED, it indicates that the domain was not registered successfully, and you can safely delete the resource and retry registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegisterDomainRequest request =
       RegisterDomainRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setRegistration(Registration.newBuilder().build())
           .addAllDomainNotices(new ArrayList
Parameter
NameDescription
requestRegisterDomainRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

registerDomainAsync(String parent, Registration registration, Money yearlyPrice)

public final OperationFuture<Registration,OperationMetadata> registerDomainAsync(String parent, Registration registration, Money yearlyPrice)

Registers a new domain name and creates a corresponding Registration resource.

Call RetrieveRegisterParameters first to check availability of the domain name and determine parameters like price that are needed to build a call to this method.

A successful call creates a Registration resource in state REGISTRATION_PENDING, which resolves to ACTIVE within 1-2 minutes, indicating that the domain was successfully registered. If the resource ends up in state REGISTRATION_FAILED, it indicates that the domain was not registered successfully, and you can safely delete the resource and retry registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   Registration registration = Registration.newBuilder().build();
   Money yearlyPrice = Money.newBuilder().build();
   Registration response =
       domainsClient.registerDomainAsync(parent, registration, yearlyPrice).get();
 }
 
Parameters
NameDescription
parentString

Required. The parent resource of the Registration. Must be in the format projects/*/locations/*.

registrationRegistration

Required. The complete Registration resource to be created.

yearlyPricecom.google.type.Money

Required. Yearly price to register or renew the domain. The value that should be put here can be obtained from RetrieveRegisterParameters or SearchDomains calls.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

registerDomainCallable()

public final UnaryCallable<RegisterDomainRequest,Operation> registerDomainCallable()

Registers a new domain name and creates a corresponding Registration resource.

Call RetrieveRegisterParameters first to check availability of the domain name and determine parameters like price that are needed to build a call to this method.

A successful call creates a Registration resource in state REGISTRATION_PENDING, which resolves to ACTIVE within 1-2 minutes, indicating that the domain was successfully registered. If the resource ends up in state REGISTRATION_FAILED, it indicates that the domain was not registered successfully, and you can safely delete the resource and retry registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegisterDomainRequest request =
       RegisterDomainRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setRegistration(Registration.newBuilder().build())
           .addAllDomainNotices(new ArrayList
Returns
TypeDescription
UnaryCallable<RegisterDomainRequest,Operation>

registerDomainOperationCallable()

public final OperationCallable<RegisterDomainRequest,Registration,OperationMetadata> registerDomainOperationCallable()

Registers a new domain name and creates a corresponding Registration resource.

Call RetrieveRegisterParameters first to check availability of the domain name and determine parameters like price that are needed to build a call to this method.

A successful call creates a Registration resource in state REGISTRATION_PENDING, which resolves to ACTIVE within 1-2 minutes, indicating that the domain was successfully registered. If the resource ends up in state REGISTRATION_FAILED, it indicates that the domain was not registered successfully, and you can safely delete the resource and retry registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegisterDomainRequest request =
       RegisterDomainRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setRegistration(Registration.newBuilder().build())
           .addAllDomainNotices(new ArrayList
Returns
TypeDescription
OperationCallable<RegisterDomainRequest,Registration,OperationMetadata>

resetAuthorizationCode(RegistrationName registration)

public final AuthorizationCode resetAuthorizationCode(RegistrationName registration)

Resets the authorization code of the Registration to a new random string.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   AuthorizationCode response = domainsClient.resetAuthorizationCode(registration);
 }
 
Parameter
NameDescription
registrationRegistrationName

Required. The name of the Registration whose authorization code is being reset, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
AuthorizationCode

resetAuthorizationCode(ResetAuthorizationCodeRequest request)

public final AuthorizationCode resetAuthorizationCode(ResetAuthorizationCodeRequest request)

Resets the authorization code of the Registration to a new random string.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ResetAuthorizationCodeRequest request =
       ResetAuthorizationCodeRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   AuthorizationCode response = domainsClient.resetAuthorizationCode(request);
 }
 
Parameter
NameDescription
requestResetAuthorizationCodeRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AuthorizationCode

resetAuthorizationCode(String registration)

public final AuthorizationCode resetAuthorizationCode(String registration)

Resets the authorization code of the Registration to a new random string.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   AuthorizationCode response = domainsClient.resetAuthorizationCode(registration);
 }
 
Parameter
NameDescription
registrationString

Required. The name of the Registration whose authorization code is being reset, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
AuthorizationCode

resetAuthorizationCodeCallable()

public final UnaryCallable<ResetAuthorizationCodeRequest,AuthorizationCode> resetAuthorizationCodeCallable()

Resets the authorization code of the Registration to a new random string.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   ResetAuthorizationCodeRequest request =
       ResetAuthorizationCodeRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   ApiFuture
Returns
TypeDescription
UnaryCallable<ResetAuthorizationCodeRequest,AuthorizationCode>

retrieveAuthorizationCode(RegistrationName registration)

public final AuthorizationCode retrieveAuthorizationCode(RegistrationName registration)

Gets the authorization code of the Registration for the purpose of transferring the domain to another registrar.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RegistrationName registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]");
   AuthorizationCode response = domainsClient.retrieveAuthorizationCode(registration);
 }
 
Parameter
NameDescription
registrationRegistrationName

Required. The name of the Registration whose authorization code is being retrieved, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
AuthorizationCode

retrieveAuthorizationCode(RetrieveAuthorizationCodeRequest request)

public final AuthorizationCode retrieveAuthorizationCode(RetrieveAuthorizationCodeRequest request)

Gets the authorization code of the Registration for the purpose of transferring the domain to another registrar.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RetrieveAuthorizationCodeRequest request =
       RetrieveAuthorizationCodeRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   AuthorizationCode response = domainsClient.retrieveAuthorizationCode(request);
 }
 
Parameter
NameDescription
requestRetrieveAuthorizationCodeRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
AuthorizationCode

retrieveAuthorizationCode(String registration)

public final AuthorizationCode retrieveAuthorizationCode(String registration)

Gets the authorization code of the Registration for the purpose of transferring the domain to another registrar.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String registration =
       RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString();
   AuthorizationCode response = domainsClient.retrieveAuthorizationCode(registration);
 }
 
Parameter
NameDescription
registrationString

Required. The name of the Registration whose authorization code is being retrieved, in the format projects/*/locations/*/registrations/*.

Returns
TypeDescription
AuthorizationCode

retrieveAuthorizationCodeCallable()

public final UnaryCallable<RetrieveAuthorizationCodeRequest,AuthorizationCode> retrieveAuthorizationCodeCallable()

Gets the authorization code of the Registration for the purpose of transferring the domain to another registrar.

You can call this method only after 60 days have elapsed since the initial domain registration.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RetrieveAuthorizationCodeRequest request =
       RetrieveAuthorizationCodeRequest.newBuilder()
           .setRegistration(
               RegistrationName.of("[PROJECT]", "[LOCATION]", "[REGISTRATION]").toString())
           .build();
   ApiFuture
Returns
TypeDescription
UnaryCallable<RetrieveAuthorizationCodeRequest,AuthorizationCode>

retrieveRegisterParameters(LocationName location, String domainName)

public final RetrieveRegisterParametersResponse retrieveRegisterParameters(LocationName location, String domainName)

Gets parameters needed to register a new domain name, including price and up-to-date availability. Use the returned values to call RegisterDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName location = LocationName.of("[PROJECT]", "[LOCATION]");
   String domainName = "domainName-1244085905";
   RetrieveRegisterParametersResponse response =
       domainsClient.retrieveRegisterParameters(location, domainName);
 }
 
Parameters
NameDescription
locationLocationName

Required. The location. Must be in the format projects/*/locations/*.

domainNameString

Required. The domain name. Unicode domain names must be expressed in Punycode format.

Returns
TypeDescription
RetrieveRegisterParametersResponse

retrieveRegisterParameters(RetrieveRegisterParametersRequest request)

public final RetrieveRegisterParametersResponse retrieveRegisterParameters(RetrieveRegisterParametersRequest request)

Gets parameters needed to register a new domain name, including price and up-to-date availability. Use the returned values to call RegisterDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RetrieveRegisterParametersRequest request =
       RetrieveRegisterParametersRequest.newBuilder()
           .setDomainName("domainName-1244085905")
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   RetrieveRegisterParametersResponse response =
       domainsClient.retrieveRegisterParameters(request);
 }
 
Parameter
NameDescription
requestRetrieveRegisterParametersRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
RetrieveRegisterParametersResponse

retrieveRegisterParameters(String location, String domainName)

public final RetrieveRegisterParametersResponse retrieveRegisterParameters(String location, String domainName)

Gets parameters needed to register a new domain name, including price and up-to-date availability. Use the returned values to call RegisterDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String location = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   String domainName = "domainName-1244085905";
   RetrieveRegisterParametersResponse response =
       domainsClient.retrieveRegisterParameters(location, domainName);
 }
 
Parameters
NameDescription
locationString

Required. The location. Must be in the format projects/*/locations/*.

domainNameString

Required. The domain name. Unicode domain names must be expressed in Punycode format.

Returns
TypeDescription
RetrieveRegisterParametersResponse

retrieveRegisterParametersCallable()

public final UnaryCallable<RetrieveRegisterParametersRequest,RetrieveRegisterParametersResponse> retrieveRegisterParametersCallable()

Gets parameters needed to register a new domain name, including price and up-to-date availability. Use the returned values to call RegisterDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RetrieveRegisterParametersRequest request =
       RetrieveRegisterParametersRequest.newBuilder()
           .setDomainName("domainName-1244085905")
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   ApiFuture
Returns
TypeDescription
UnaryCallable<RetrieveRegisterParametersRequest,RetrieveRegisterParametersResponse>

retrieveTransferParameters(LocationName location, String domainName)

public final RetrieveTransferParametersResponse retrieveTransferParameters(LocationName location, String domainName)

Gets parameters needed to transfer a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Use the returned values to call TransferDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName location = LocationName.of("[PROJECT]", "[LOCATION]");
   String domainName = "domainName-1244085905";
   RetrieveTransferParametersResponse response =
       domainsClient.retrieveTransferParameters(location, domainName);
 }
 
Parameters
NameDescription
locationLocationName

Required. The location. Must be in the format projects/*/locations/*.

domainNameString

Required. The domain name. Unicode domain names must be expressed in Punycode format.

Returns
TypeDescription
RetrieveTransferParametersResponse

retrieveTransferParameters(RetrieveTransferParametersRequest request)

public final RetrieveTransferParametersResponse retrieveTransferParameters(RetrieveTransferParametersRequest request)

Gets parameters needed to transfer a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Use the returned values to call TransferDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RetrieveTransferParametersRequest request =
       RetrieveTransferParametersRequest.newBuilder()
           .setDomainName("domainName-1244085905")
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   RetrieveTransferParametersResponse response =
       domainsClient.retrieveTransferParameters(request);
 }
 
Parameter
NameDescription
requestRetrieveTransferParametersRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
RetrieveTransferParametersResponse

retrieveTransferParameters(String location, String domainName)

public final RetrieveTransferParametersResponse retrieveTransferParameters(String location, String domainName)

Gets parameters needed to transfer a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Use the returned values to call TransferDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String location = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   String domainName = "domainName-1244085905";
   RetrieveTransferParametersResponse response =
       domainsClient.retrieveTransferParameters(location, domainName);
 }
 
Parameters
NameDescription
locationString

Required. The location. Must be in the format projects/*/locations/*.

domainNameString

Required. The domain name. Unicode domain names must be expressed in Punycode format.

Returns
TypeDescription
RetrieveTransferParametersResponse

retrieveTransferParametersCallable()

public final UnaryCallable<RetrieveTransferParametersRequest,RetrieveTransferParametersResponse> retrieveTransferParametersCallable()

Gets parameters needed to transfer a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Use the returned values to call TransferDomain.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   RetrieveTransferParametersRequest request =
       RetrieveTransferParametersRequest.newBuilder()
           .setDomainName("domainName-1244085905")
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   ApiFuture
Returns
TypeDescription
UnaryCallable<RetrieveTransferParametersRequest,RetrieveTransferParametersResponse>

searchDomains(LocationName location, String query)

public final SearchDomainsResponse searchDomains(LocationName location, String query)

Searches for available domain names similar to the provided query.

Availability results from this method are approximate; call RetrieveRegisterParameters on a domain before registering to confirm availability.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName location = LocationName.of("[PROJECT]", "[LOCATION]");
   String query = "query107944136";
   SearchDomainsResponse response = domainsClient.searchDomains(location, query);
 }
 
Parameters
NameDescription
locationLocationName

Required. The location. Must be in the format projects/*/locations/*.

queryString

Required. String used to search for available domain names.

Returns
TypeDescription
SearchDomainsResponse

searchDomains(SearchDomainsRequest request)

public final SearchDomainsResponse searchDomains(SearchDomainsRequest request)

Searches for available domain names similar to the provided query.

Availability results from this method are approximate; call RetrieveRegisterParameters on a domain before registering to confirm availability.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   SearchDomainsRequest request =
       SearchDomainsRequest.newBuilder()
           .setQuery("query107944136")
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   SearchDomainsResponse response = domainsClient.searchDomains(request);
 }
 
Parameter
NameDescription
requestSearchDomainsRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
SearchDomainsResponse

searchDomains(String location, String query)

public final SearchDomainsResponse searchDomains(String location, String query)

Searches for available domain names similar to the provided query.

Availability results from this method are approximate; call RetrieveRegisterParameters on a domain before registering to confirm availability.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String location = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   String query = "query107944136";
   SearchDomainsResponse response = domainsClient.searchDomains(location, query);
 }
 
Parameters
NameDescription
locationString

Required. The location. Must be in the format projects/*/locations/*.

queryString

Required. String used to search for available domain names.

Returns
TypeDescription
SearchDomainsResponse

searchDomainsCallable()

public final UnaryCallable<SearchDomainsRequest,SearchDomainsResponse> searchDomainsCallable()

Searches for available domain names similar to the provided query.

Availability results from this method are approximate; call RetrieveRegisterParameters on a domain before registering to confirm availability.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   SearchDomainsRequest request =
       SearchDomainsRequest.newBuilder()
           .setQuery("query107944136")
           .setLocation(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .build();
   ApiFuture
Returns
TypeDescription
UnaryCallable<SearchDomainsRequest,SearchDomainsResponse>

shutdown()

public void shutdown()

shutdownNow()

public void shutdownNow()

transferDomainAsync(LocationName parent, Registration registration, Money yearlyPrice, AuthorizationCode authorizationCode)

public final OperationFuture<Registration,OperationMetadata> transferDomainAsync(LocationName parent, Registration registration, Money yearlyPrice, AuthorizationCode authorizationCode)

Transfers a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Before calling this method, go to the domain's current registrar to unlock the domain for transfer and retrieve the domain's transfer authorization code. Then call RetrieveTransferParameters to confirm that the domain is unlocked and to get values needed to build a call to this method.

A successful call creates a Registration resource in state TRANSFER_PENDING. It can take several days to complete the transfer process. The registrant can often speed up this process by approving the transfer through the current registrar, either by clicking a link in an email from the registrar or by visiting the registrar's website.

A few minutes after transfer approval, the resource transitions to state ACTIVE, indicating that the transfer was successful. If the transfer is rejected or the request expires without being approved, the resource can end up in state TRANSFER_FAILED. If transfer fails, you can safely delete the resource and retry the transfer.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]");
   Registration registration = Registration.newBuilder().build();
   Money yearlyPrice = Money.newBuilder().build();
   AuthorizationCode authorizationCode = AuthorizationCode.newBuilder().build();
   Registration response =
       domainsClient
           .transferDomainAsync(parent, registration, yearlyPrice, authorizationCode)
           .get();
 }
 
Parameters
NameDescription
parentLocationName

Required. The parent resource of the Registration. Must be in the format projects/*/locations/*.

registrationRegistration

Required. The complete Registration resource to be created.

You can leave registration.dns_settings unset to import the domain's current DNS configuration from its current registrar. Use this option only if you are sure that the domain's current DNS service does not cease upon transfer, as is often the case for DNS services provided for free by the registrar.

yearlyPricecom.google.type.Money

Required. Acknowledgement of the price to transfer or renew the domain for one year. Call RetrieveTransferParameters to obtain the price, which you must acknowledge.

authorizationCodeAuthorizationCode

The domain's transfer authorization code. You can obtain this from the domain's current registrar.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

transferDomainAsync(TransferDomainRequest request)

public final OperationFuture<Registration,OperationMetadata> transferDomainAsync(TransferDomainRequest request)

Transfers a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Before calling this method, go to the domain's current registrar to unlock the domain for transfer and retrieve the domain's transfer authorization code. Then call RetrieveTransferParameters to confirm that the domain is unlocked and to get values needed to build a call to this method.

A successful call creates a Registration resource in state TRANSFER_PENDING. It can take several days to complete the transfer process. The registrant can often speed up this process by approving the transfer through the current registrar, either by clicking a link in an email from the registrar or by visiting the registrar's website.

A few minutes after transfer approval, the resource transitions to state ACTIVE, indicating that the transfer was successful. If the transfer is rejected or the request expires without being approved, the resource can end up in state TRANSFER_FAILED. If transfer fails, you can safely delete the resource and retry the transfer.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   TransferDomainRequest request =
       TransferDomainRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setRegistration(Registration.newBuilder().build())
           .addAllContactNotices(new ArrayList
Parameter
NameDescription
requestTransferDomainRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

transferDomainAsync(String parent, Registration registration, Money yearlyPrice, AuthorizationCode authorizationCode)

public final OperationFuture<Registration,OperationMetadata> transferDomainAsync(String parent, Registration registration, Money yearlyPrice, AuthorizationCode authorizationCode)

Transfers a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Before calling this method, go to the domain's current registrar to unlock the domain for transfer and retrieve the domain's transfer authorization code. Then call RetrieveTransferParameters to confirm that the domain is unlocked and to get values needed to build a call to this method.

A successful call creates a Registration resource in state TRANSFER_PENDING. It can take several days to complete the transfer process. The registrant can often speed up this process by approving the transfer through the current registrar, either by clicking a link in an email from the registrar or by visiting the registrar's website.

A few minutes after transfer approval, the resource transitions to state ACTIVE, indicating that the transfer was successful. If the transfer is rejected or the request expires without being approved, the resource can end up in state TRANSFER_FAILED. If transfer fails, you can safely delete the resource and retry the transfer.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   String parent = LocationName.of("[PROJECT]", "[LOCATION]").toString();
   Registration registration = Registration.newBuilder().build();
   Money yearlyPrice = Money.newBuilder().build();
   AuthorizationCode authorizationCode = AuthorizationCode.newBuilder().build();
   Registration response =
       domainsClient
           .transferDomainAsync(parent, registration, yearlyPrice, authorizationCode)
           .get();
 }
 
Parameters
NameDescription
parentString

Required. The parent resource of the Registration. Must be in the format projects/*/locations/*.

registrationRegistration

Required. The complete Registration resource to be created.

You can leave registration.dns_settings unset to import the domain's current DNS configuration from its current registrar. Use this option only if you are sure that the domain's current DNS service does not cease upon transfer, as is often the case for DNS services provided for free by the registrar.

yearlyPricecom.google.type.Money

Required. Acknowledgement of the price to transfer or renew the domain for one year. Call RetrieveTransferParameters to obtain the price, which you must acknowledge.

authorizationCodeAuthorizationCode

The domain's transfer authorization code. You can obtain this from the domain's current registrar.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

transferDomainCallable()

public final UnaryCallable<TransferDomainRequest,Operation> transferDomainCallable()

Transfers a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Before calling this method, go to the domain's current registrar to unlock the domain for transfer and retrieve the domain's transfer authorization code. Then call RetrieveTransferParameters to confirm that the domain is unlocked and to get values needed to build a call to this method.

A successful call creates a Registration resource in state TRANSFER_PENDING. It can take several days to complete the transfer process. The registrant can often speed up this process by approving the transfer through the current registrar, either by clicking a link in an email from the registrar or by visiting the registrar's website.

A few minutes after transfer approval, the resource transitions to state ACTIVE, indicating that the transfer was successful. If the transfer is rejected or the request expires without being approved, the resource can end up in state TRANSFER_FAILED. If transfer fails, you can safely delete the resource and retry the transfer.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   TransferDomainRequest request =
       TransferDomainRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setRegistration(Registration.newBuilder().build())
           .addAllContactNotices(new ArrayList
Returns
TypeDescription
UnaryCallable<TransferDomainRequest,Operation>

transferDomainOperationCallable()

public final OperationCallable<TransferDomainRequest,Registration,OperationMetadata> transferDomainOperationCallable()

Transfers a domain name from another registrar to Cloud Domains. For domains managed by Google Domains, transferring to Cloud Domains is not supported.

Before calling this method, go to the domain's current registrar to unlock the domain for transfer and retrieve the domain's transfer authorization code. Then call RetrieveTransferParameters to confirm that the domain is unlocked and to get values needed to build a call to this method.

A successful call creates a Registration resource in state TRANSFER_PENDING. It can take several days to complete the transfer process. The registrant can often speed up this process by approving the transfer through the current registrar, either by clicking a link in an email from the registrar or by visiting the registrar's website.

A few minutes after transfer approval, the resource transitions to state ACTIVE, indicating that the transfer was successful. If the transfer is rejected or the request expires without being approved, the resource can end up in state TRANSFER_FAILED. If transfer fails, you can safely delete the resource and retry the transfer.

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   TransferDomainRequest request =
       TransferDomainRequest.newBuilder()
           .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
           .setRegistration(Registration.newBuilder().build())
           .addAllContactNotices(new ArrayList
Returns
TypeDescription
OperationCallable<TransferDomainRequest,Registration,OperationMetadata>

updateRegistrationAsync(Registration registration, FieldMask updateMask)

public final OperationFuture<Registration,OperationMetadata> updateRegistrationAsync(Registration registration, FieldMask updateMask)

Updates select fields of a Registration resource, notably labels. To update other fields, use the appropriate custom update method:

  • To update management settings, see ConfigureManagementSettings
  • To update DNS configuration, see ConfigureDnsSettings
  • To update contact information, see ConfigureContactSettings

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   Registration registration = Registration.newBuilder().build();
   FieldMask updateMask = FieldMask.newBuilder().build();
   Registration response = domainsClient.updateRegistrationAsync(registration, updateMask).get();
 }
 
Parameters
NameDescription
registrationRegistration

Fields of the Registration to update.

updateMaskFieldMask

Required. The field mask describing which fields to update as a comma-separated list. For example, if only the labels are being updated, the update_mask is "labels".

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

updateRegistrationAsync(UpdateRegistrationRequest request)

public final OperationFuture<Registration,OperationMetadata> updateRegistrationAsync(UpdateRegistrationRequest request)

Updates select fields of a Registration resource, notably labels. To update other fields, use the appropriate custom update method:

  • To update management settings, see ConfigureManagementSettings
  • To update DNS configuration, see ConfigureDnsSettings
  • To update contact information, see ConfigureContactSettings

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   UpdateRegistrationRequest request =
       UpdateRegistrationRequest.newBuilder()
           .setRegistration(Registration.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   Registration response = domainsClient.updateRegistrationAsync(request).get();
 }
 
Parameter
NameDescription
requestUpdateRegistrationRequest

The request object containing all of the parameters for the API call.

Returns
TypeDescription
OperationFuture<Registration,OperationMetadata>

updateRegistrationCallable()

public final UnaryCallable<UpdateRegistrationRequest,Operation> updateRegistrationCallable()

Updates select fields of a Registration resource, notably labels. To update other fields, use the appropriate custom update method:

  • To update management settings, see ConfigureManagementSettings
  • To update DNS configuration, see ConfigureDnsSettings
  • To update contact information, see ConfigureContactSettings

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   UpdateRegistrationRequest request =
       UpdateRegistrationRequest.newBuilder()
           .setRegistration(Registration.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   ApiFuture<Operation> future = domainsClient.updateRegistrationCallable().futureCall(request);
   // Do something.
   Operation response = future.get();
 }
 
Returns
TypeDescription
UnaryCallable<UpdateRegistrationRequest,Operation>

updateRegistrationOperationCallable()

public final OperationCallable<UpdateRegistrationRequest,Registration,OperationMetadata> updateRegistrationOperationCallable()

Updates select fields of a Registration resource, notably labels. To update other fields, use the appropriate custom update method:

  • To update management settings, see ConfigureManagementSettings
  • To update DNS configuration, see ConfigureDnsSettings
  • To update contact information, see ConfigureContactSettings

Sample code:


 try (DomainsClient domainsClient = DomainsClient.create()) {
   UpdateRegistrationRequest request =
       UpdateRegistrationRequest.newBuilder()
           .setRegistration(Registration.newBuilder().build())
           .setUpdateMask(FieldMask.newBuilder().build())
           .build();
   OperationFuture
Returns
TypeDescription
OperationCallable<UpdateRegistrationRequest,Registration,OperationMetadata>