Skip to content

Commit 04d06a5

Browse files
committed
chore: Fixed Vulnerabilities issues
1 parent 69fd9f0 commit 04d06a5

File tree

2 files changed

+80
-48
lines changed

2 files changed

+80
-48
lines changed

ShipthisAPI/shipthisapi.py

Lines changed: 60 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,79 @@
11
from typing import Dict, List
22
import requests
3+
4+
35
class ShipthisAPI:
4-
base_api_endpoint = 'https://api.shipthis.co/api/v3/'
6+
base_api_endpoint = "https://api.shipthis.co/api/v3/"
57

6-
def __init__(self, organisation: str, x_api_key:str, user_type='employee', region_id: str=None, location_id: str=None) -> None:
8+
def __init__(
9+
self,
10+
organisation: str,
11+
x_api_key: str,
12+
user_type="employee",
13+
region_id: str = None,
14+
location_id: str = None,
15+
) -> None:
716
self.x_api_key = x_api_key
817
self.organisation_id = organisation
918
self.user_type = user_type
1019
self.region_id = region_id
1120
self.location_id = location_id
1221

13-
1422
def set_region_location(self, region_id, location_id):
1523
self.region_id = region_id
1624
self.location_id = location_id
17-
18-
def _make_request(self, method: str, path: str, query_params: str=None, request_data=None) -> None:
25+
26+
def _make_request(
27+
self, method: str, path: str, query_params: str = None, request_data=None
28+
) -> None:
1929
headers = {
2030
"x-api-key": self.x_api_key,
2131
"organisation": self.organisation_id,
2232
"user_type": self.user_type,
23-
"location": 'new_york'
33+
"location": "new_york",
2434
}
25-
fetched_response = requests.request(method, self.base_api_endpoint + path, data=request_data or {}, headers=headers, params=query_params)
35+
fetched_response = requests.request(
36+
method,
37+
self.base_api_endpoint + path,
38+
data=request_data or {},
39+
headers=headers,
40+
params=query_params,
41+
)
2642
result = fetched_response.json()
27-
43+
2844
if fetched_response.status_code == 200:
2945
if result.get("success"):
3046
return result.get("data")
3147
else:
32-
error_message = result.get("errors") or "API call failed. Please check your internet connection or try again later"
33-
return error_message[0].get('message') if error_message[0].get('message') else "Please provide the necessary requirements or try again later"
48+
error_message = (
49+
result.get("errors")
50+
or "API call failed. Please check your internet connection or try again later"
51+
)
52+
return (
53+
error_message[0].get("message")
54+
if error_message[0].get("message")
55+
else "Please provide the necessary requirements or try again later"
56+
)
3457
else:
35-
return "Internal Server error, please try again later"
58+
return f"Request failed with status {fetched_response.status_code}: {fetched_response.text}"
3659

37-
def info(self) -> Dict:
38-
info_resp = self._make_request('GET', 'auth/info')
60+
def info(self) -> Dict:
61+
info_resp = self._make_request("GET", "auth/info")
3962
return info_resp
40-
41-
4263

43-
def get_one_item(self, collection_name: str, params=None) -> Dict:
44-
resp = self._make_request('GET', 'incollection/' + collection_name)
45-
if isinstance(resp, dict):
64+
def get_one_item(self, collection_name: str, params=None) -> Dict:
65+
resp = self._make_request("GET", "incollection/" + collection_name)
66+
if isinstance(resp, dict):
4667
if resp.get("items"):
4768
# return first elem
4869
return resp.get("items")[0]
4970
else:
5071
return resp
5172

5273
def get_list(self, collection_name: str, params=None) -> List[Dict] or str:
53-
get_list_response = self._make_request('GET', 'incollection/' + collection_name, params)
74+
get_list_response = self._make_request(
75+
"GET", "incollection/" + collection_name, params
76+
)
5477
if isinstance(get_list_response, str):
5578
return get_list_response
5679
else:
@@ -59,26 +82,35 @@ def get_list(self, collection_name: str, params=None) -> List[Dict] or str:
5982
else:
6083
return get_list_response
6184

62-
63-
def create_item(self, collection_name: str, data=None) -> Dict:
64-
resp = self._make_request('POST', 'incollection/' + collection_name, request_data={"reqbody": data})
65-
if isinstance(resp, dict):
85+
def create_item(self, collection_name: str, data=None) -> Dict:
86+
resp = self._make_request(
87+
"POST", "incollection/" + collection_name, request_data={"reqbody": data}
88+
)
89+
if isinstance(resp, dict):
6690
if resp.get("data"):
6791
return resp.get("data")
6892
else:
6993
return resp
7094

71-
def update_item(self, collection_name: str, object_id: str, updated_data=None) -> Dict:
72-
resp = self._make_request('PUT', 'incollection/' + collection_name + '/' + object_id, request_data={"reqbody": updated_data})
73-
if isinstance(resp, dict):
95+
def update_item(
96+
self, collection_name: str, object_id: str, updated_data=None
97+
) -> Dict:
98+
resp = self._make_request(
99+
"PUT",
100+
"incollection/" + collection_name + "/" + object_id,
101+
request_data={"reqbody": updated_data},
102+
)
103+
if isinstance(resp, dict):
74104
if resp.get("data"):
75105
return resp.get("data")
76106
else:
77107
return resp
78108

79109
def delete_item(self, collection_name: str, object_id: str) -> Dict:
80-
resp = self._make_request('DELETE', 'incollection/' + collection_name + '/' + object_id)
110+
resp = self._make_request(
111+
"DELETE", "incollection/" + collection_name + "/" + object_id
112+
)
81113
# if isinstance(resp, str):
82114
# return resp
83115
# else:
84-
return resp
116+
return resp

requirements.txt

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
1-
bleach==4.1.0
1+
bleach==6.1.0
22
bump2version==1.0.1
33
bumpversion==0.6.0
4-
certifi==2021.5.30
5-
charset-normalizer==2.0.6
6-
colorama==0.4.4
7-
docutils==0.17.1
8-
idna==3.2
9-
importlib-metadata==4.8.1
10-
keyring==23.2.1
11-
packaging==21.0
12-
pkginfo==1.7.1
13-
Pygments==2.10.0
14-
pyparsing==2.4.7
15-
readme-renderer==29.0
16-
requests==2.26.0
17-
requests-toolbelt==0.9.1
18-
rfc3986==1.5.0
4+
certifi==2024.7.4
5+
charset-normalizer==3.3.2
6+
colorama==0.4.6
7+
docutils==0.20.1
8+
idna==3.7
9+
importlib-metadata==7.0.0
10+
keyring==24.3.0
11+
packaging==23.2
12+
pkginfo==1.9.6
13+
Pygments==2.17.2
14+
pyparsing==3.1.1
15+
readme-renderer==42.0
16+
requests==2.32.5
17+
requests-toolbelt==1.0.0
18+
rfc3986==2.0.0
1919
six==1.16.0
20-
tqdm==4.62.3
21-
twine==3.4.2
22-
urllib3==1.26.7
20+
tqdm==4.66.3
21+
twine==4.0.2
22+
urllib3==2.6.3
2323
webencodings==0.5.1
24-
zipp==3.5.0
24+
zipp==3.19.1

0 commit comments

Comments
 (0)