code: func readingByLabelHandler(w http.ResponseWriter, r *http.Request) {
  	defer r.Body.Close()
  
  	vars := mux.Vars(r)
  	label, err := url.QueryUnescape(vars["label"])
  	// Problem unescaping
  	if err != nil {
  		http.Error(w, err.Error(), http.StatusBadRequest)
  		LoggingClient.Error("Error unescaping the label of the value descriptor: " + err.Error())
  		return
  	}
  	limit, err := strconv.Atoi(vars["limit"])
  	// Problems converting to int
  	if err != nil {
  		http.Error(w, err.Error(), http.StatusBadRequest)
  		LoggingClient.Error("Error converting the limit to an integer: " + err.Error())
  		return
  	}
  
  	// Limit is too large
  	err = checkMaxLimit(limit)
  	if err != nil {
  		http.Error(w, maxExceededString, http.StatusRequestEntityTooLarge)
  		return
  	}
  
  	// Get the value descriptors
  	vdList, err := getValueDescriptorsByLabel(label)
  	if err != nil {
  		http.Error(w, err.Error(), http.StatusInternalServerError)
  		return
  	}
  	var vdNames []string
  	for _, vd := range vdList {
  		vdNames = append(vdNames, vd.Name)
  	}
  
  	readings, err := getReadingsByValueDescriptorNames(vdNames, limit)
  	if err != nil {
  		http.Error(w, err.Error(), http.StatusInternalServerError)
  		return
  	}
  
  	encode(readings, w)
  }
docs: // Get readings by the value descriptor (specified by the label)
  // 413 - limit exceeded
  // api/v1/reading/label/{label}/{limit}