11import hmac
22import hashlib
3- from typing import Any , Dict , Tuple
3+ from typing import Any , Dict , Optional , Tuple
44import requests
55
66
@@ -22,24 +22,24 @@ def _compute_query(self, obj: Dict[str, Any]) -> str:
2222 filtered = {k : str (v ) for k , v in obj .items () if v is not None }
2323 return urlencode (filtered )
2424
25- def generate_url (self , path : str , params : Dict [str , Any ] | None = None ) -> str :
25+ def generate_url (self , path : str , params : Optional [ Dict [str , Any ]] = None ) -> str :
2626 params = params or {}
2727 query = self ._compute_query ({** params , "access_key" : self .access_key })
2828 return f"{ self .base_url } { path } ?{ query } "
2929
30- def generate_signed_url (self , path : str , params : Dict [str , Any ] | None = None ) -> str :
30+ def generate_signed_url (self , path : str , params : Optional [ Dict [str , Any ]] = None ) -> str :
3131 params = params or {}
3232 query = self ._compute_query ({** params , "access_key" : self .access_key })
3333 signature = self ._sign_request (query )
3434 return f"{ self .base_url } { path } ?{ query } &signature={ signature } "
3535
36- def get (self , path : str , options : Dict [str , Any ] | None = None , signed : bool = False ,
36+ def get (self , path : str , options : Optional [ Dict [str , Any ]] = None , signed : bool = False ,
3737 ** request_kwargs : Any ) -> Tuple [Any , Dict [str , Any ]]:
3838 url = self .generate_signed_url (path , options ) if signed else self .generate_url (path , options )
3939 response = requests .get (url , ** request_kwargs )
4040 return response .content , dict (response .headers )
4141
42- def post (self , path : str , options : Dict [str , Any ] | None = None , ** request_kwargs : Any ) -> Tuple [Any , Dict [str , Any ]]:
42+ def post (self , path : str , options : Optional [ Dict [str , Any ]] = None , ** request_kwargs : Any ) -> Tuple [Any , Dict [str , Any ]]:
4343 url = f"{ self .base_url } { path } "
4444 headers = {"X-Access-Key" : self .access_key , ** request_kwargs .pop ("headers" , {})}
4545 response = requests .post (url , json = options or {}, headers = headers , ** request_kwargs )
@@ -51,7 +51,7 @@ def delete(self, path: str, **request_kwargs: Any) -> Any:
5151 response = requests .delete (url , headers = headers , ** request_kwargs )
5252 return response .json ()
5353
54- def patch (self , path : str , options : Dict [str , Any ] | None = None , ** request_kwargs : Any ) -> Any :
54+ def patch (self , path : str , options : Optional [ Dict [str , Any ]] = None , ** request_kwargs : Any ) -> Any :
5555 url = f"{ self .base_url } { path } "
5656 headers = {"X-Access-Key" : self .access_key , ** request_kwargs .pop ("headers" , {})}
5757 response = requests .patch (url , json = options or {}, headers = headers , ** request_kwargs )
0 commit comments