code: func (r *Request) Do() *Response {
  	if r.err != nil {
  		return &Response{
  			err: r.err,
  		}
  	}
  
  	req, err := r.request()
  	if err != nil {
  		return &Response{
  			err: err,
  		}
  	}
  
  	res, err := r.client.Do(req)
  	if err != nil {
  		return &Response{
  			err: err,
  		}
  	}
  
  	// return res, err
  	return newResponse(res, err)
  }
docs: // Do builds and triggers the request