gcloud alpha domains registrations register - register a new domain
gcloud alpha domains registrations register REGISTRATION [--contact-data-from-file=CONTACT_DATA_FILE_NAME] [--contact-privacy=CONTACT_PRIVACY] [--validate-only] [--cloud-dns-zone=CLOUD_DNS_ZONE | --name-servers=NAME_SERVER,...,[...] | --use-google-domains-dns] [--async] [--disable-dnssec] [--labels=[KEY=VALUE,...]] [--notices=[NOTICE,...]] [--yearly-price=YEARLY_PRICE] [GCLOUD_WIDE_FLAG ...]
(ALPHA) Create a new Cloud Domains registration resource by registering a new domain. The new resource's ID will be equal to the domain name.
After this command executes, the resource will be in state REGISTRATION_PENDING. The registration process should complete in less than 5 minutes. After that the resource will be in state ACTIVE. In rare cases this process can take much longer due, for example, to a downtime of the domain registry.
Also in rare cases, the domain may end up in state REGISTRATION_FAILED. In that case, delete the registration resource and try again.
When using Cloud DNS Zone or Google Domains name servers, DNSSEC will be enabled by default where possible. You can choose to not enable DNSSEC by using the --disable-dnssec flag.
To register example.com interactively, run:
$ gcloud alpha domains registrations register example.com
To register example.com using contact data from a YAML file contacts.yaml, run:
$ gcloud alpha domains registrations register example.com \ --contact-data-from-file=contacts.yaml
To register example.com with interactive prompts disabled, provide --contact-data-from-file, --contact-privacy, --yearly-price flags and one of the flags for setting authoritative name servers. Sometimes also --notices flag is required. For example, run:
$ gcloud alpha domains registrations register example.com \ --contact-data-from-file=contacts.yaml \ --contact-privacy=private-contact-data \ --yearly-price="12.00 USD" --cloud-dns-zone=example-com --quiet
- Registration resource - The domain name to register. This represents a Cloud
resource. (NOTE) Some attributes are not given arguments in this group but can be set in other ways. To set the project attribute:
- —
provide the argument registration on the command line with a fully specified name;
- —
provide the argument --project on the command line;
- —
set the property core/project. To set the location attribute:
- —
provide the argument registration on the command line with a fully specified name;
- —
location is always global.
This must be specified.
- REGISTRATION
ID of the registration or fully qualified identifier for the registration. To set the registration attribute:
provide the argument registration on the command line.
- --contact-data-from-file=CONTACT_DATA_FILE_NAME
A YAML file containing the contact data for the domain's three contacts: registrant, admin, and technical.
The file can either specify a single set of contact data with label 'allContacts', or three separate sets of contact data with labels 'adminContact' and 'technicalContact'.
Each contact data must contain values for all required fields: email, phoneNumber and postalAddress in google.type.PostalAddress format.
For more guidance on how to specify postalAddress, please see: https://support.google.com/business/answer/6397478
Examples of file contents:
allContacts: email: 'example@example.com' phoneNumber: '+1.8005550123' postalAddress: regionCode: 'US' postalCode: '94043' administrativeArea: 'CA' locality: 'Mountain View' addressLines: ['1600 Amphitheatre Pkwy'] recipients: ['Jane Doe']
registrantContact: email: 'registrant@example.com' phoneNumber: '+1.8005550123' postalAddress: regionCode: 'US' postalCode: '94043' administrativeArea: 'CA' locality: 'Mountain View' addressLines: ['1600 Amphitheatre Pkwy'] recipients: ['Registrant Jane Doe'] adminContact: email: 'admin@example.com' phoneNumber: '+1.8005550123' postalAddress: regionCode: 'US' postalCode: '94043' administrativeArea: 'CA' locality: 'Mountain View' addressLines: ['1600 Amphitheatre Pkwy'] recipients: ['Admin Jane Doe'] technicalContact: email: 'technical@example.com' phoneNumber: '+1.8005550123' postalAddress: regionCode: 'US' postalCode: '94043' administrativeArea: 'CA' locality: 'Mountain View' addressLines: ['1600 Amphitheatre Pkwy'] recipients: ['Technic Jane Doe']
- --contact-privacy=CONTACT_PRIVACY
The contact privacy mode to use. Supported privacy modes depend on the domain. CONTACT_PRIVACY must be one of:
- private-contact-data
Your contact info won't be available to the public. To help protect your info and prevent spam, a third party provides alternate (proxy) contact info for your domain in the public directory at no extra cost. They will forward received messages to you.
- public-contact-data
All the data from contact config is publicly available. To set this value, you must also pass the --notices flag with value public-contact-data-acknowledgement or agree to the notice interactively.
- redacted-contact-data
Limited personal information will be available to the public. The actual information redacted depends on the domain. For more information see https://support.google.com/domains/answer/3251242.
- --validate-only
Don't actually create registration. Only validate arguments.
- Set the authoritative name servers for the given domain.
At most one of these can be specified:
- --cloud-dns-zone=CLOUD_DNS_ZONE
The name of the Cloud DNS managed-zone to set as the name server for the domain. If it's in the same project, you can use short name. If not, use the full resource name, e.g.: --cloud-dns-zone=projects/example-project/managedZones/example-zone. If the zone is signed, DNSSEC will be enabled by default unless you pass --disable-dnssec.
- --name-servers=NAME_SERVER,...,[...]
List of DNS name servers for the domain.
- --use-google-domains-dns
Use free name servers provided by Google Domains. If the zone is signed, DNSSEC will be enabled by default unless you pass --disable-dnssec.
- --async
Return immediately, without waiting for the operation in progress to complete.
- --disable-dnssec
Use this flag to disable DNSSEC, or to skip enabling it when switching to a Cloud DNS Zone or Google Domains nameservers.
- --labels=[KEY=VALUE,...]
List of label KEY=VALUE pairs to add.
Keys must start with a lowercase character and contain only hyphens (-), underscores (_), lowercase characters, and numbers. Values must contain only hyphens (-), underscores (_), lowercase characters, and numbers.
- --notices=[NOTICE,...]
Notices about special properties of certain domains or contacts. NOTICE must be one of:
- public-contact-data-acknowledgement
By sending this notice you acknowledge that using public-contact-data contact privacy makes all the data from contact config publicly available.
- hsts-preloaded
By sending this notice you acknowledge that the domain is preloaded on the HTTP Strict Transport Security list in browsers. Serving a website on such domain will require an SSL certificate. See https://support.google.com/domains/answer/7638036 for details.
- --yearly-price=YEARLY_PRICE
You must accept the yearly price of the domain, either in the interactive flow or using this flag. The expected format is a number followed by a currency code, e.g. "12.00 USD". You can get the price using the get-register-parameters command.
These flags are available to all commands: --access-token-file, --account, --billing-project, --configuration, --flags-file, --flatten, --format, --help, --impersonate-service-account, --log-http, --project, --quiet, --trace-token, --user-output-enabled, --verbosity.
Run $ gcloud help for details.
This command is currently in alpha and might change without notice. If this command fails with API permission errors despite specifying the correct project, you might be trying to access an API with an invitation-only early access allowlist. These variants are also available:
$ gcloud domains registrations register
$ gcloud beta domains registrations register