laceworksdk.api.v2.cloud_activities

Lacework CloudActivities API wrapper.

 1# -*- coding: utf-8 -*-
 2"""
 3Lacework CloudActivities API wrapper.
 4"""
 5
 6from laceworksdk.api.base_endpoint import BaseEndpoint
 7
 8
 9class CloudActivitiesAPI(BaseEndpoint):
10
11    def __init__(self, session):
12        """
13        Initializes the CloudActivitiesAPI object.
14
15        :param session: An instance of the HttpSession class
16
17        :return CloudActivitiesAPI object.
18        """
19
20        super().__init__(session, "CloudActivities")
21
22    def get(self,
23            start_time=None,
24            end_time=None,
25            **request_params):
26        """
27        A method to get CloudActivities objects.
28
29        :param start_time: A "%Y-%m-%dT%H:%M:%SZ" structured timestamp to begin from.
30        :param end_time: A "%Y-%m-%dT%H:%M:%S%Z" structured timestamp to end at.
31        :param request_params: Additional request parameters.
32            (provides support for parameters that may be added in the future)
33
34        :return response json
35        """
36
37        params = self.build_dict_from_items(
38            request_params,
39            start_time=start_time,
40            end_time=end_time
41        )
42
43        response = self._session.get(self.build_url(), params=params)
44
45        return response.json()
46
47    def get_pages(self,
48                  **request_params):
49        """
50        A method to get pages of objects objects.
51
52        :param request_params: request parameters.
53
54        :return a generator which yields pages of CloudActivities objects returned by the Lacework API.
55        """
56
57        params = self.build_dict_from_items(
58            request_params
59        )
60
61        for page in self._session.get_pages(self.build_url(), params=params):
62            yield page.json()
63
64    def get_data_items(self,
65                       **request_params):
66        """
67        A method to get data items.
68
69        :param request_params: request parameters.
70
71        :return a generator which yields individual CloudActivities objects returned by the Lacework API.
72        """
73
74        params = self.build_dict_from_items(
75            request_params
76        )
77
78        for item in self._session.get_data_items(self.build_url(), params=params):
79            yield item
80
81    def search(self,
82               json=None):
83        """
84        A method to search CloudActivities objects.
85
86        :param json: A dictionary containing the necessary search parameters.
87            (timeFilter, filters, returns)
88
89        :return response json
90        """
91
92        response = self._session.post(self.build_url(action="search"), json=json)
93
94        return response.json()
class CloudActivitiesAPI(laceworksdk.api.base_endpoint.BaseEndpoint):
10class CloudActivitiesAPI(BaseEndpoint):
11
12    def __init__(self, session):
13        """
14        Initializes the CloudActivitiesAPI object.
15
16        :param session: An instance of the HttpSession class
17
18        :return CloudActivitiesAPI object.
19        """
20
21        super().__init__(session, "CloudActivities")
22
23    def get(self,
24            start_time=None,
25            end_time=None,
26            **request_params):
27        """
28        A method to get CloudActivities objects.
29
30        :param start_time: A "%Y-%m-%dT%H:%M:%SZ" structured timestamp to begin from.
31        :param end_time: A "%Y-%m-%dT%H:%M:%S%Z" structured timestamp to end at.
32        :param request_params: Additional request parameters.
33            (provides support for parameters that may be added in the future)
34
35        :return response json
36        """
37
38        params = self.build_dict_from_items(
39            request_params,
40            start_time=start_time,
41            end_time=end_time
42        )
43
44        response = self._session.get(self.build_url(), params=params)
45
46        return response.json()
47
48    def get_pages(self,
49                  **request_params):
50        """
51        A method to get pages of objects objects.
52
53        :param request_params: request parameters.
54
55        :return a generator which yields pages of CloudActivities objects returned by the Lacework API.
56        """
57
58        params = self.build_dict_from_items(
59            request_params
60        )
61
62        for page in self._session.get_pages(self.build_url(), params=params):
63            yield page.json()
64
65    def get_data_items(self,
66                       **request_params):
67        """
68        A method to get data items.
69
70        :param request_params: request parameters.
71
72        :return a generator which yields individual CloudActivities objects returned by the Lacework API.
73        """
74
75        params = self.build_dict_from_items(
76            request_params
77        )
78
79        for item in self._session.get_data_items(self.build_url(), params=params):
80            yield item
81
82    def search(self,
83               json=None):
84        """
85        A method to search CloudActivities objects.
86
87        :param json: A dictionary containing the necessary search parameters.
88            (timeFilter, filters, returns)
89
90        :return response json
91        """
92
93        response = self._session.post(self.build_url(action="search"), json=json)
94
95        return response.json()

A class used to implement base functionality for Lacework API Endpoints

CloudActivitiesAPI(session)
12    def __init__(self, session):
13        """
14        Initializes the CloudActivitiesAPI object.
15
16        :param session: An instance of the HttpSession class
17
18        :return CloudActivitiesAPI object.
19        """
20
21        super().__init__(session, "CloudActivities")

Initializes the CloudActivitiesAPI object.

Parameters
  • session: An instance of the HttpSession class

:return CloudActivitiesAPI object.

def get(self, start_time=None, end_time=None, **request_params):
23    def get(self,
24            start_time=None,
25            end_time=None,
26            **request_params):
27        """
28        A method to get CloudActivities objects.
29
30        :param start_time: A "%Y-%m-%dT%H:%M:%SZ" structured timestamp to begin from.
31        :param end_time: A "%Y-%m-%dT%H:%M:%S%Z" structured timestamp to end at.
32        :param request_params: Additional request parameters.
33            (provides support for parameters that may be added in the future)
34
35        :return response json
36        """
37
38        params = self.build_dict_from_items(
39            request_params,
40            start_time=start_time,
41            end_time=end_time
42        )
43
44        response = self._session.get(self.build_url(), params=params)
45
46        return response.json()

A method to get CloudActivities objects.

Parameters
  • start_time: A "%Y-%m-%dT%H:%M: %SZ" structured timestamp to begin from.
  • end_time: A "%Y-%m-%dT%H:%M: %S%Z" structured timestamp to end at.
  • request_params: Additional request parameters. (provides support for parameters that may be added in the future)

:return response json

def get_pages(self, **request_params):
48    def get_pages(self,
49                  **request_params):
50        """
51        A method to get pages of objects objects.
52
53        :param request_params: request parameters.
54
55        :return a generator which yields pages of CloudActivities objects returned by the Lacework API.
56        """
57
58        params = self.build_dict_from_items(
59            request_params
60        )
61
62        for page in self._session.get_pages(self.build_url(), params=params):
63            yield page.json()

A method to get pages of objects objects.

Parameters
  • request_params: request parameters.

:return a generator which yields pages of CloudActivities objects returned by the Lacework API.

def get_data_items(self, **request_params):
65    def get_data_items(self,
66                       **request_params):
67        """
68        A method to get data items.
69
70        :param request_params: request parameters.
71
72        :return a generator which yields individual CloudActivities objects returned by the Lacework API.
73        """
74
75        params = self.build_dict_from_items(
76            request_params
77        )
78
79        for item in self._session.get_data_items(self.build_url(), params=params):
80            yield item

A method to get data items.

Parameters
  • request_params: request parameters.

:return a generator which yields individual CloudActivities objects returned by the Lacework API.

def search(self, json=None):
82    def search(self,
83               json=None):
84        """
85        A method to search CloudActivities objects.
86
87        :param json: A dictionary containing the necessary search parameters.
88            (timeFilter, filters, returns)
89
90        :return response json
91        """
92
93        response = self._session.post(self.build_url(action="search"), json=json)
94
95        return response.json()

A method to search CloudActivities objects.

Parameters
  • json: A dictionary containing the necessary search parameters. (timeFilter, filters, returns)

:return response json