docs: @Override
    public List<IncomingDataPoint> parsePutV1() {
      if (!query.hasContent()) {
        throw new BadRequestException("Missing request content");
      }
  
      // convert to a string so we can handle character encoding properly
      final String content = query.getContent().trim();
      final int firstbyte = content.charAt(0);
      try {
        if (firstbyte == '{') {
          final IncomingDataPoint dp = 
            JSON.parseToObject(content, IncomingDataPoint.class);
          final ArrayList<IncomingDataPoint> dps = 
            new ArrayList<IncomingDataPoint>(1);
          dps.add(dp);
          return dps;
        } else {
          return JSON.parseToObject(content, TR_INCOMING);
        }
      } catch (IllegalArgumentException iae) {
        throw new BadRequestException("Unable to parse the given JSON", iae);
      }
    }