code: func (proxy *Proxy) Save() error {
  	request, err := json.Marshal(proxy)
  	if err != nil {
  		return err
  	}
  
  	var resp *http.Response
  	if proxy.created {
  		resp, err = http.Post(proxy.client.endpoint+"/proxies/"+proxy.Name, "text/plain", bytes.NewReader(request))
  	} else {
  		resp, err = http.Post(proxy.client.endpoint+"/proxies", "application/json", bytes.NewReader(request))
  	}
  	if err != nil {
  		return err
  	}
  
  	if proxy.created {
  		err = checkError(resp, http.StatusOK, "Save")
  	} else {
  		err = checkError(resp, http.StatusCreated, "Create")
  	}
  	if err != nil {
  		return err
  	}
  
  	err = json.NewDecoder(resp.Body).Decode(proxy)
  	if err != nil {
  		return err
  	}
  	proxy.created = true
  
  	return nil
  }
docs: // Save saves changes to a proxy such as its enabled status or upstream port.