code: func (r *Request) UnmarshalJSON(rawData []byte) error {
  	var requestJSON updateRequestJSON
  	if err := json.Unmarshal(rawData, &requestJSON); err != nil {
  		return err
  	}
  	return r.fromJSON(&requestJSON)
  }
docs: // UnmarshalJSON takes a JSON structure stored in a byte array and populates the Request object
  // Implements json.Unmarshaler interface