code: static ZonedDateTime getDateFromStringToZoneId(String date, ZoneId zoneId, DateTimeFormatter formatter) throws DateTimeParseException {
          try {
              //noticed that date not parsed with non-US locale. For me this fix is helpful
              LocalDate localDate = LocalDate.parse(date, formatter);
              ZonedDateTime usDate = localDate.atStartOfDay(zoneId);
              return usDate.withZoneSameInstant(zoneId);
          } catch (Exception e) {
              //In case the parsing fail, we try without time
              try {
                  ZonedDateTime usDate = LocalDate.parse(date, formatter).atStartOfDay(ZoneId.of(Constants.SHERDOG_TIME_ZONE));
                  return usDate.withZoneSameInstant(zoneId);
              } catch (DateTimeParseException e2) {
                  return null;
              }
          }
      }
docs: Converts a String to the given timezone.
  
  @param date      Date to format
  @param zoneId    Zone id to convert from sherdog's time
  @param formatter Formatter for exotic date format
  @return the converted zonedatetime