code: func (r *Request) request() (*http.Request, error) {
  	url := fmt.Sprintf("%s/api/v1/namespaces/%s/%s/", r.host, r.namespace, r.resource)
  
  	// append resourceName if it is present
  	if r.resourceName != nil {
  		url += *r.resourceName
  	}
  
  	// append any query params
  	if len(r.params) > 0 {
  		url += "?" + r.params.Encode()
  	}
  
  	// build request
  	req, err := http.NewRequest(r.method, url, r.body)
  	if err != nil {
  		return nil, err
  	}
  
  	// set headers on request
  	req.Header = r.header
  	return req, nil
  }
docs: // request builds the http.Request from the options