docs: public String[] explodeAPIPath() {
      final String[] split = this.explodePath();
      int index = 1;
      if (split.length < 1 || !split[0].toLowerCase().equals("api")) {
        throw new IllegalArgumentException("The URI does not start with \"/api\"");
      }
      if (split.length < 2) {
        // given "/api"
        final String[] root = { "" };
        return root;
      }
      if (split[1].toLowerCase().startsWith("v") && split[1].length() > 1 &&
          Character.isDigit(split[1].charAt(1))) {
        index = 2;
      }
  
      if (split.length - index == 0) {
        // given "/api/v#"
        final String[] root = { "" };
        return root;
      }
  
      final String[] path = new String[split.length - index];
      int path_idx = 0;
      for (int i = index; i < split.length; i++) {
        path[path_idx] = split[i];
        path_idx++;
      }
      return path;
    }