Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added saasus_sdk_python/.DS_Store
Binary file not shown.
3 changes: 2 additions & 1 deletion saasus_sdk_python/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,8 @@ def fastapi_auth(request: Request) -> Union[dict, HTTPException]:
auth_header = request.headers.get("Authorization", "")
token = auth_header.replace("Bearer ", "") if "Bearer " in auth_header else ""
referer = request.headers.get("Referer", "")
user_info, error = auth.authenticate(id_token=token, referer=referer)
x_saasus_trace_id = request.headers.get("X-SaaSus-Trace-Id", "")
user_info, error = auth.authenticate(id_token=token, referer=referer, x_saasus_trace_id=x_saasus_trace_id)
Comment on lines 51 to +53
if error:
raise HTTPException(status_code=401, detail=str(error))
return user_info
Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/apilog_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@

class SignedApilogApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.client = Client()
self.configuration.default_headers = {}
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines +9 to +15
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")

def call_api(self, resource_path, method,
Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/auth_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,11 @@

class SignedAuthApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
self.client = Client()
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")
super().__init__(*args, **kwargs)
Comment on lines +9 to 15

Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/awsmarketplace_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@

class SignedAwsmarketplaceApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.client = Client()
self.configuration.default_headers = {}
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines +9 to +15
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")

def call_api(self, resource_path, method,
Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/billing_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@

class SignedBillingApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.client = Client()
self.configuration.default_headers = {}
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines +9 to +15
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")

def call_api(self, resource_path, method,
Expand Down
3 changes: 3 additions & 0 deletions saasus_sdk_python/client/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ def __new__(cls):
cls._instance = super().__new__(cls)
cls._instance.referer = None
cls._instance.x_saasus_referer = None
cls._instance.x_saasus_trace_id = None
cls._instance.api_key = os.getenv("SAASUS_API_KEY", "")
cls._instance.secret_key = os.getenv("SAASUS_SECRET_KEY", "")
cls._instance.saas_id = os.getenv("SAASUS_SAAS_ID", "")
Expand Down Expand Up @@ -55,4 +56,6 @@ def set_referer_header(self, header_params: dict) -> dict:
header_params["Referer"] = self.referer
if self.x_saasus_referer:
header_params["X-SaaSus-Referer"] = self.x_saasus_referer
if self.x_saasus_trace_id:
header_params["X-SaaSus-Trace-Id"] = self.x_saasus_trace_id
return header_params
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/communication_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@

class SignedCommunicationApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.client = Client()
self.configuration.default_headers = {}
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines +9 to +15
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")

def call_api(self, resource_path, method,
Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/integration_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,13 @@

class SignedIntegrationApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.client = Client()
self.configuration.default_headers = {}
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines +9 to +15
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")

def call_api(self, resource_path, method,
Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/client/pricing_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,13 @@

class SignedPricingApiClient(ApiClient):

def __init__(self, referer=None, x_saasus_referer=None, *args, **kwargs):
def __init__(self, referer=None, x_saasus_referer=None, x_saasus_trace_id=None, *args, **kwargs):
super().__init__(*args, **kwargs)
self.client = Client()
self.configuration.default_headers = {}
self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines +8 to +14

def call_api(self, resource_path, method,
path_params=None, query_params=None, header_params=None,
Expand Down
3 changes: 2 additions & 1 deletion saasus_sdk_python/middleware/middleware.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,13 @@ def __init__(self):
self.client = Client()
self.base_url = os.getenv("SAASUS_BASE_URL", "https://api.saasus.io/v1")

def authenticate(self, id_token: str, referer: str | None = None, x_saasus_referer: str | None = None) -> tuple[None, AuthenticationError] | tuple[UserInfo, None] | tuple[None, ErrorResponse]: # noqa: E501
def authenticate(self, id_token: str, referer: str | None = None, x_saasus_referer: str | None = None, x_saasus_trace_id: str | None = None) -> tuple[None, AuthenticationError] | tuple[UserInfo, None] | tuple[None, ErrorResponse]: # noqa: E501
if not id_token:
return None, AuthenticationError("Invalid Authorization header")

self.client.referer = referer
self.client.x_saasus_referer = x_saasus_referer
self.client.x_saasus_trace_id = x_saasus_trace_id
Comment on lines 33 to +35
try:
response = self.user_info(id_token)
return response, None
Expand Down
Binary file added test/.DS_Store
Binary file not shown.