Method: projects.locations.registrations.register

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

Call registrations.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.

HTTP request


The URL uses gRPC Transcoding syntax.

Path parameters



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

Authorization requires the following IAM permission on the specified resource parent:

  • domains.registrations.create

Request body

The request body contains data with the following structure:

JSON representation
  "registration": {
    object (Registration)
  "domainNotices": [
    enum (DomainNotice)
  "contactNotices": [
    enum (ContactNotice)
  "yearlyPrice": {
    object (Money)
  "validateOnly": boolean

object (Registration)

Required. The complete Registration resource to be created.


enum (DomainNotice)

The list of domain notices that you acknowledge. Call registrations.retrieveRegisterParameters to see the notices that need acknowledgement.


enum (ContactNotice)

The list of contact notices that the caller acknowledges. The notices needed here depend on the values specified in registration.contact_settings.


object (Money)

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



When true, only validation is performed, without actually registering the domain. Follows:

Response body

If successful, the response body contains an instance of Operation.

Authorization scopes

Requires the following OAuth scope:


For more information, see the Authentication Overview.