code: func (d *DNSProvider) Present(domain, token, keyAuth string) error {
  	fqdn, value := dns01.GetRecord(domain, keyAuth)
  
  	zoneID, err := d.getHostedZoneID(fqdn)
  	if err != nil {
  		return fmt.Errorf("rackspace: %v", err)
  	}
  
  	rec := Records{
  		Record: []Record{{
  			Name: dns01.UnFqdn(fqdn),
  			Type: "TXT",
  			Data: value,
  			TTL:  d.config.TTL,
  		}},
  	}
  
  	body, err := json.Marshal(rec)
  	if err != nil {
  		return fmt.Errorf("rackspace: %v", err)
  	}
  
  	_, err = d.makeRequest(http.MethodPost, fmt.Sprintf("/domains/%d/records", zoneID), bytes.NewReader(body))
  	if err != nil {
  		return fmt.Errorf("rackspace: %v", err)
  	}
  	return nil
  }
docs: // Present creates a TXT record to fulfill the dns-01 challenge