This page describes how to transfer a registered domain from a third-party
domain registrar to Cloud Domains and how to cancel a pending transfer.
When you transfer a domain from another registrar, Cloud Domains
creates a new Registration
resource by using the existing domain name as the
new resource's ID.
Limitations
Currently, Cloud Domains does not support the transfer of the following domains, although these are supported by the registration flow:
.co.nz
.co.uk
.jp
.uk
For a list of domains supported by Cloud Domains, see the Pricing table.
Transferring a domain from other registrars is not supported on the Google Cloud console.
Transferring a domain from other registrars is not supported for premium domains.
Before you begin
To complete a transfer, you need to do the following:
Retrieve transfer parameters:
- Price and privacy modes. The price and supported privacy modes
for the domain, which you need to complete the
Transfer
API call. - Transfer lock state. If the transfer lock is enabled, visit your current registrar's site to remove the lock.
- Authorization code. Visit your current registrar's site to obtain the authorization code.
- Current registrar and name servers
- Price and privacy modes. The price and supported privacy modes
for the domain, which you need to complete the
Provide DNS settings. Consider whether you want to change your DNS settings at the time of domain transfer. If your current name servers correspond to the DNS service provided by your current registrar, you must change your DNS settings.
Retrieve transfer parameters
To retrieve the parameters of the domain that you want to transfer, complete the following steps.
gcloud
Use the gcloud domains
registrations get-transfer-parameters
command:
gcloud domains registrations get-transfer-parameters DOMAIN_NAME
Replace DOMAIN_NAME
with the name of the registered
domain—for example, example.app
.
API
Use the registrations.retrieveTransferParameters
method
with an empty body:
GET https://domains.googleapis.com/v1/projects/PROJECT_ID/locations/global/registrations:retrieveTransferParameters?domain_name=DOMAIN_NAME
Replace the following:
PROJECT_ID
: the name of your projectDOMAIN_NAME
: the name of the domain that you want to transfer
Save the output from the RetrieveTransferParameters
call because you
need this information to complete the transfer.
Provide your DNS settings
You can provide your DNS settings in one of the following ways:
Choose to keep the domain's DNS settings from its current registrar (recommended). This option ensures that services on your domain are not interrupted during the transfer.
If your domain currently uses a free DNS service provided by the current registrar, it might not be safe to keep the domain's existing DNS settings because the free DNS service might cease following the transfer. In these cases, we recommend switching to a third-party DNS service such as Cloud DNS before the transfer. Configure your new DNS service to match the current DNS settings, and then change the domain's name servers at the current registrar. Wait a day to make sure that your domain continues to work as you expect. Afterwards, you can safely begin the transfer process, opting to keep the domain's current DNS settings during the transfer.
Specify the name of a Cloud DNS
ManagedZone
resource. To avoid interruption to services on your domain during the transfer, make sure that the zone is configured correctly before proceeding.Choose free name servers provided by Google Domains. You cannot configure this option before the transfer. During the transfer, if you have any existing services on your domain, they will stop working until the Google Domains name servers are configured.
Transfer the domain
When you transfer a domain, for most TLDs,
the domain's current expiration date is extended by a year following the
transfer, and you are billed for one year of
renewal at the price returned by RetrieveTransferParameters
. No registration
time is lost.
Domain transfers can take up to 7 days to complete. To complete the transfer, you might have to approve the transfer through an email sent by your current registrar. Follow the instructions provided in the email.
When transferring a domain that is owned by a company, the registrant must provide the company's contact details, such as the email address and phone number. If the registrant provides their personal contact details, the company might lose access to the domain when the registrant leaves.
To transfer your domain registration from another registrar to Cloud Domains, complete the following steps.
gcloud
Use the gcloud domains
registrations transfer
command:
gcloud domains registrations transfer DOMAIN_NAME
Replace DOMAIN_NAME
with the name of the registered
domain that you want to transfer—for example, example.app
.
In interactive mode, your output is similar to the following:
Please provide the authorization code from the domain's current registrar to transfer the domain. Authorization Code: AUTHORIZATION_CODE Yearly price: 12.00 USD Do you agree to pay this yearly price for your domain (y/N)? y You can specify a Cloud DNS Managed Zone name. To avoid downtime following transfer, make sure the zone is configured correctly before proceeding. You can select free name servers provided by Google Domains. This blank-slate option cannot be configured before transfer. You can also choose to keep the domain's DNS settings from its current registrar. [1] Provide Cloud DNS Managed Zone name [2] Use free name servers provided by Google Domains [3] Keep current DNS settings from current registrar Please enter your numeric choice (3): NAME_SERVER_CHOICE Cloud DNS Managed Zone name: CLOUD_DNS_ZONE Contact data not provided using the --contact-data-from-file flag. Do you want to enter it interactively (Y/n)? y Full name: NAME Organization (if applicable): ORGANIZATION Email: EMAIL_ADDRESS Enter phone number with country code, e.g. "+1.8005550123". Phone number: PHONE_NUMBER Enter fax number with country code, e.g. "+1.8005550123". Fax number (if applicable): FAX_NUMBER Enter two-letter Country / Region code, e.g. "US" or "PL". Refer to the guidelines for entering address field information at https://support.google.com/business/answer/6397478. Country / Region code: COUNTRY_CODE Postal / ZIP code: ZIP_CODE State / Administrative area (if applicable): STATE City / Locality: CITY Address Line 1: ADDRESS_LINE_1 Address Line 2 (if applicable): ADDRESS_LINE_2 Address Line 3 (if applicable): Specify contact privacy [1] private-contact-data [2] public-contact-data Please enter your numeric choice (1): DATA_PRIVACY_CHOICE Waiting for 'operation-1597880129306-5ad437580410d-2c65d582-0861c5b7' to complete...done. Created registration [example.com] Note: The domain transfer has been initiated, but is not yet complete. The registrant may need to follow instructions in a transfer confirmation email sent by the current registrar in order for the transfer to proceed. Even after confirmation, transfers can sometimes take several days to complete. The transfer will be complete when the registration resource changes state to ACTIVE.
Replace the following:
AUTHORIZATION_CODE
: the authorization code from your current registrarNAME_SERVER_CHOICE
: the name server option that you choose based on your DNS provider choiceFor DNS provider options, see Provide your DNS settings.
CLOUD_DNS_ZONE
: the Cloud DNS managed zone nameNAME
: your full name—for example,Alice Smith
ORGANIZATION
: (optional) your organization—for example,Doe Corp
EMAIL_ADDRESS
: your email address for verification—for examplealice@example.net
PHONE_NUMBER
: the phone number of the contact in international format—for example,+1-800-555-0123
FAX_NUMBER
: (optional) the fax number of the contact in international format—for example,+1-800-555-0123
COUNTRY_CODE
: the country or region code of the address—for example,US
for United StatesZIP_CODE
: the postal code or ZIP code of the address—for example,94043
STATE
: the state or administrative area of the address—for example,CA
CITY
: the city or locality of the address—for example,Mountain View
ADDRESS_LINE_1
: the first address line of the registrant—for example,1599 Bayview Parkway
You can have up to three address lines, but only the first one is required.
ADDRESS_LINE_2
: (optional) the second address line of the registrant—for example,APT. 123
DATA_PRIVACY_CHOICE
: your data privacy choiceFor detailed information about privacy options, see Privacy protection.
API
Use the registrations.transfer
method:
POST https://domains.googleapis.com/v1/projects/PROJECT_ID/locations/global/registrations:transfer { "registration": { "domainName": "DOMAIN_NAME", "dnsSettings": { "customDns": { "nameServers": [ "NAME_SERVERS" ] } }, "contactSettings": { "privacy": "CONTACT_PRIVACY", "registrantContact": { "postalAddress": { "regionCode": "REGION_CODE", "postalCode": "POSTAL_CODE", "administrativeArea": "SUBDIVISION", "locality": "CITY", "addressLines": [ "ADDRESS" ], "recipients": [ "CONTACT_NAME" ], "organization": "ORGANIZATION" }, "email": "EMAIL_ADDRESS", "phoneNumber": "PHONE_NUMBER", "faxNumber": "FAX_NUMBER" }, "adminContact": { "postalAddress": { "regionCode": "REGION_CODE", "postalCode": "POSTAL_CODE", "administrativeArea": "SUBDIVISION", "locality": "CITY", "addressLines": [ "ADDRESS" ], "recipients": [ "CONTACT_NAME" ], "organization": "ORGANIZATION" }, "email": "EMAIL_ADDRESS", "phoneNumber": "PHONE_NUMBER", "faxNumber": "FAX_NUMBER" }, "technicalContact": { "postalAddress": { "regionCode": "REGION_CODE", "postalCode": "POSTAL_CODE", "administrativeArea": "SUBDIVISION", "locality": "CITY", "addressLines": [ "ADDRESS" ], "recipients": [ "CONTACT_NAME" ], "organization": "ORGANIZATION" }, "email": "EMAIL_ADDRESS", "phoneNumber": "PHONE_NUMBER", "faxNumber": "FAX_NUMBER" } } }, "yearlyPrice": { "currencyCode": "CURRENCY_CODE", "units": NUMBER_OF_UNITS }, "authorizationCode": { "code": AUTHORIZATION_CODE } }
Replace the following:
PROJECT_ID
: the ID of the project where you created the registration resourceDOMAIN_NAME
: the domain name that you want to transfer—for example,example.com
NAME_SERVERS
: the name servers that you want to useIf you are using Cloud DNS, use the
nameServers
field output that you got from themanagedZones.create
or themanagedZones.get
API call.CONTACT_PRIVACY
: the preferred privacy setting for the contact dataFor detailed information about the available privacy options, see Contact privacy.
Replace the following values for registrantContact
, adminContact
,
and technicalContact
. For detailed information about each type of
contact, see
Contact information.
REGION_CODE
: the region code of the address—for example,US
for United StatesPOSTAL_CODE
: the postal code of the address—for example,94043
SUBDIVISION
: the highest administrative subdivision of an address, such as a state, a province, an oblast, or a prefecture—for example,CA
for the state of CaliforniaCITY
: the name of the city or town of the address—for example,Mountain View
ADDRESS
: the lower levels of an address—for example,1599 Amphitheater Parkway
CONTACT_NAME
: the name of the contactORGANIZATION
: (optional) the name of the organization that is registering the domain—for example,Doe Corporation
EMAIL_ADDRESS
: the email address of the contact—for example,john@example.com
PHONE_NUMBER
: the phone number of the contact in international format—for example,+1-800-555-0123
FAX_NUMBER
: (optional) the fax number of the contact in international format—for example,+1-800-555-0123
Replace the following pricing values:
CURRENCY_CODE
: the three-letter currency code as defined in ISO 4217—for example,USD
Get this value from the
registrations.retrieveTransferParameters
API call.NUMBER_OF_UNITS
: the whole units of the amount—for example, ifcurrencyCode
isUSD
, then one unit is one US dollarGet this value from the
registrations.retrieveTransferParameters
API call.AUTHORIZATION_CODE
: the domain's transfer authorization codeGet this value from the domain's current registrar.
View transfer status
After you run your transfer commands, keep in mind the following:
When the command completes, it initiates the transfer and creates a
Registration
resource in theTRANSFER_PENDING
state. It might take several days to complete the transfer and transition the resource state toACTIVE
.You can sometimes speed up the process by explicitly approving the transfer on your old registrar's website or by following the instructions in an email that they send you.
If there is a problem with the transfer, the resource transitions to the
TRANSFER_FAILED
state. For details about why your transfer might have failed, view the error details on the domain. Refer to Error messages during domain transfer and then try the transfer again.
Cancel a pending transfer
If you have a pending transfer request for your domain, you have a Registration
resource for it in the TRANSFER_PENDING
state. At this stage, you can cancel
the transfer either from the old registrar side or from
Cloud Domains.
To use Cloud Domains to cancel your transfer, delete the
Registration
resource for your domain while the state is TRANSFER_PENDING
.
In some cases, fully canceling the transfer process might take up to several minutes after you delete the resource. Until the transfer is fully cancelled, attempts to retry the transfer might fail.
What's next
- To transfer a registered domain from Cloud Domains to a third-party domain registrar, see Transfer a registered domain to another registrar.
- To access API information, see the Cloud Domains API.
- To find solutions for common issues that you might encounter when using Cloud Domains, see Troubleshooting.