class_docstr: A class for handling connections and interactions with the Frappe API.
  
  Attributes:
      client (FrappeClient): The `FrappeClient` object for interacting with the Frappe API.
      is_connected (bool): Whether or not the API client is connected to Frappe.
      domain (str): Frappe domain to send API requests to.
      access_token (str): OAuth token to use for authentication.
class_docstr_tok: ["A","class","for","handling","connections","and","interactions","with","the","Frappe","API",".","Attributes",":","client","(","FrappeClient",")",":","The","`","FrappeClient","`","object","for","interacting","with","the","Frappe","API",".","is_connected","(","bool",")",":","Whether","or","not","the","API","client","is","connected","to","Frappe",".","domain","(","str",")",":","Frappe","domain","to","send","API","requests","to",".","access_token","(","str",")",":","OAuth","token","to","use","for","authentication","."]
docstr: Calls the Frappe API method with the given params.
  
  Returns results as a pandas DataFrame.
  
  Args:
      method_name (str): Method name to call (e.g. get_document)
      params (Dict): Params to pass to the API call
docstr_tok: ["Calls","the","Frappe","API","method","with","the","given","params",".","Returns","results","as","a","pandas","DataFrame",".","Args",":","method_name","(","str",")",":","Method","name","to","call","(","e.g",".","get_document",")","params","(","Dict",")",":","Params","to","pass","to","the","API","call"]
code: def call_frappe_api(
      self, method_name: str = None, params: Dict = None
  ) -> pd.DataFrame:
      """Calls the Frappe API method with the given params.
  
      Returns results as a pandas DataFrame.
  
      Args:
          method_name (str): Method name to call (e.g. get_document)
          params (Dict): Params to pass to the API call
      """
      if method_name == "get_documents":
          return self._get_documents(params)
      if method_name == "get_document":
          return self._get_document(params)
      if method_name == "create_document":
          return self._create_document(params)
      raise NotImplementedError(
          "Method name {} not supported by Frappe API Handler".format(
              method_name
          )
      )
  
imports: import json
  import pandas
  import datetime
  from typing import Dict
  from mindsdb.integrations.handlers.frappe_handler.frappe_tables import FrappeDocumentsTable
  from mindsdb.integrations.handlers.frappe_handler.frappe_client import FrappeClient
  from mindsdb.integrations.libs.api_handler import APIHandler
  from mindsdb.integrations.libs.response import HandlerStatusResponse, HandlerResponse
  from mindsdb.utilities import log
  from mindsdb_sql import parse_sql
label_desc: Use image node_id 15 for calling the FrappeHandler obj's underlying member method code with example usage: obj.call_frappe_api(method_name, params) and returns: self, self, self