Skip to content

Commit 7b53d67

Browse files
authored
Merge pull request #43 from bugout-dev/auth-type-for-journal-permissions
Auth type for journal permissions
2 parents d287ec2 + 754adcf commit 7b53d67

File tree

3 files changed

+31
-5
lines changed

3 files changed

+31
-5
lines changed

bugout/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
__email__ = "engineering@bugout.dev"
99
__license__ = "MIT"
10-
__version__ = "0.2.3"
10+
__version__ = "0.2.4"
1111

1212
__all__ = (
1313
"__author__",

bugout/app.py

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -424,10 +424,16 @@ def get_journal_permissions(
424424
journal_id: Union[str, uuid.UUID],
425425
holder_ids: Optional[List[Union[str, uuid.UUID]]] = None,
426426
timeout: float = REQUESTS_TIMEOUT,
427+
auth_type: str = data.AuthType.bearer.name,
428+
**kwargs: Dict[str, Any],
427429
) -> data.BugoutJournalPermissions:
428430
self.journal.timeout = timeout
429431
return self.journal.get_journal_permissions(
430-
token=token, journal_id=journal_id, holder_ids=holder_ids
432+
token=token,
433+
journal_id=journal_id,
434+
holder_ids=holder_ids,
435+
auth_type=data.AuthType[auth_type],
436+
**kwargs,
431437
)
432438

433439
def get_journal_scopes(
@@ -447,6 +453,8 @@ def update_journal_scopes(
447453
holder_id: Union[str, uuid.UUID],
448454
permission_list: List[str],
449455
timeout: float = REQUESTS_TIMEOUT,
456+
auth_type: str = data.AuthType.bearer.name,
457+
**kwargs: Dict[str, Any],
450458
) -> data.BugoutJournalScopeSpecs:
451459
self.journal.timeout = timeout
452460
return self.journal.update_journal_scopes(
@@ -455,6 +463,8 @@ def update_journal_scopes(
455463
holder_type=data.HolderType(holder_type),
456464
holder_id=holder_id,
457465
permission_list=permission_list,
466+
auth_type=data.AuthType[auth_type],
467+
**kwargs,
458468
)
459469

460470
def delete_journal_scopes(
@@ -465,6 +475,8 @@ def delete_journal_scopes(
465475
holder_id: Union[str, uuid.UUID],
466476
permission_list: List[str],
467477
timeout: float = REQUESTS_TIMEOUT,
478+
auth_type: str = data.AuthType.bearer.name,
479+
**kwargs: Dict[str, Any],
468480
) -> data.BugoutJournalScopeSpecs:
469481
self.journal.timeout = timeout
470482
return self.journal.delete_journal_scopes(
@@ -473,6 +485,8 @@ def delete_journal_scopes(
473485
holder_type=data.HolderType(holder_type),
474486
holder_id=holder_id,
475487
permission_list=permission_list,
488+
auth_type=data.AuthType[auth_type],
489+
**kwargs,
476490
)
477491

478492
# Journal handlers

bugout/journal.py

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,11 +81,15 @@ def get_journal_permissions(
8181
token: Union[str, uuid.UUID],
8282
journal_id: Union[str, uuid.UUID],
8383
holder_ids: Optional[List[Union[str, uuid.UUID]]] = None,
84+
auth_type: AuthType = AuthType.bearer,
85+
**kwargs: Dict[str, Any],
8486
) -> BugoutJournalPermissions:
8587
journal_scopes_path = f"journals/{journal_id}/permissions"
8688
headers = {
87-
"Authorization": f"Bearer {token}",
89+
"Authorization": f"{auth_type.value} {token}",
8890
}
91+
if "headers" in kwargs.keys():
92+
headers.update(kwargs["headers"])
8993
query_params = {}
9094
if holder_ids is not None:
9195
holder_ids_string = [str(holder_id) for holder_id in holder_ids]
@@ -118,6 +122,8 @@ def update_journal_scopes(
118122
holder_type: HolderType,
119123
holder_id: Union[str, uuid.UUID],
120124
permission_list: List[str],
125+
auth_type: AuthType = AuthType.bearer,
126+
**kwargs: Dict[str, Any],
121127
) -> BugoutJournalScopeSpecs:
122128
journal_scopes_path = f"journals/{journal_id}/scopes"
123129
json = {
@@ -126,8 +132,10 @@ def update_journal_scopes(
126132
"permission_list": permission_list,
127133
}
128134
headers = {
129-
"Authorization": f"Bearer {token}",
135+
"Authorization": f"{auth_type.value} {token}",
130136
}
137+
if "headers" in kwargs.keys():
138+
headers.update(kwargs["headers"])
131139
result = self._call(
132140
method=Method.post, path=journal_scopes_path, headers=headers, json=json
133141
)
@@ -140,6 +148,8 @@ def delete_journal_scopes(
140148
holder_type: HolderType,
141149
holder_id: Union[str, uuid.UUID],
142150
permission_list: List[str],
151+
auth_type: AuthType = AuthType.bearer,
152+
**kwargs: Dict[str, Any],
143153
) -> BugoutJournalScopeSpecs:
144154
journal_scopes_path = f"journals/{journal_id}/scopes"
145155
json = {
@@ -148,8 +158,10 @@ def delete_journal_scopes(
148158
"permission_list": permission_list,
149159
}
150160
headers = {
151-
"Authorization": f"Bearer {token}",
161+
"Authorization": f"{auth_type.value} {token}",
152162
}
163+
if "headers" in kwargs.keys():
164+
headers.update(kwargs["headers"])
153165
result = self._call(
154166
method=Method.delete, path=journal_scopes_path, headers=headers, json=json
155167
)

0 commit comments

Comments
 (0)