code: func (d *DNSProvider) Present(domain, token, keyAuth string) error {
  	fqdn, value := dns01.GetRecord(domain, keyAuth)
  
  	authZone, err := dns01.FindZoneByFqdn(fqdn)
  	if err != nil {
  		return fmt.Errorf("cloudflare: %v", err)
  	}
  
  	zoneID, err := d.client.ZoneIDByName(dns01.UnFqdn(authZone))
  	if err != nil {
  		return fmt.Errorf("cloudflare: failed to find zone %s: %v", authZone, err)
  	}
  
  	dnsRecord := cloudflare.DNSRecord{
  		Type:    "TXT",
  		Name:    dns01.UnFqdn(fqdn),
  		Content: value,
  		TTL:     d.config.TTL,
  	}
  
  	response, err := d.client.CreateDNSRecord(zoneID, dnsRecord)
  	if err != nil {
  		return fmt.Errorf("cloudflare: failed to create TXT record: %v", err)
  	}
  
  	if !response.Success {
  		return fmt.Errorf("cloudflare: failed to create TXT record: %+v %+v", response.Errors, response.Messages)
  	}
  
  	log.Infof("cloudflare: new record for %s, ID %s", domain, response.Result.ID)
  
  	return nil
  }
docs: // Present creates a TXT record to fulfill the dns-01 challenge