# Google Cloud


<!-- Code generated by gen-dns-providers; DO NOT EDIT. -->

Configuration for the [Google Cloud](https://cloud.google.com) DNS provider.

See the [lego documentation](https://go-acme.github.io/lego/dns/gcloud/) for full details.

```yaml
letsEncrypt:
  dnsProvider: "gcloud"
  dnsCredentials:
    # GCE_PROJECT: Project name (by default, the project name is auto-detected by using the metadata service)
    project: ""
    # GCE_ALLOW_PRIVATE_ZONE: Allows requested domain to be in private DNS zone, works only with a private ACME server (by default: false)
    allowPrivateZone: ""
    # GCE_IMPERSONATE_SERVICE_ACCOUNT: Service account email to impersonate
    impersonateServiceAccount: ""
    # GCE_POLLING_INTERVAL: Time between DNS propagation check in seconds (Default: 5)
    pollingInterval: ""
    # GCE_PROPAGATION_TIMEOUT: Maximum waiting time for DNS propagation in seconds (Default: 180)
    propagationTimeout: ""
    # GCE_TTL: The TTL of the TXT record used for the DNS challenge in seconds (Default: 120)
    ttl: ""
    # GCE_ZONE_ID: Allows to skip the automatic detection of the zone
    zoneID: ""
```

Credentials are passed directly to lego using strong types and are never written to the process environment.
You may also use the raw lego environment-variable names as keys instead of the normalized names.

Google Cloud DNS authenticates using Google's Application Default Credentials.
Provide a service account by setting `GOOGLE_APPLICATION_CREDENTIALS` (or
`GCE_SERVICE_ACCOUNT_FILE`) to the path of a JSON key file, or rely on the
metadata server when running on GCP. These are read directly by the Google SDK
and cannot be set through `dnsCredentials`.

