class_docstr: A class for handling connections and interactions with the Google Calendar API.
docstr: Get events from Google Calendar API
  Args:
      params (dict): query parameters
  Returns:
      DataFrame
docstr_tok: ["Get","events","from","Google","Calendar","API","Args",":","params","(","dict",")",":","query","parameters","Returns",":","DataFrame"]
code: def get_events(self, params: dict = None) -> pd.DataFrame:
      """
      Get events from Google Calendar API
      Args:
          params (dict): query parameters
      Returns:
          DataFrame
      """
      service = self.connect()
      page_token = None
      events = pd.DataFrame(columns=self.events.get_columns())
      while True:
          events_result = (
              service.events()
              .list(
                  calendarId="primary", pageToken=page_token, **params
              )
              .execute()
          )
          events = pd.concat(
              [
                  events,
                  pd.DataFrame(
                      events_result.get("items", []),
                      columns=self.events.get_columns(),
                  ),
              ],
              ignore_index=True,
          )
          page_token = events_result.get("nextPageToken")
          if not page_token:
              break
      return events
  
imports: import os
  from collections import OrderedDict
  import pandas
  from google.auth.transport.requests import Request
  from google.oauth2.credentials import Credentials
  from googleapiclient.discovery import build
  from mindsdb.api.executor.data_types.response_type import RESPONSE_TYPE
  from mindsdb.integrations.libs.const import HANDLER_CONNECTION_ARG_TYPE
  from mindsdb.integrations.libs.api_handler import APIHandler, FuncParser
  from mindsdb.integrations.libs.response import HandlerStatusResponse, HandlerResponse
  from mindsdb.utilities import log
  from mindsdb.integrations.handlers.gmail_handler.utils import AuthException, google_auth_flow, save_creds_to_file
  from .google_calendar_tables import GoogleCalendarEventsTable
label_desc: Use image node_id 5 for calling the GoogleCalendarHandler obj's underlying member method code with example usage: obj.get_events(params) and returns: events