From 0b545ca5e01f69e45c4f1c06fc9035bfa4cd6a83 Mon Sep 17 00:00:00 2001 From: jaredkalmus <73199391+jaredkalmus@users.noreply.github.com> Date: Wed, 6 Jul 2022 16:43:01 -0500 Subject: [PATCH 1/3] Update sorted_fixes.py Implemented some great suggestions from Rick. Tested to confirm no behavior regression and connection errors are handled. --- Sorted Fixes/sorted_fixes.py | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/Sorted Fixes/sorted_fixes.py b/Sorted Fixes/sorted_fixes.py index 07e8c88..323c5ac 100644 --- a/Sorted Fixes/sorted_fixes.py +++ b/Sorted Fixes/sorted_fixes.py @@ -8,33 +8,44 @@ #adjust base_url value if your account is on a different platform base_url = "https://api.kennasecurity.com" fixes_url = base_url + "/fixes" +api_key = os.getenv("kenna_api_key") -headers = {"Accept": "application/json", "X-Risk-Token":os.environ.get("kenna_api_key"), "User-Agent": 'sorted_fixes/1.0.0 (Kenna Security)'} +if api_key is None: + print("Environment variable KENNA_API_KEY is non-existent") + sys.exit(1) + +headers = {"Accept": "application/json", "X-Risk-Token":api_key, "User-Agent": 'sorted_fixes/1.0.0 (Kenna Security)'} sorted_fixes = pd.DataFrame() try: - first_page = requests.get(fixes_url, headers=headers).json() -except ConnectionError: - print(f"Connection error detected. Please try again.") + first_page = requests.get(fixes_url, headers=headers) + first_page.raise_for_status() +except requests.exceptions.HTTPError as err: + print(err) sys.exit(1) +first_page = first_page.json() + total_count = first_page['meta']['total_count'] total_count = int(total_count) page = 1 pages = int(first_page['meta']['pages']) -print(f'{total_count} fixes found.') +print(f'{total_count} fixes found over {pages} pages.') while page <= pages: fixes_loop_url = fixes_url + "?page=" + str(page) - + try: - response = requests.get(fixes_loop_url, headers=headers).json() - except ConnectionError: - print(f"Connection error detected. Please try again.") + response = requests.get(fixes_loop_url, headers=headers) + response.raise_for_status() + except requests.exceptions.HTTPError as err: + print(err) sys.exit(1) + response = response.json() + print(f'Grabbing page #{page}...') fix_group = response['fixes'] From b86b3081729a6240aa002b6f605462d03ef4fa74 Mon Sep 17 00:00:00 2001 From: jaredkalmus <73199391+jaredkalmus@users.noreply.github.com> Date: Tue, 23 Apr 2024 13:35:51 -0500 Subject: [PATCH 2/3] Rename Readme.md to Readme.md --- .../Readme.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {Bulk_create_applications => Bulk_create_applicationsTest}/Readme.md (100%) diff --git a/Bulk_create_applications/Readme.md b/Bulk_create_applicationsTest/Readme.md similarity index 100% rename from Bulk_create_applications/Readme.md rename to Bulk_create_applicationsTest/Readme.md From d176ebd3e7f5f7793a7a6a5d796efcf51ad72c59 Mon Sep 17 00:00:00 2001 From: jaredkalmus <73199391+jaredkalmus@users.noreply.github.com> Date: Tue, 23 Apr 2024 13:37:16 -0500 Subject: [PATCH 3/3] Rename Readme.md to Readme.md --- .../Readme.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename {Bulk_create_applicationsTest => Bulk_create_applications}/Readme.md (100%) diff --git a/Bulk_create_applicationsTest/Readme.md b/Bulk_create_applications/Readme.md similarity index 100% rename from Bulk_create_applicationsTest/Readme.md rename to Bulk_create_applications/Readme.md