class_docstr: BoxApp integration
class_docstr_tok: ["BoxApp","integration"]
docstr: Gather the Box Admin Events
  
  The ideal way to do this would be to use the boxsdk.events.Events class and the
  `get_events` method to retrieve these events. However, this method does allow you
  to pass keyword arguments (such as params) which are needed for specifying the
  'created_after' parameter.
  
  Returns:
      bool or list: If the execution fails for some reason, return False.
          Otherwise, return a list of box admin event entries.
docstr_tok: ["Gather","the","Box","Admin","Events","The","ideal","way","to","do","this","would","be","to","use","the","boxsdk.events.Events","class","and","the","`","get_events","`","method","to","retrieve","these","events",".","However",",","this","method","does","allow","you","to","pass","keyword","arguments","(","such","as","params",")","which","are","needed","for","specifying","the","'created_after","'","parameter",".","Returns",":","bool","or","list",":","If","the","execution","fails","for","some","reason",",","return","False",".","Otherwise",",","return","a","list","of","box","admin","event","entries","."]
code: def _gather_logs(self):
      """Gather the Box Admin Events
  
      The ideal way to do this would be to use the boxsdk.events.Events class and the
      `get_events` method to retrieve these events. However, this method does allow you
      to pass keyword arguments (such as params) which are needed for specifying the
      'created_after' parameter.
  
      Returns:
          bool or list: If the execution fails for some reason, return False.
              Otherwise, return a list of box admin event entries.
      """
      if not self._create_client():
          LOGGER.error("[%s] Could not create client", self)
          return False
  
      result, response = self._make_request()
  
      # If the result is False, errors would be previously logged up
      # the stack before this, so just return False
      if not result:
          return False
  
      if not response:
          LOGGER.error("[%s] No results received in request", self)
          return False
  
      self._more_to_poll = (
          int(response["chunk_size"]) >= self._MAX_CHUNK_SIZE
      )
  
      events = response.get("entries", [])
      if not events:
          LOGGER.info("[%s] No events found in result", self)
          return False
  
      self._next_stream_position = response["next_stream_position"]
  
      self._last_timestamp = events[-1]["created_at"]
  
      return events
  
file_path: streamalert/streamalert/apps/_apps/box.py
imports: import json
  from boxsdk import Client, JWTAuth
  from boxsdk.exception import BoxException
  from boxsdk.object.events import EnterpriseEventsStreamType
  import requests
  from .None import AppIntegration, StreamAlertApp, get_logger, safe_timeout
label_desc: Use image node_id 8 for calling the BoxApp obj's underlying member method code with example usage: obj._gather_logs() and returns: events, False, False, False, False