docs: @RequestMapping(value = "/api/backup/profile/{profileIdentifier}/{clientUUID}", method = RequestMethod.POST)
      public
      @ResponseBody
      ResponseEntity<String> processSingleProfileBackup(@RequestParam("fileData") MultipartFile fileData,
                           @PathVariable String profileIdentifier,
                           @PathVariable String clientUUID,
                           @RequestParam(value = "odoImport", defaultValue = "true") boolean odoImport) throws Exception {
          int profileID = ControllerUtils.convertProfileIdentifier(profileIdentifier);
          if (!fileData.isEmpty()) {
              try {
                  // Read in file
                  InputStream inputStream = fileData.getInputStream();
                  BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
                  String singleLine;
                  String fullFileString = "";
                  while ((singleLine = bufferedReader.readLine()) != null) {
                      fullFileString += singleLine;
                  }
                  JSONObject fileBackup = new JSONObject(fullFileString);
  
                  if (odoImport) {
                      JSONObject odoBackup = fileBackup.getJSONObject("odoBackup");
                      byte[] bytes = odoBackup.toString().getBytes();
                      // Save to second file to be used in importing odo configuration
                      BufferedOutputStream stream =
                          new BufferedOutputStream(new FileOutputStream(new File("backup-uploaded.json")));
                      stream.write(bytes);
                      stream.close();
                      File f = new File("backup-uploaded.json");
                      BackupService.getInstance().restoreBackupData(new FileInputStream(f));
                  }
  
                  // Get profile backup if json contained both profile backup and odo backup
                  if (fileBackup.has("profileBackup")) {
                      fileBackup = fileBackup.getJSONObject("profileBackup");
                  }
  
                  // Import profile overrides
                  BackupService.getInstance().setProfileFromBackup(fileBackup, profileID, clientUUID);
              } catch (Exception e) {
                  try {
                      JSONArray errorArray = new JSONArray(e.getMessage());
                      return new ResponseEntity<>(errorArray.toString(), HttpStatus.BAD_REQUEST);
                  } catch (Exception k) {
                      // Catch for exceptions other than ones defined in backup service
                      return new ResponseEntity<>("[{\"error\" : \"Upload Error\"}]", HttpStatus.BAD_REQUEST);
                  }
              }
          }
  
          return new ResponseEntity<>(HttpStatus.OK);
      }