code: func (d *DNSProvider) getHostedZone(domain string) (string, error) {
  	authZone, err := dns01.FindZoneByFqdn(dns01.ToFqdn(domain))
  	if err != nil {
  		return "", err
  	}
  
  	zones, err := d.client.ManagedZones.
  		List(d.config.Project).
  		DnsName(authZone).
  		Do()
  	if err != nil {
  		return "", fmt.Errorf("API call failed: %v", err)
  	}
  
  	if len(zones.ManagedZones) == 0 {
  		return "", fmt.Errorf("no matching domain found for domain %s", authZone)
  	}
  
  	for _, z := range zones.ManagedZones {
  		if z.Visibility == "public" || z.Visibility == "" {
  			return z.Name, nil
  		}
  	}
  
  	return "", fmt.Errorf("no public zone found for domain %s", authZone)
  }
docs: // getHostedZone returns the managed-zone