code: @DELETE
      @Produces("text/plain")
      @RequiresPermissions(I18nPermissions.KEY_DELETE)
      public Response deleteKeys(@QueryParam(IS_MISSING) Boolean isMissing, @QueryParam(IS_APPROX) Boolean isApprox,
              @QueryParam(IS_OUTDATED) Boolean isOutdated, @QueryParam(SEARCH_NAME) String searchName) {
  
          KeySearchCriteria keySearchCriteria = new KeySearchCriteria(isMissing, isApprox, isOutdated, searchName);
          long numberOfDeletedKeys;
          if (shouldDeleteWithoutFilter(keySearchCriteria)) {
              numberOfDeletedKeys = keyRepository.size();
              keyRepository.clear(); // If no filter are precised use the "deleteAll()" method which is more optimized
          } else {
              numberOfDeletedKeys = deleteFilteredKeys(keySearchCriteria);
          }
          return Response.ok(String.format("%d deleted keys", numberOfDeletedKeys)).build();
      }
docs: Deletes all the filtered keys.
  
  @param isMissing  filter on missing default translation
  @param isApprox   filter on approximate default translation
  @param isOutdated filter on outdated key
  @param searchName filter on key name
  @return http status code 200 (ok) with the number of deleted keys