Skip to content

Commit 9ae8dcb

Browse files
author
Naor Livne
committed
adding reports sdk endpoint
1 parent caf0381 commit 9ae8dcb

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

NebulaPythonSDK/sdk.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,3 +170,20 @@ def update_device_group(self, device_group, config):
170170
response = requests.request("POST", url, data=payload, headers=headers, timeout=self.request_timeout)
171171
filtered_response = {"status_code": response.status_code, "reply": response.json()}
172172
return filtered_response
173+
174+
# list device_group configuration
175+
def list_reports(self, page_size=10, hostname=None, device_group=None, report_creation_time_filter="gt",
176+
report_creation_time=None, last_id=None):
177+
url = self.host + "/api/" + self.API_VERSION + "/reports"
178+
headers = self.headers
179+
querystring = {
180+
"page_size": page_size,
181+
"hostname": hostname,
182+
"device_group": device_group,
183+
"report_creation_time_filter": report_creation_time_filter,
184+
"report_creation_time": report_creation_time,
185+
"last_id": last_id
186+
}
187+
response = requests.request("GET", url, headers=headers, timeout=self.request_timeout, params=querystring)
188+
filtered_response = {"status_code": response.status_code, "reply": response.json()}
189+
return filtered_response

test/test_nebula_python_sdk.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -227,3 +227,12 @@ def test_delete_device_group_does_not_exists(self, device_group="test_non_existi
227227
reply = nebula_connection_object.delete_device_group(device_group)
228228
self.assertEqual(reply["status_code"], 403)
229229
self.assertFalse(reply["reply"]["device_group_exists"])
230+
231+
def test_list_reports(self):
232+
nebula_connection_object = nebula_connection()
233+
reply = nebula_connection_object.list_reports(hostname="test_non_existing_hostname",
234+
device_group="test_non_existing_device_group",
235+
report_creation_time=123, report_creation_time_filter="eq")
236+
self.assertEqual(reply["status_code"], 200)
237+
self.assertEqual(reply["reply"]["data"], None)
238+
self.assertEqual(reply["reply"]["last_id"], None)

0 commit comments

Comments
 (0)