maleo-identity 0.0.55__py3-none-any.whl → 0.0.59__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of maleo-identity might be problematic. Click here for more details.
- maleo_identity/client/controllers/http/organization.py +300 -63
- maleo_identity/client/controllers/http/user.py +253 -52
- maleo_identity/client/services/organization.py +184 -418
- maleo_identity/client/services/user.py +159 -345
- maleo_identity/constants/organization_role.py +4 -2
- maleo_identity/constants/user.py +3 -0
- maleo_identity/constants/user_organization.py +19 -4
- maleo_identity/constants/user_organization_role.py +8 -4
- maleo_identity/constants/user_system_role.py +1 -10
- maleo_identity/enums/organization.py +1 -1
- maleo_identity/enums/organization_role.py +2 -1
- maleo_identity/enums/user.py +2 -0
- maleo_identity/enums/user_organization.py +8 -2
- maleo_identity/enums/user_organization_role.py +8 -1
- maleo_identity/enums/user_system_role.py +0 -5
- maleo_identity/models/responses/user.py +13 -1
- maleo_identity/models/schemas/user.py +5 -1
- maleo_identity/models/tables/organization.py +21 -2
- maleo_identity/models/tables/organization_registration_code.py +14 -6
- maleo_identity/models/tables/organization_role.py +35 -4
- maleo_identity/models/tables/user.py +17 -3
- maleo_identity/models/tables/user_organization.py +52 -4
- maleo_identity/models/tables/user_organization_role.py +63 -4
- maleo_identity/models/tables/user_profile.py +11 -4
- maleo_identity/models/tables/user_system_role.py +12 -5
- maleo_identity/models/transfers/general/organization.py +4 -1
- maleo_identity/models/transfers/general/organization_role.py +5 -1
- maleo_identity/models/transfers/general/user.py +6 -1
- maleo_identity/models/transfers/general/user_organization.py +5 -1
- maleo_identity/models/transfers/general/user_organization_role.py +10 -10
- maleo_identity/models/transfers/general/user_system_role.py +6 -3
- maleo_identity/models/transfers/results/client/user.py +7 -1
- maleo_identity/models/transfers/results/general/user.py +7 -1
- maleo_identity/models/transfers/results/repository/user.py +7 -1
- maleo_identity/types/results/client/user.py +5 -0
- maleo_identity/types/results/general/user.py +5 -0
- maleo_identity/types/results/repository/user.py +5 -0
- {maleo_identity-0.0.55.dist-info → maleo_identity-0.0.59.dist-info}/METADATA +3 -3
- {maleo_identity-0.0.55.dist-info → maleo_identity-0.0.59.dist-info}/RECORD +41 -41
- {maleo_identity-0.0.55.dist-info → maleo_identity-0.0.59.dist-info}/WHEEL +0 -0
- {maleo_identity-0.0.55.dist-info → maleo_identity-0.0.59.dist-info}/top_level.txt +0 -0
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
from typing import Dict, Optional
|
|
2
|
+
from maleo_foundation.authorization import Authorization
|
|
1
3
|
from maleo_foundation.managers.client.base import BearerAuth
|
|
2
4
|
from maleo_foundation.managers.client.maleo import MaleoClientHTTPController
|
|
3
5
|
from maleo_foundation.models.transfers.results.client.controllers.http \
|
|
4
6
|
import BaseClientHTTPControllerResults
|
|
7
|
+
from maleo_foundation.utils.merger import deep_merge
|
|
5
8
|
from maleo_identity.models.transfers.parameters.general.user \
|
|
6
9
|
import MaleoIdentityUserGeneralParametersTransfers
|
|
7
10
|
from maleo_identity.models.transfers.parameters.general.user_organization \
|
|
@@ -22,12 +25,14 @@ from maleo_identity.models.transfers.parameters.client.user_organization_role \
|
|
|
22
25
|
class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
23
26
|
async def get_users(
|
|
24
27
|
self,
|
|
25
|
-
parameters:MaleoIdentityUserClientParametersTransfers.GetMultiple
|
|
28
|
+
parameters:MaleoIdentityUserClientParametersTransfers.GetMultiple,
|
|
29
|
+
authorization:Optional[Authorization] = None,
|
|
30
|
+
headers:Optional[Dict[str, str]] = None
|
|
26
31
|
) -> BaseClientHTTPControllerResults:
|
|
27
32
|
"""Fetch users from MaleoIdentity"""
|
|
28
33
|
async with self._manager.get_client() as client:
|
|
29
34
|
#* Define URL
|
|
30
|
-
url = f"{self._manager.url
|
|
35
|
+
url = f"{self._manager.url}/v1/users/"
|
|
31
36
|
|
|
32
37
|
#* Parse parameters to query params
|
|
33
38
|
params = (
|
|
@@ -42,22 +47,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
42
47
|
)
|
|
43
48
|
)
|
|
44
49
|
|
|
50
|
+
#* Create headers
|
|
51
|
+
base_headers = {
|
|
52
|
+
"Content-Type": "application/json"
|
|
53
|
+
}
|
|
54
|
+
if headers is not None:
|
|
55
|
+
headers = deep_merge(
|
|
56
|
+
base_headers,
|
|
57
|
+
headers
|
|
58
|
+
)
|
|
59
|
+
else:
|
|
60
|
+
headers = base_headers
|
|
61
|
+
|
|
45
62
|
#* Create auth
|
|
46
|
-
token =
|
|
47
|
-
|
|
63
|
+
token = None
|
|
64
|
+
if authorization and authorization.scheme == "Bearer":
|
|
65
|
+
token = authorization.credentials
|
|
66
|
+
elif self._service_manager.token:
|
|
67
|
+
token = self._service_manager.token
|
|
68
|
+
auth = BearerAuth(token) if token else None
|
|
48
69
|
|
|
49
70
|
#* Send request and wait for response
|
|
50
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
71
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
51
72
|
return BaseClientHTTPControllerResults(response=response)
|
|
52
73
|
|
|
53
74
|
async def get_user(
|
|
54
75
|
self,
|
|
55
|
-
parameters:MaleoIdentityUserGeneralParametersTransfers.GetSingle
|
|
76
|
+
parameters:MaleoIdentityUserGeneralParametersTransfers.GetSingle,
|
|
77
|
+
authorization:Optional[Authorization] = None,
|
|
78
|
+
headers:Optional[Dict[str, str]] = None
|
|
56
79
|
) -> BaseClientHTTPControllerResults:
|
|
57
80
|
"""Fetch user from MaleoIdentity"""
|
|
58
81
|
async with self._manager.get_client() as client:
|
|
59
82
|
#* Define URL
|
|
60
|
-
url = f"{self._manager.url
|
|
83
|
+
url = f"{self._manager.url}/v1/users/{parameters.identifier}/{parameters.value}"
|
|
61
84
|
|
|
62
85
|
#* Parse parameters to query params
|
|
63
86
|
params = (
|
|
@@ -69,22 +92,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
69
92
|
.model_dump(exclude_none=True)
|
|
70
93
|
)
|
|
71
94
|
|
|
95
|
+
#* Create headers
|
|
96
|
+
base_headers = {
|
|
97
|
+
"Content-Type": "application/json"
|
|
98
|
+
}
|
|
99
|
+
if headers is not None:
|
|
100
|
+
headers = deep_merge(
|
|
101
|
+
base_headers,
|
|
102
|
+
headers
|
|
103
|
+
)
|
|
104
|
+
else:
|
|
105
|
+
headers = base_headers
|
|
106
|
+
|
|
72
107
|
#* Create auth
|
|
73
|
-
token =
|
|
74
|
-
|
|
108
|
+
token = None
|
|
109
|
+
if authorization and authorization.scheme == "Bearer":
|
|
110
|
+
token = authorization.credentials
|
|
111
|
+
elif self._service_manager.token:
|
|
112
|
+
token = self._service_manager.token
|
|
113
|
+
auth = BearerAuth(token) if token else None
|
|
75
114
|
|
|
76
115
|
#* Send request and wait for response
|
|
77
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
116
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
78
117
|
return BaseClientHTTPControllerResults(response=response)
|
|
79
118
|
|
|
80
119
|
async def create(
|
|
81
120
|
self,
|
|
82
|
-
parameters:MaleoIdentityUserGeneralParametersTransfers.Create
|
|
121
|
+
parameters:MaleoIdentityUserGeneralParametersTransfers.Create,
|
|
122
|
+
authorization:Optional[Authorization] = None,
|
|
123
|
+
headers:Optional[Dict[str, str]] = None
|
|
83
124
|
) -> BaseClientHTTPControllerResults:
|
|
84
125
|
"""Create a new user in MaleoIdentity"""
|
|
85
126
|
async with self._manager.get_client() as client:
|
|
86
127
|
#* Define URL
|
|
87
|
-
url = f"{self._manager.url
|
|
128
|
+
url = f"{self._manager.url}/v1/users/"
|
|
88
129
|
|
|
89
130
|
#* Declare body
|
|
90
131
|
json = (
|
|
@@ -106,9 +147,25 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
106
147
|
.model_dump(exclude_none=True)
|
|
107
148
|
)
|
|
108
149
|
|
|
150
|
+
#* Create headers
|
|
151
|
+
base_headers = {
|
|
152
|
+
"Content-Type": "application/json"
|
|
153
|
+
}
|
|
154
|
+
if headers is not None:
|
|
155
|
+
headers = deep_merge(
|
|
156
|
+
base_headers,
|
|
157
|
+
headers
|
|
158
|
+
)
|
|
159
|
+
else:
|
|
160
|
+
headers = base_headers
|
|
161
|
+
|
|
109
162
|
#* Create auth
|
|
110
|
-
token =
|
|
111
|
-
|
|
163
|
+
token = None
|
|
164
|
+
if authorization and authorization.scheme == "Bearer":
|
|
165
|
+
token = authorization.credentials
|
|
166
|
+
elif self._service_manager.token:
|
|
167
|
+
token = self._service_manager.token
|
|
168
|
+
auth = BearerAuth(token) if token else None
|
|
112
169
|
|
|
113
170
|
#* Send request and wait for response
|
|
114
171
|
response = await client.post(url=url, json=json, params=params, auth=auth)
|
|
@@ -116,12 +173,14 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
116
173
|
|
|
117
174
|
async def update(
|
|
118
175
|
self,
|
|
119
|
-
parameters:MaleoIdentityUserGeneralParametersTransfers.Update
|
|
176
|
+
parameters:MaleoIdentityUserGeneralParametersTransfers.Update,
|
|
177
|
+
authorization:Optional[Authorization] = None,
|
|
178
|
+
headers:Optional[Dict[str, str]] = None
|
|
120
179
|
) -> BaseClientHTTPControllerResults:
|
|
121
180
|
"""Update user's data in MaleoIdentity"""
|
|
122
181
|
async with self._manager.get_client() as client:
|
|
123
182
|
#* Define URL
|
|
124
|
-
url = f"{self._manager.url
|
|
183
|
+
url = f"{self._manager.url}/v1/users/{parameters.identifier}/{parameters.value}"
|
|
125
184
|
|
|
126
185
|
#* Declare body
|
|
127
186
|
json = (
|
|
@@ -143,9 +202,25 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
143
202
|
.model_dump(exclude_none=True)
|
|
144
203
|
)
|
|
145
204
|
|
|
205
|
+
#* Create headers
|
|
206
|
+
base_headers = {
|
|
207
|
+
"Content-Type": "application/json"
|
|
208
|
+
}
|
|
209
|
+
if headers is not None:
|
|
210
|
+
headers = deep_merge(
|
|
211
|
+
base_headers,
|
|
212
|
+
headers
|
|
213
|
+
)
|
|
214
|
+
else:
|
|
215
|
+
headers = base_headers
|
|
216
|
+
|
|
146
217
|
#* Create auth
|
|
147
|
-
token =
|
|
148
|
-
|
|
218
|
+
token = None
|
|
219
|
+
if authorization and authorization.scheme == "Bearer":
|
|
220
|
+
token = authorization.credentials
|
|
221
|
+
elif self._service_manager.token:
|
|
222
|
+
token = self._service_manager.token
|
|
223
|
+
auth = BearerAuth(token) if token else None
|
|
149
224
|
|
|
150
225
|
#* Send request and wait for response
|
|
151
226
|
response = await client.put(url=url, json=json, params=params, auth=auth)
|
|
@@ -153,16 +228,34 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
153
228
|
|
|
154
229
|
async def get_password(
|
|
155
230
|
self,
|
|
156
|
-
parameters:MaleoIdentityUserGeneralParametersTransfers.GetSinglePassword
|
|
231
|
+
parameters:MaleoIdentityUserGeneralParametersTransfers.GetSinglePassword,
|
|
232
|
+
authorization:Optional[Authorization] = None,
|
|
233
|
+
headers:Optional[Dict[str, str]] = None
|
|
157
234
|
) -> BaseClientHTTPControllerResults:
|
|
158
235
|
"""Get user's password from MaleoIdentity"""
|
|
159
236
|
async with self._manager.get_client() as client:
|
|
160
237
|
#* Define URL
|
|
161
|
-
url = f"{self._manager.url
|
|
238
|
+
url = f"{self._manager.url}/v1/users/{parameters.identifier}/{parameters.value}/password"
|
|
239
|
+
|
|
240
|
+
#* Create headers
|
|
241
|
+
base_headers = {
|
|
242
|
+
"Content-Type": "application/json"
|
|
243
|
+
}
|
|
244
|
+
if headers is not None:
|
|
245
|
+
headers = deep_merge(
|
|
246
|
+
base_headers,
|
|
247
|
+
headers
|
|
248
|
+
)
|
|
249
|
+
else:
|
|
250
|
+
headers = base_headers
|
|
162
251
|
|
|
163
252
|
#* Create auth
|
|
164
|
-
token =
|
|
165
|
-
|
|
253
|
+
token = None
|
|
254
|
+
if authorization and authorization.scheme == "Bearer":
|
|
255
|
+
token = authorization.credentials
|
|
256
|
+
elif self._service_manager.token:
|
|
257
|
+
token = self._service_manager.token
|
|
258
|
+
auth = BearerAuth(token) if token else None
|
|
166
259
|
|
|
167
260
|
#* Send request and wait for response
|
|
168
261
|
response = await client.get(url=url, auth=auth)
|
|
@@ -170,12 +263,14 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
170
263
|
|
|
171
264
|
async def get_user_system_roles(
|
|
172
265
|
self,
|
|
173
|
-
parameters:MaleoIdentityUserSystemRoleClientParametersTransfers.GetMultipleFromUser
|
|
266
|
+
parameters:MaleoIdentityUserSystemRoleClientParametersTransfers.GetMultipleFromUser,
|
|
267
|
+
authorization:Optional[Authorization] = None,
|
|
268
|
+
headers:Optional[Dict[str, str]] = None
|
|
174
269
|
) -> BaseClientHTTPControllerResults:
|
|
175
270
|
"""Get user's system roles from MaleoIdentity"""
|
|
176
271
|
async with self._manager.get_client() as client:
|
|
177
272
|
#* Define URL
|
|
178
|
-
url = f"{self._manager.url
|
|
273
|
+
url = f"{self._manager.url}/v1/users/{parameters.user_id}/system-roles/"
|
|
179
274
|
|
|
180
275
|
#* Parse parameters to query params
|
|
181
276
|
params = (
|
|
@@ -190,22 +285,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
190
285
|
)
|
|
191
286
|
)
|
|
192
287
|
|
|
288
|
+
#* Create headers
|
|
289
|
+
base_headers = {
|
|
290
|
+
"Content-Type": "application/json"
|
|
291
|
+
}
|
|
292
|
+
if headers is not None:
|
|
293
|
+
headers = deep_merge(
|
|
294
|
+
base_headers,
|
|
295
|
+
headers
|
|
296
|
+
)
|
|
297
|
+
else:
|
|
298
|
+
headers = base_headers
|
|
299
|
+
|
|
193
300
|
#* Create auth
|
|
194
|
-
token =
|
|
195
|
-
|
|
301
|
+
token = None
|
|
302
|
+
if authorization and authorization.scheme == "Bearer":
|
|
303
|
+
token = authorization.credentials
|
|
304
|
+
elif self._service_manager.token:
|
|
305
|
+
token = self._service_manager.token
|
|
306
|
+
auth = BearerAuth(token) if token else None
|
|
196
307
|
|
|
197
308
|
#* Send request and wait for response
|
|
198
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
309
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
199
310
|
return BaseClientHTTPControllerResults(response=response)
|
|
200
311
|
|
|
201
312
|
async def get_user_system_role(
|
|
202
313
|
self,
|
|
203
|
-
parameters:MaleoIdentityUserSystemRoleGeneralParametersTransfers.GetSingle
|
|
314
|
+
parameters:MaleoIdentityUserSystemRoleGeneralParametersTransfers.GetSingle,
|
|
315
|
+
authorization:Optional[Authorization] = None,
|
|
316
|
+
headers:Optional[Dict[str, str]] = None
|
|
204
317
|
) -> BaseClientHTTPControllerResults:
|
|
205
318
|
"""Get user's system role from MaleoIdentity"""
|
|
206
319
|
async with self._manager.get_client() as client:
|
|
207
320
|
#* Define URL
|
|
208
|
-
url = f"{self._manager.url
|
|
321
|
+
url = f"{self._manager.url}/v1/users/{parameters.user_id}/system-roles/{parameters.system_role}"
|
|
209
322
|
|
|
210
323
|
#* Parse parameters to query params
|
|
211
324
|
params = (
|
|
@@ -217,22 +330,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
217
330
|
.model_dump(exclude_none=True)
|
|
218
331
|
)
|
|
219
332
|
|
|
333
|
+
#* Create headers
|
|
334
|
+
base_headers = {
|
|
335
|
+
"Content-Type": "application/json"
|
|
336
|
+
}
|
|
337
|
+
if headers is not None:
|
|
338
|
+
headers = deep_merge(
|
|
339
|
+
base_headers,
|
|
340
|
+
headers
|
|
341
|
+
)
|
|
342
|
+
else:
|
|
343
|
+
headers = base_headers
|
|
344
|
+
|
|
220
345
|
#* Create auth
|
|
221
|
-
token =
|
|
222
|
-
|
|
346
|
+
token = None
|
|
347
|
+
if authorization and authorization.scheme == "Bearer":
|
|
348
|
+
token = authorization.credentials
|
|
349
|
+
elif self._service_manager.token:
|
|
350
|
+
token = self._service_manager.token
|
|
351
|
+
auth = BearerAuth(token) if token else None
|
|
223
352
|
|
|
224
353
|
#* Send request and wait for response
|
|
225
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
354
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
226
355
|
return BaseClientHTTPControllerResults(response=response)
|
|
227
356
|
|
|
228
357
|
async def get_user_organizations(
|
|
229
358
|
self,
|
|
230
|
-
parameters:MaleoIdentityUserOrganizationClientParametersTransfers.GetMultipleFromUser
|
|
359
|
+
parameters:MaleoIdentityUserOrganizationClientParametersTransfers.GetMultipleFromUser,
|
|
360
|
+
authorization:Optional[Authorization] = None,
|
|
361
|
+
headers:Optional[Dict[str, str]] = None
|
|
231
362
|
) -> BaseClientHTTPControllerResults:
|
|
232
363
|
"""Get user's organization roles from MaleoIdentity"""
|
|
233
364
|
async with self._manager.get_client() as client:
|
|
234
365
|
#* Define URL
|
|
235
|
-
url = f"{self._manager.url
|
|
366
|
+
url = f"{self._manager.url}/v1/users/{parameters.user_id}/organizations/"
|
|
236
367
|
|
|
237
368
|
#* Parse parameters to query params
|
|
238
369
|
params = (
|
|
@@ -247,22 +378,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
247
378
|
)
|
|
248
379
|
)
|
|
249
380
|
|
|
381
|
+
#* Create headers
|
|
382
|
+
base_headers = {
|
|
383
|
+
"Content-Type": "application/json"
|
|
384
|
+
}
|
|
385
|
+
if headers is not None:
|
|
386
|
+
headers = deep_merge(
|
|
387
|
+
base_headers,
|
|
388
|
+
headers
|
|
389
|
+
)
|
|
390
|
+
else:
|
|
391
|
+
headers = base_headers
|
|
392
|
+
|
|
250
393
|
#* Create auth
|
|
251
|
-
token =
|
|
252
|
-
|
|
394
|
+
token = None
|
|
395
|
+
if authorization and authorization.scheme == "Bearer":
|
|
396
|
+
token = authorization.credentials
|
|
397
|
+
elif self._service_manager.token:
|
|
398
|
+
token = self._service_manager.token
|
|
399
|
+
auth = BearerAuth(token) if token else None
|
|
253
400
|
|
|
254
401
|
#* Send request and wait for response
|
|
255
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
402
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
256
403
|
return BaseClientHTTPControllerResults(response=response)
|
|
257
404
|
|
|
258
405
|
async def get_user_organization(
|
|
259
406
|
self,
|
|
260
|
-
parameters:MaleoIdentityUserOrganizationGeneralParametersTransfers.GetSingle
|
|
407
|
+
parameters:MaleoIdentityUserOrganizationGeneralParametersTransfers.GetSingle,
|
|
408
|
+
authorization:Optional[Authorization] = None,
|
|
409
|
+
headers:Optional[Dict[str, str]] = None
|
|
261
410
|
) -> BaseClientHTTPControllerResults:
|
|
262
411
|
"""Get user's organization role from MaleoIdentity"""
|
|
263
412
|
async with self._manager.get_client() as client:
|
|
264
413
|
#* Define URL
|
|
265
|
-
url = f"{self._manager.url
|
|
414
|
+
url = f"{self._manager.url}/v1/users/{parameters.user_id}/organizations/{parameters.organization_id}"
|
|
266
415
|
|
|
267
416
|
#* Parse parameters to query params
|
|
268
417
|
params = (
|
|
@@ -274,22 +423,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
274
423
|
.model_dump(exclude_none=True)
|
|
275
424
|
)
|
|
276
425
|
|
|
426
|
+
#* Create headers
|
|
427
|
+
base_headers = {
|
|
428
|
+
"Content-Type": "application/json"
|
|
429
|
+
}
|
|
430
|
+
if headers is not None:
|
|
431
|
+
headers = deep_merge(
|
|
432
|
+
base_headers,
|
|
433
|
+
headers
|
|
434
|
+
)
|
|
435
|
+
else:
|
|
436
|
+
headers = base_headers
|
|
437
|
+
|
|
277
438
|
#* Create auth
|
|
278
|
-
token =
|
|
279
|
-
|
|
439
|
+
token = None
|
|
440
|
+
if authorization and authorization.scheme == "Bearer":
|
|
441
|
+
token = authorization.credentials
|
|
442
|
+
elif self._service_manager.token:
|
|
443
|
+
token = self._service_manager.token
|
|
444
|
+
auth = BearerAuth(token) if token else None
|
|
280
445
|
|
|
281
446
|
#* Send request and wait for response
|
|
282
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
447
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
283
448
|
return BaseClientHTTPControllerResults(response=response)
|
|
284
449
|
|
|
285
450
|
async def get_user_organization_roles(
|
|
286
451
|
self,
|
|
287
|
-
parameters:MaleoIdentityUserOrganizationRoleClientParametersTransfers.GetMultipleFromUserOrOrganization
|
|
452
|
+
parameters:MaleoIdentityUserOrganizationRoleClientParametersTransfers.GetMultipleFromUserOrOrganization,
|
|
453
|
+
authorization:Optional[Authorization] = None,
|
|
454
|
+
headers:Optional[Dict[str, str]] = None
|
|
288
455
|
) -> BaseClientHTTPControllerResults:
|
|
289
456
|
"""Get user's organization roles from MaleoIdentity"""
|
|
290
457
|
async with self._manager.get_client() as client:
|
|
291
458
|
#* Define URL
|
|
292
|
-
url = f"{self._manager.url
|
|
459
|
+
url = f"{self._manager.url}/v1/users/{parameters.user_id}/organizations/{parameters.organization_id}/roles/"
|
|
293
460
|
|
|
294
461
|
#* Parse parameters to query params
|
|
295
462
|
params = (
|
|
@@ -304,22 +471,40 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
304
471
|
)
|
|
305
472
|
)
|
|
306
473
|
|
|
474
|
+
#* Create headers
|
|
475
|
+
base_headers = {
|
|
476
|
+
"Content-Type": "application/json"
|
|
477
|
+
}
|
|
478
|
+
if headers is not None:
|
|
479
|
+
headers = deep_merge(
|
|
480
|
+
base_headers,
|
|
481
|
+
headers
|
|
482
|
+
)
|
|
483
|
+
else:
|
|
484
|
+
headers = base_headers
|
|
485
|
+
|
|
307
486
|
#* Create auth
|
|
308
|
-
token =
|
|
309
|
-
|
|
487
|
+
token = None
|
|
488
|
+
if authorization and authorization.scheme == "Bearer":
|
|
489
|
+
token = authorization.credentials
|
|
490
|
+
elif self._service_manager.token:
|
|
491
|
+
token = self._service_manager.token
|
|
492
|
+
auth = BearerAuth(token) if token else None
|
|
310
493
|
|
|
311
494
|
#* Send request and wait for response
|
|
312
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
495
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
313
496
|
return BaseClientHTTPControllerResults(response=response)
|
|
314
497
|
|
|
315
498
|
async def get_user_organization_role(
|
|
316
499
|
self,
|
|
317
|
-
parameters:MaleoIdentityUserOrganizationRoleGeneralParametersTransfers.GetSingle
|
|
500
|
+
parameters:MaleoIdentityUserOrganizationRoleGeneralParametersTransfers.GetSingle,
|
|
501
|
+
authorization:Optional[Authorization] = None,
|
|
502
|
+
headers:Optional[Dict[str, str]] = None
|
|
318
503
|
) -> BaseClientHTTPControllerResults:
|
|
319
504
|
"""Get user's organization role from MaleoIdentity"""
|
|
320
505
|
async with self._manager.get_client() as client:
|
|
321
506
|
#* Define URL
|
|
322
|
-
url = f"{self._manager.url
|
|
507
|
+
url = f"{self._manager.url}/v1/users/{parameters.user_id}/organizations/{parameters.organization_id}/roles/{parameters.key}"
|
|
323
508
|
|
|
324
509
|
#* Parse parameters to query params
|
|
325
510
|
params = (
|
|
@@ -331,10 +516,26 @@ class MaleoIdentityUserHTTPController(MaleoClientHTTPController):
|
|
|
331
516
|
.model_dump(exclude_none=True)
|
|
332
517
|
)
|
|
333
518
|
|
|
519
|
+
#* Create headers
|
|
520
|
+
base_headers = {
|
|
521
|
+
"Content-Type": "application/json"
|
|
522
|
+
}
|
|
523
|
+
if headers is not None:
|
|
524
|
+
headers = deep_merge(
|
|
525
|
+
base_headers,
|
|
526
|
+
headers
|
|
527
|
+
)
|
|
528
|
+
else:
|
|
529
|
+
headers = base_headers
|
|
530
|
+
|
|
334
531
|
#* Create auth
|
|
335
|
-
token =
|
|
336
|
-
|
|
532
|
+
token = None
|
|
533
|
+
if authorization and authorization.scheme == "Bearer":
|
|
534
|
+
token = authorization.credentials
|
|
535
|
+
elif self._service_manager.token:
|
|
536
|
+
token = self._service_manager.token
|
|
537
|
+
auth = BearerAuth(token) if token else None
|
|
337
538
|
|
|
338
539
|
#* Send request and wait for response
|
|
339
|
-
response = await client.get(url=url, params=params, auth=auth)
|
|
540
|
+
response = await client.get(url=url, params=params, headers=headers, auth=auth)
|
|
340
541
|
return BaseClientHTTPControllerResults(response=response)
|