code: @Override
      public Chat getChat(ChatId chat_id) throws IOException {
          AnalyticsData data = new AnalyticsData("getChat");
          IOException ioException = null;
          Chat chat = null;
          data.setValue("chat_id", chat_id);
          try {
              chat = bot.getChat(chat_id);
              data.setReturned(chat);
          } catch (IOException e) {
              ioException = e;
              data.setIoException(ioException);
          }
          analyticsWorker.putData(data);
          if (ioException != null) {
              throw ioException;
          }
          return chat;
      }
docs: Use this method to get up to date information about the chat
  (current name of the user for one-on-one conversations, current username of a user, group or channel, etc.).
  
  @param chat_id Unique identifier for the target chat or username of the target supergroup or channel (in the format @channelusername)
  @return On success, returns a Chat object.
  @throws IOException an exception is thrown in case of any service call failures