lusid-sdk 2.1.322__py3-none-any.whl → 2.1.390__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.
Files changed (106) hide show
  1. lusid/__init__.py +64 -0
  2. lusid/api/__init__.py +5 -1
  3. lusid/api/data_types_api.py +160 -0
  4. lusid/api/entities_api.py +172 -0
  5. lusid/api/funds_api.py +221 -8
  6. lusid/api/group_reconciliations_api.py +378 -0
  7. lusid/api/order_management_api.py +321 -0
  8. lusid/api/workspace_api.py +3433 -0
  9. lusid/configuration.py +16 -7
  10. lusid/models/__init__.py +60 -0
  11. lusid/models/accept_estimate_valuation_point_response.py +100 -0
  12. lusid/models/accumulation_event.py +3 -3
  13. lusid/models/action_id.py +1 -1
  14. lusid/models/amortisation_event.py +3 -3
  15. lusid/models/applicable_instrument_event.py +14 -2
  16. lusid/models/bond_coupon_event.py +3 -3
  17. lusid/models/bond_default_event.py +3 -3
  18. lusid/models/bond_principal_event.py +3 -3
  19. lusid/models/calendar.py +17 -2
  20. lusid/models/capital_distribution_event.py +3 -3
  21. lusid/models/cash_dividend_event.py +3 -3
  22. lusid/models/cash_flow_event.py +3 -3
  23. lusid/models/close_event.py +3 -3
  24. lusid/models/close_period_diary_entry_request.py +1 -1
  25. lusid/models/create_group_reconciliation_comparison_ruleset_request.py +97 -0
  26. lusid/models/custom_entity_definition.py +17 -2
  27. lusid/models/custom_entity_type.py +17 -2
  28. lusid/models/data_type.py +14 -8
  29. lusid/models/data_type_entity.py +131 -0
  30. lusid/models/diary_entry.py +1 -1
  31. lusid/models/diary_entry_request.py +1 -1
  32. lusid/models/dividend_option_event.py +3 -3
  33. lusid/models/dividend_reinvestment_event.py +3 -3
  34. lusid/models/entity_change_item.py +121 -0
  35. lusid/models/exercise_event.py +3 -3
  36. lusid/models/expiry_event.py +3 -3
  37. lusid/models/fee.py +1 -1
  38. lusid/models/fee_request.py +1 -1
  39. lusid/models/flow_conventions.py +1 -1
  40. lusid/models/fund_amount.py +1 -1
  41. lusid/models/fund_configuration.py +6 -6
  42. lusid/models/fund_configuration_request.py +6 -6
  43. lusid/models/fund_details.py +74 -0
  44. lusid/models/future_expiry_event.py +3 -3
  45. lusid/models/futures_contract_details.py +6 -1
  46. lusid/models/fx_forward_settlement_event.py +3 -3
  47. lusid/models/generated_event_diagnostics.py +75 -0
  48. lusid/models/group_reconciliation_aggregate_attribute_rule.py +84 -0
  49. lusid/models/group_reconciliation_aggregate_comparison_rule_operand.py +71 -0
  50. lusid/models/group_reconciliation_comparison_rule_string_value_map.py +73 -0
  51. lusid/models/group_reconciliation_comparison_rule_tolerance.py +71 -0
  52. lusid/models/group_reconciliation_comparison_ruleset.py +125 -0
  53. lusid/models/group_reconciliation_core_attribute_rule.py +95 -0
  54. lusid/models/group_reconciliation_core_comparison_rule_operand.py +71 -0
  55. lusid/models/index_convention.py +1 -1
  56. lusid/models/informational_error_event.py +3 -3
  57. lusid/models/informational_event.py +3 -3
  58. lusid/models/instrument_event.py +7 -5
  59. lusid/models/instrument_event_instruction.py +19 -4
  60. lusid/models/instrument_event_type.py +2 -0
  61. lusid/models/instrument_resolution_detail.py +19 -5
  62. lusid/models/journal_entry_line.py +5 -3
  63. lusid/models/maturity_event.py +3 -3
  64. lusid/models/merger_event.py +3 -3
  65. lusid/models/new_instrument.py +10 -2
  66. lusid/models/open_event.py +3 -3
  67. lusid/models/order_graph_block_order_detail.py +1 -1
  68. lusid/models/order_update_request.py +121 -0
  69. lusid/models/paged_resource_list_of_valuation_point_overview.py +113 -0
  70. lusid/models/paged_resource_list_of_workspace.py +113 -0
  71. lusid/models/paged_resource_list_of_workspace_item.py +113 -0
  72. lusid/models/person.py +17 -2
  73. lusid/models/placement_update_request.py +6 -1
  74. lusid/models/previous_nav.py +3 -3
  75. lusid/models/quote_access_metadata_rule_id.py +2 -2
  76. lusid/models/quote_series_id.py +2 -2
  77. lusid/models/raw_vendor_event.py +3 -3
  78. lusid/models/reset_event.py +3 -3
  79. lusid/models/resource_list_of_entity_change_item.py +113 -0
  80. lusid/models/reverse_stock_split_event.py +3 -3
  81. lusid/models/scrip_dividend_event.py +20 -6
  82. lusid/models/share_class_amount.py +7 -9
  83. lusid/models/share_class_breakdown.py +9 -18
  84. lusid/models/share_class_dealing_breakdown.py +96 -0
  85. lusid/models/share_class_details.py +5 -3
  86. lusid/models/spin_off_event.py +3 -3
  87. lusid/models/stock_dividend_event.py +3 -3
  88. lusid/models/stock_split_event.py +21 -7
  89. lusid/models/swap_cash_flow_event.py +97 -0
  90. lusid/models/swap_principal_event.py +97 -0
  91. lusid/models/transaction_diagnostics.py +71 -0
  92. lusid/models/transition_event.py +3 -3
  93. lusid/models/trigger_event.py +3 -3
  94. lusid/models/update_orders_response.py +153 -0
  95. lusid/models/valuation_point_data_response.py +22 -2
  96. lusid/models/valuation_point_overview.py +125 -0
  97. lusid/models/weighted_instrument.py +9 -2
  98. lusid/models/workspace.py +92 -0
  99. lusid/models/workspace_creation_request.py +78 -0
  100. lusid/models/workspace_item.py +105 -0
  101. lusid/models/workspace_item_creation_request.py +91 -0
  102. lusid/models/workspace_item_update_request.py +82 -0
  103. lusid/models/workspace_update_request.py +69 -0
  104. {lusid_sdk-2.1.322.dist-info → lusid_sdk-2.1.390.dist-info}/METADATA +58 -1
  105. {lusid_sdk-2.1.322.dist-info → lusid_sdk-2.1.390.dist-info}/RECORD +106 -74
  106. {lusid_sdk-2.1.322.dist-info → lusid_sdk-2.1.390.dist-info}/WHEEL +0 -0
@@ -0,0 +1,3433 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ LUSID API
5
+
6
+ FINBOURNE Technology # noqa: E501
7
+
8
+ Contact: info@finbourne.com
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """
13
+
14
+
15
+ import re # noqa: F401
16
+ import io
17
+ import warnings
18
+
19
+ from pydantic.v1 import validate_arguments, ValidationError
20
+ from typing import overload, Optional, Union, Awaitable
21
+
22
+ from typing_extensions import Annotated
23
+ from datetime import datetime
24
+
25
+ from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
26
+
27
+ from typing import Optional
28
+
29
+ from lusid.models.deleted_entity_response import DeletedEntityResponse
30
+ from lusid.models.paged_resource_list_of_workspace import PagedResourceListOfWorkspace
31
+ from lusid.models.paged_resource_list_of_workspace_item import PagedResourceListOfWorkspaceItem
32
+ from lusid.models.workspace import Workspace
33
+ from lusid.models.workspace_creation_request import WorkspaceCreationRequest
34
+ from lusid.models.workspace_item import WorkspaceItem
35
+ from lusid.models.workspace_item_creation_request import WorkspaceItemCreationRequest
36
+ from lusid.models.workspace_item_update_request import WorkspaceItemUpdateRequest
37
+ from lusid.models.workspace_update_request import WorkspaceUpdateRequest
38
+
39
+ from lusid.api_client import ApiClient
40
+ from lusid.api_response import ApiResponse
41
+ from lusid.exceptions import ( # noqa: F401
42
+ ApiTypeError,
43
+ ApiValueError
44
+ )
45
+
46
+
47
+ class WorkspaceApi:
48
+ """NOTE: This class is auto generated by OpenAPI Generator
49
+ Ref: https://openapi-generator.tech
50
+
51
+ Do not edit the class manually.
52
+ """
53
+
54
+ def __init__(self, api_client=None) -> None:
55
+ if api_client is None:
56
+ api_client = ApiClient.get_default()
57
+ self.api_client = api_client
58
+
59
+ @overload
60
+ async def create_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, **kwargs) -> WorkspaceItem: # noqa: E501
61
+ ...
62
+
63
+ @overload
64
+ def create_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, async_req: Optional[bool]=True, **kwargs) -> WorkspaceItem: # noqa: E501
65
+ ...
66
+
67
+ @validate_arguments
68
+ def create_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[WorkspaceItem, Awaitable[WorkspaceItem]]: # noqa: E501
69
+ """[EXPERIMENTAL] CreatePersonalItem: Create a new item in a personal workspace. # noqa: E501
70
+
71
+ Create a new item in a personal workspace. # noqa: E501
72
+ This method makes a synchronous HTTP request by default. To make an
73
+ asynchronous HTTP request, please pass async_req=True
74
+
75
+ >>> thread = api.create_personal_item(workspace_name, workspace_item_creation_request, async_req=True)
76
+ >>> result = thread.get()
77
+
78
+ :param workspace_name: The item's workspace name. (required)
79
+ :type workspace_name: str
80
+ :param workspace_item_creation_request: The item to be created.
81
+ :type workspace_item_creation_request: WorkspaceItemCreationRequest
82
+ :param async_req: Whether to execute the request asynchronously.
83
+ :type async_req: bool, optional
84
+ :param _request_timeout: timeout setting for this request.
85
+ If one number provided, it will be total request
86
+ timeout. It can also be a pair (tuple) of
87
+ (connection, read) timeouts.
88
+ :return: Returns the result object.
89
+ If the method is called asynchronously,
90
+ returns the request thread.
91
+ :rtype: WorkspaceItem
92
+ """
93
+ kwargs['_return_http_data_only'] = True
94
+ if '_preload_content' in kwargs:
95
+ message = "Error! Please call the create_personal_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
96
+ raise ValueError(message)
97
+ if async_req is not None:
98
+ kwargs['async_req'] = async_req
99
+ return self.create_personal_item_with_http_info(workspace_name, workspace_item_creation_request, **kwargs) # noqa: E501
100
+
101
+ @validate_arguments
102
+ def create_personal_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, **kwargs) -> ApiResponse: # noqa: E501
103
+ """[EXPERIMENTAL] CreatePersonalItem: Create a new item in a personal workspace. # noqa: E501
104
+
105
+ Create a new item in a personal workspace. # noqa: E501
106
+ This method makes a synchronous HTTP request by default. To make an
107
+ asynchronous HTTP request, please pass async_req=True
108
+
109
+ >>> thread = api.create_personal_item_with_http_info(workspace_name, workspace_item_creation_request, async_req=True)
110
+ >>> result = thread.get()
111
+
112
+ :param workspace_name: The item's workspace name. (required)
113
+ :type workspace_name: str
114
+ :param workspace_item_creation_request: The item to be created.
115
+ :type workspace_item_creation_request: WorkspaceItemCreationRequest
116
+ :param async_req: Whether to execute the request asynchronously.
117
+ :type async_req: bool, optional
118
+ :param _preload_content: if False, the ApiResponse.data will
119
+ be set to none and raw_data will store the
120
+ HTTP response body without reading/decoding.
121
+ Default is True.
122
+ :type _preload_content: bool, optional
123
+ :param _return_http_data_only: response data instead of ApiResponse
124
+ object with status code, headers, etc
125
+ :type _return_http_data_only: bool, optional
126
+ :param _request_timeout: timeout setting for this request. If one
127
+ number provided, it will be total request
128
+ timeout. It can also be a pair (tuple) of
129
+ (connection, read) timeouts.
130
+ :param _request_auth: set to override the auth_settings for an a single
131
+ request; this effectively ignores the authentication
132
+ in the spec for a single request.
133
+ :type _request_auth: dict, optional
134
+ :type _content_type: string, optional: force content-type for the request
135
+ :return: Returns the result object.
136
+ If the method is called asynchronously,
137
+ returns the request thread.
138
+ :rtype: tuple(WorkspaceItem, status_code(int), headers(HTTPHeaderDict))
139
+ """
140
+
141
+ _params = locals()
142
+
143
+ _all_params = [
144
+ 'workspace_name',
145
+ 'workspace_item_creation_request'
146
+ ]
147
+ _all_params.extend(
148
+ [
149
+ 'async_req',
150
+ '_return_http_data_only',
151
+ '_preload_content',
152
+ '_request_timeout',
153
+ '_request_auth',
154
+ '_content_type',
155
+ '_headers'
156
+ ]
157
+ )
158
+
159
+ # validate the arguments
160
+ for _key, _val in _params['kwargs'].items():
161
+ if _key not in _all_params:
162
+ raise ApiTypeError(
163
+ "Got an unexpected keyword argument '%s'"
164
+ " to method create_personal_item" % _key
165
+ )
166
+ _params[_key] = _val
167
+ del _params['kwargs']
168
+
169
+ _collection_formats = {}
170
+
171
+ # process the path parameters
172
+ _path_params = {}
173
+ if _params['workspace_name']:
174
+ _path_params['workspaceName'] = _params['workspace_name']
175
+
176
+
177
+ # process the query parameters
178
+ _query_params = []
179
+ # process the header parameters
180
+ _header_params = dict(_params.get('_headers', {}))
181
+ # process the form parameters
182
+ _form_params = []
183
+ _files = {}
184
+ # process the body parameter
185
+ _body_params = None
186
+ if _params['workspace_item_creation_request'] is not None:
187
+ _body_params = _params['workspace_item_creation_request']
188
+
189
+ # set the HTTP header `Accept`
190
+ _header_params['Accept'] = self.api_client.select_header_accept(
191
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
192
+
193
+ # set the HTTP header `Content-Type`
194
+ _content_types_list = _params.get('_content_type',
195
+ self.api_client.select_header_content_type(
196
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
197
+ if _content_types_list:
198
+ _header_params['Content-Type'] = _content_types_list
199
+
200
+ # authentication setting
201
+ _auth_settings = ['oauth2'] # noqa: E501
202
+
203
+ _response_types_map = {
204
+ '201': "WorkspaceItem",
205
+ '400': "LusidValidationProblemDetails",
206
+ }
207
+
208
+ return self.api_client.call_api(
209
+ '/api/workspaces/personal/{workspaceName}/items', 'POST',
210
+ _path_params,
211
+ _query_params,
212
+ _header_params,
213
+ body=_body_params,
214
+ post_params=_form_params,
215
+ files=_files,
216
+ response_types_map=_response_types_map,
217
+ auth_settings=_auth_settings,
218
+ async_req=_params.get('async_req'),
219
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
220
+ _preload_content=_params.get('_preload_content', True),
221
+ _request_timeout=_params.get('_request_timeout'),
222
+ collection_formats=_collection_formats,
223
+ _request_auth=_params.get('_request_auth'))
224
+
225
+ @overload
226
+ async def create_personal_workspace(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, **kwargs) -> Workspace: # noqa: E501
227
+ ...
228
+
229
+ @overload
230
+ def create_personal_workspace(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, async_req: Optional[bool]=True, **kwargs) -> Workspace: # noqa: E501
231
+ ...
232
+
233
+ @validate_arguments
234
+ def create_personal_workspace(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Workspace, Awaitable[Workspace]]: # noqa: E501
235
+ """[EXPERIMENTAL] CreatePersonalWorkspace: Create a new personal workspace. # noqa: E501
236
+
237
+ Create a new personal workspace. # noqa: E501
238
+ This method makes a synchronous HTTP request by default. To make an
239
+ asynchronous HTTP request, please pass async_req=True
240
+
241
+ >>> thread = api.create_personal_workspace(workspace_creation_request, async_req=True)
242
+ >>> result = thread.get()
243
+
244
+ :param workspace_creation_request: The workspace to be created.
245
+ :type workspace_creation_request: WorkspaceCreationRequest
246
+ :param async_req: Whether to execute the request asynchronously.
247
+ :type async_req: bool, optional
248
+ :param _request_timeout: timeout setting for this request.
249
+ If one number provided, it will be total request
250
+ timeout. It can also be a pair (tuple) of
251
+ (connection, read) timeouts.
252
+ :return: Returns the result object.
253
+ If the method is called asynchronously,
254
+ returns the request thread.
255
+ :rtype: Workspace
256
+ """
257
+ kwargs['_return_http_data_only'] = True
258
+ if '_preload_content' in kwargs:
259
+ message = "Error! Please call the create_personal_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
260
+ raise ValueError(message)
261
+ if async_req is not None:
262
+ kwargs['async_req'] = async_req
263
+ return self.create_personal_workspace_with_http_info(workspace_creation_request, **kwargs) # noqa: E501
264
+
265
+ @validate_arguments
266
+ def create_personal_workspace_with_http_info(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, **kwargs) -> ApiResponse: # noqa: E501
267
+ """[EXPERIMENTAL] CreatePersonalWorkspace: Create a new personal workspace. # noqa: E501
268
+
269
+ Create a new personal workspace. # noqa: E501
270
+ This method makes a synchronous HTTP request by default. To make an
271
+ asynchronous HTTP request, please pass async_req=True
272
+
273
+ >>> thread = api.create_personal_workspace_with_http_info(workspace_creation_request, async_req=True)
274
+ >>> result = thread.get()
275
+
276
+ :param workspace_creation_request: The workspace to be created.
277
+ :type workspace_creation_request: WorkspaceCreationRequest
278
+ :param async_req: Whether to execute the request asynchronously.
279
+ :type async_req: bool, optional
280
+ :param _preload_content: if False, the ApiResponse.data will
281
+ be set to none and raw_data will store the
282
+ HTTP response body without reading/decoding.
283
+ Default is True.
284
+ :type _preload_content: bool, optional
285
+ :param _return_http_data_only: response data instead of ApiResponse
286
+ object with status code, headers, etc
287
+ :type _return_http_data_only: bool, optional
288
+ :param _request_timeout: timeout setting for this request. If one
289
+ number provided, it will be total request
290
+ timeout. It can also be a pair (tuple) of
291
+ (connection, read) timeouts.
292
+ :param _request_auth: set to override the auth_settings for an a single
293
+ request; this effectively ignores the authentication
294
+ in the spec for a single request.
295
+ :type _request_auth: dict, optional
296
+ :type _content_type: string, optional: force content-type for the request
297
+ :return: Returns the result object.
298
+ If the method is called asynchronously,
299
+ returns the request thread.
300
+ :rtype: tuple(Workspace, status_code(int), headers(HTTPHeaderDict))
301
+ """
302
+
303
+ _params = locals()
304
+
305
+ _all_params = [
306
+ 'workspace_creation_request'
307
+ ]
308
+ _all_params.extend(
309
+ [
310
+ 'async_req',
311
+ '_return_http_data_only',
312
+ '_preload_content',
313
+ '_request_timeout',
314
+ '_request_auth',
315
+ '_content_type',
316
+ '_headers'
317
+ ]
318
+ )
319
+
320
+ # validate the arguments
321
+ for _key, _val in _params['kwargs'].items():
322
+ if _key not in _all_params:
323
+ raise ApiTypeError(
324
+ "Got an unexpected keyword argument '%s'"
325
+ " to method create_personal_workspace" % _key
326
+ )
327
+ _params[_key] = _val
328
+ del _params['kwargs']
329
+
330
+ _collection_formats = {}
331
+
332
+ # process the path parameters
333
+ _path_params = {}
334
+
335
+ # process the query parameters
336
+ _query_params = []
337
+ # process the header parameters
338
+ _header_params = dict(_params.get('_headers', {}))
339
+ # process the form parameters
340
+ _form_params = []
341
+ _files = {}
342
+ # process the body parameter
343
+ _body_params = None
344
+ if _params['workspace_creation_request'] is not None:
345
+ _body_params = _params['workspace_creation_request']
346
+
347
+ # set the HTTP header `Accept`
348
+ _header_params['Accept'] = self.api_client.select_header_accept(
349
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
350
+
351
+ # set the HTTP header `Content-Type`
352
+ _content_types_list = _params.get('_content_type',
353
+ self.api_client.select_header_content_type(
354
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
355
+ if _content_types_list:
356
+ _header_params['Content-Type'] = _content_types_list
357
+
358
+ # authentication setting
359
+ _auth_settings = ['oauth2'] # noqa: E501
360
+
361
+ _response_types_map = {
362
+ '201': "Workspace",
363
+ '400': "LusidValidationProblemDetails",
364
+ }
365
+
366
+ return self.api_client.call_api(
367
+ '/api/workspaces/personal', 'POST',
368
+ _path_params,
369
+ _query_params,
370
+ _header_params,
371
+ body=_body_params,
372
+ post_params=_form_params,
373
+ files=_files,
374
+ response_types_map=_response_types_map,
375
+ auth_settings=_auth_settings,
376
+ async_req=_params.get('async_req'),
377
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
378
+ _preload_content=_params.get('_preload_content', True),
379
+ _request_timeout=_params.get('_request_timeout'),
380
+ collection_formats=_collection_formats,
381
+ _request_auth=_params.get('_request_auth'))
382
+
383
+ @overload
384
+ async def create_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, **kwargs) -> WorkspaceItem: # noqa: E501
385
+ ...
386
+
387
+ @overload
388
+ def create_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, async_req: Optional[bool]=True, **kwargs) -> WorkspaceItem: # noqa: E501
389
+ ...
390
+
391
+ @validate_arguments
392
+ def create_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[WorkspaceItem, Awaitable[WorkspaceItem]]: # noqa: E501
393
+ """[EXPERIMENTAL] CreateSharedItem: Create a new item in a shared workspace. # noqa: E501
394
+
395
+ Create a new item in a shared workspace. # noqa: E501
396
+ This method makes a synchronous HTTP request by default. To make an
397
+ asynchronous HTTP request, please pass async_req=True
398
+
399
+ >>> thread = api.create_shared_item(workspace_name, workspace_item_creation_request, async_req=True)
400
+ >>> result = thread.get()
401
+
402
+ :param workspace_name: The item's workspace name. (required)
403
+ :type workspace_name: str
404
+ :param workspace_item_creation_request: The item to be created.
405
+ :type workspace_item_creation_request: WorkspaceItemCreationRequest
406
+ :param async_req: Whether to execute the request asynchronously.
407
+ :type async_req: bool, optional
408
+ :param _request_timeout: timeout setting for this request.
409
+ If one number provided, it will be total request
410
+ timeout. It can also be a pair (tuple) of
411
+ (connection, read) timeouts.
412
+ :return: Returns the result object.
413
+ If the method is called asynchronously,
414
+ returns the request thread.
415
+ :rtype: WorkspaceItem
416
+ """
417
+ kwargs['_return_http_data_only'] = True
418
+ if '_preload_content' in kwargs:
419
+ message = "Error! Please call the create_shared_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
420
+ raise ValueError(message)
421
+ if async_req is not None:
422
+ kwargs['async_req'] = async_req
423
+ return self.create_shared_item_with_http_info(workspace_name, workspace_item_creation_request, **kwargs) # noqa: E501
424
+
425
+ @validate_arguments
426
+ def create_shared_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], workspace_item_creation_request : Annotated[Optional[WorkspaceItemCreationRequest], Field(description="The item to be created.")] = None, **kwargs) -> ApiResponse: # noqa: E501
427
+ """[EXPERIMENTAL] CreateSharedItem: Create a new item in a shared workspace. # noqa: E501
428
+
429
+ Create a new item in a shared workspace. # noqa: E501
430
+ This method makes a synchronous HTTP request by default. To make an
431
+ asynchronous HTTP request, please pass async_req=True
432
+
433
+ >>> thread = api.create_shared_item_with_http_info(workspace_name, workspace_item_creation_request, async_req=True)
434
+ >>> result = thread.get()
435
+
436
+ :param workspace_name: The item's workspace name. (required)
437
+ :type workspace_name: str
438
+ :param workspace_item_creation_request: The item to be created.
439
+ :type workspace_item_creation_request: WorkspaceItemCreationRequest
440
+ :param async_req: Whether to execute the request asynchronously.
441
+ :type async_req: bool, optional
442
+ :param _preload_content: if False, the ApiResponse.data will
443
+ be set to none and raw_data will store the
444
+ HTTP response body without reading/decoding.
445
+ Default is True.
446
+ :type _preload_content: bool, optional
447
+ :param _return_http_data_only: response data instead of ApiResponse
448
+ object with status code, headers, etc
449
+ :type _return_http_data_only: bool, optional
450
+ :param _request_timeout: timeout setting for this request. If one
451
+ number provided, it will be total request
452
+ timeout. It can also be a pair (tuple) of
453
+ (connection, read) timeouts.
454
+ :param _request_auth: set to override the auth_settings for an a single
455
+ request; this effectively ignores the authentication
456
+ in the spec for a single request.
457
+ :type _request_auth: dict, optional
458
+ :type _content_type: string, optional: force content-type for the request
459
+ :return: Returns the result object.
460
+ If the method is called asynchronously,
461
+ returns the request thread.
462
+ :rtype: tuple(WorkspaceItem, status_code(int), headers(HTTPHeaderDict))
463
+ """
464
+
465
+ _params = locals()
466
+
467
+ _all_params = [
468
+ 'workspace_name',
469
+ 'workspace_item_creation_request'
470
+ ]
471
+ _all_params.extend(
472
+ [
473
+ 'async_req',
474
+ '_return_http_data_only',
475
+ '_preload_content',
476
+ '_request_timeout',
477
+ '_request_auth',
478
+ '_content_type',
479
+ '_headers'
480
+ ]
481
+ )
482
+
483
+ # validate the arguments
484
+ for _key, _val in _params['kwargs'].items():
485
+ if _key not in _all_params:
486
+ raise ApiTypeError(
487
+ "Got an unexpected keyword argument '%s'"
488
+ " to method create_shared_item" % _key
489
+ )
490
+ _params[_key] = _val
491
+ del _params['kwargs']
492
+
493
+ _collection_formats = {}
494
+
495
+ # process the path parameters
496
+ _path_params = {}
497
+ if _params['workspace_name']:
498
+ _path_params['workspaceName'] = _params['workspace_name']
499
+
500
+
501
+ # process the query parameters
502
+ _query_params = []
503
+ # process the header parameters
504
+ _header_params = dict(_params.get('_headers', {}))
505
+ # process the form parameters
506
+ _form_params = []
507
+ _files = {}
508
+ # process the body parameter
509
+ _body_params = None
510
+ if _params['workspace_item_creation_request'] is not None:
511
+ _body_params = _params['workspace_item_creation_request']
512
+
513
+ # set the HTTP header `Accept`
514
+ _header_params['Accept'] = self.api_client.select_header_accept(
515
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
516
+
517
+ # set the HTTP header `Content-Type`
518
+ _content_types_list = _params.get('_content_type',
519
+ self.api_client.select_header_content_type(
520
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
521
+ if _content_types_list:
522
+ _header_params['Content-Type'] = _content_types_list
523
+
524
+ # authentication setting
525
+ _auth_settings = ['oauth2'] # noqa: E501
526
+
527
+ _response_types_map = {
528
+ '201': "WorkspaceItem",
529
+ '400': "LusidValidationProblemDetails",
530
+ }
531
+
532
+ return self.api_client.call_api(
533
+ '/api/workspaces/shared/{workspaceName}/items', 'POST',
534
+ _path_params,
535
+ _query_params,
536
+ _header_params,
537
+ body=_body_params,
538
+ post_params=_form_params,
539
+ files=_files,
540
+ response_types_map=_response_types_map,
541
+ auth_settings=_auth_settings,
542
+ async_req=_params.get('async_req'),
543
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
544
+ _preload_content=_params.get('_preload_content', True),
545
+ _request_timeout=_params.get('_request_timeout'),
546
+ collection_formats=_collection_formats,
547
+ _request_auth=_params.get('_request_auth'))
548
+
549
+ @overload
550
+ async def create_shared_workspace(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, **kwargs) -> Workspace: # noqa: E501
551
+ ...
552
+
553
+ @overload
554
+ def create_shared_workspace(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, async_req: Optional[bool]=True, **kwargs) -> Workspace: # noqa: E501
555
+ ...
556
+
557
+ @validate_arguments
558
+ def create_shared_workspace(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Workspace, Awaitable[Workspace]]: # noqa: E501
559
+ """[EXPERIMENTAL] CreateSharedWorkspace: Create a new shared workspace. # noqa: E501
560
+
561
+ Create a new shared workspace. # noqa: E501
562
+ This method makes a synchronous HTTP request by default. To make an
563
+ asynchronous HTTP request, please pass async_req=True
564
+
565
+ >>> thread = api.create_shared_workspace(workspace_creation_request, async_req=True)
566
+ >>> result = thread.get()
567
+
568
+ :param workspace_creation_request: The workspace to be created.
569
+ :type workspace_creation_request: WorkspaceCreationRequest
570
+ :param async_req: Whether to execute the request asynchronously.
571
+ :type async_req: bool, optional
572
+ :param _request_timeout: timeout setting for this request.
573
+ If one number provided, it will be total request
574
+ timeout. It can also be a pair (tuple) of
575
+ (connection, read) timeouts.
576
+ :return: Returns the result object.
577
+ If the method is called asynchronously,
578
+ returns the request thread.
579
+ :rtype: Workspace
580
+ """
581
+ kwargs['_return_http_data_only'] = True
582
+ if '_preload_content' in kwargs:
583
+ message = "Error! Please call the create_shared_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
584
+ raise ValueError(message)
585
+ if async_req is not None:
586
+ kwargs['async_req'] = async_req
587
+ return self.create_shared_workspace_with_http_info(workspace_creation_request, **kwargs) # noqa: E501
588
+
589
+ @validate_arguments
590
+ def create_shared_workspace_with_http_info(self, workspace_creation_request : Annotated[Optional[WorkspaceCreationRequest], Field(description="The workspace to be created.")] = None, **kwargs) -> ApiResponse: # noqa: E501
591
+ """[EXPERIMENTAL] CreateSharedWorkspace: Create a new shared workspace. # noqa: E501
592
+
593
+ Create a new shared workspace. # noqa: E501
594
+ This method makes a synchronous HTTP request by default. To make an
595
+ asynchronous HTTP request, please pass async_req=True
596
+
597
+ >>> thread = api.create_shared_workspace_with_http_info(workspace_creation_request, async_req=True)
598
+ >>> result = thread.get()
599
+
600
+ :param workspace_creation_request: The workspace to be created.
601
+ :type workspace_creation_request: WorkspaceCreationRequest
602
+ :param async_req: Whether to execute the request asynchronously.
603
+ :type async_req: bool, optional
604
+ :param _preload_content: if False, the ApiResponse.data will
605
+ be set to none and raw_data will store the
606
+ HTTP response body without reading/decoding.
607
+ Default is True.
608
+ :type _preload_content: bool, optional
609
+ :param _return_http_data_only: response data instead of ApiResponse
610
+ object with status code, headers, etc
611
+ :type _return_http_data_only: bool, optional
612
+ :param _request_timeout: timeout setting for this request. If one
613
+ number provided, it will be total request
614
+ timeout. It can also be a pair (tuple) of
615
+ (connection, read) timeouts.
616
+ :param _request_auth: set to override the auth_settings for an a single
617
+ request; this effectively ignores the authentication
618
+ in the spec for a single request.
619
+ :type _request_auth: dict, optional
620
+ :type _content_type: string, optional: force content-type for the request
621
+ :return: Returns the result object.
622
+ If the method is called asynchronously,
623
+ returns the request thread.
624
+ :rtype: tuple(Workspace, status_code(int), headers(HTTPHeaderDict))
625
+ """
626
+
627
+ _params = locals()
628
+
629
+ _all_params = [
630
+ 'workspace_creation_request'
631
+ ]
632
+ _all_params.extend(
633
+ [
634
+ 'async_req',
635
+ '_return_http_data_only',
636
+ '_preload_content',
637
+ '_request_timeout',
638
+ '_request_auth',
639
+ '_content_type',
640
+ '_headers'
641
+ ]
642
+ )
643
+
644
+ # validate the arguments
645
+ for _key, _val in _params['kwargs'].items():
646
+ if _key not in _all_params:
647
+ raise ApiTypeError(
648
+ "Got an unexpected keyword argument '%s'"
649
+ " to method create_shared_workspace" % _key
650
+ )
651
+ _params[_key] = _val
652
+ del _params['kwargs']
653
+
654
+ _collection_formats = {}
655
+
656
+ # process the path parameters
657
+ _path_params = {}
658
+
659
+ # process the query parameters
660
+ _query_params = []
661
+ # process the header parameters
662
+ _header_params = dict(_params.get('_headers', {}))
663
+ # process the form parameters
664
+ _form_params = []
665
+ _files = {}
666
+ # process the body parameter
667
+ _body_params = None
668
+ if _params['workspace_creation_request'] is not None:
669
+ _body_params = _params['workspace_creation_request']
670
+
671
+ # set the HTTP header `Accept`
672
+ _header_params['Accept'] = self.api_client.select_header_accept(
673
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
674
+
675
+ # set the HTTP header `Content-Type`
676
+ _content_types_list = _params.get('_content_type',
677
+ self.api_client.select_header_content_type(
678
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
679
+ if _content_types_list:
680
+ _header_params['Content-Type'] = _content_types_list
681
+
682
+ # authentication setting
683
+ _auth_settings = ['oauth2'] # noqa: E501
684
+
685
+ _response_types_map = {
686
+ '201': "Workspace",
687
+ '400': "LusidValidationProblemDetails",
688
+ }
689
+
690
+ return self.api_client.call_api(
691
+ '/api/workspaces/shared', 'POST',
692
+ _path_params,
693
+ _query_params,
694
+ _header_params,
695
+ body=_body_params,
696
+ post_params=_form_params,
697
+ files=_files,
698
+ response_types_map=_response_types_map,
699
+ auth_settings=_auth_settings,
700
+ async_req=_params.get('async_req'),
701
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
702
+ _preload_content=_params.get('_preload_content', True),
703
+ _request_timeout=_params.get('_request_timeout'),
704
+ collection_formats=_collection_formats,
705
+ _request_auth=_params.get('_request_auth'))
706
+
707
+ @overload
708
+ async def delete_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
709
+ ...
710
+
711
+ @overload
712
+ def delete_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
713
+ ...
714
+
715
+ @validate_arguments
716
+ def delete_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
717
+ """[EXPERIMENTAL] DeletePersonalItem: Delete an item from a personal workspace. # noqa: E501
718
+
719
+ Delete an item from a personal workspace. # noqa: E501
720
+ This method makes a synchronous HTTP request by default. To make an
721
+ asynchronous HTTP request, please pass async_req=True
722
+
723
+ >>> thread = api.delete_personal_item(workspace_name, item_name, async_req=True)
724
+ >>> result = thread.get()
725
+
726
+ :param workspace_name: The name of the personal workspace. (required)
727
+ :type workspace_name: str
728
+ :param item_name: The name of the item. (required)
729
+ :type item_name: str
730
+ :param async_req: Whether to execute the request asynchronously.
731
+ :type async_req: bool, optional
732
+ :param _request_timeout: timeout setting for this request.
733
+ If one number provided, it will be total request
734
+ timeout. It can also be a pair (tuple) of
735
+ (connection, read) timeouts.
736
+ :return: Returns the result object.
737
+ If the method is called asynchronously,
738
+ returns the request thread.
739
+ :rtype: DeletedEntityResponse
740
+ """
741
+ kwargs['_return_http_data_only'] = True
742
+ if '_preload_content' in kwargs:
743
+ message = "Error! Please call the delete_personal_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
744
+ raise ValueError(message)
745
+ if async_req is not None:
746
+ kwargs['async_req'] = async_req
747
+ return self.delete_personal_item_with_http_info(workspace_name, item_name, **kwargs) # noqa: E501
748
+
749
+ @validate_arguments
750
+ def delete_personal_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], **kwargs) -> ApiResponse: # noqa: E501
751
+ """[EXPERIMENTAL] DeletePersonalItem: Delete an item from a personal workspace. # noqa: E501
752
+
753
+ Delete an item from a personal workspace. # noqa: E501
754
+ This method makes a synchronous HTTP request by default. To make an
755
+ asynchronous HTTP request, please pass async_req=True
756
+
757
+ >>> thread = api.delete_personal_item_with_http_info(workspace_name, item_name, async_req=True)
758
+ >>> result = thread.get()
759
+
760
+ :param workspace_name: The name of the personal workspace. (required)
761
+ :type workspace_name: str
762
+ :param item_name: The name of the item. (required)
763
+ :type item_name: str
764
+ :param async_req: Whether to execute the request asynchronously.
765
+ :type async_req: bool, optional
766
+ :param _preload_content: if False, the ApiResponse.data will
767
+ be set to none and raw_data will store the
768
+ HTTP response body without reading/decoding.
769
+ Default is True.
770
+ :type _preload_content: bool, optional
771
+ :param _return_http_data_only: response data instead of ApiResponse
772
+ object with status code, headers, etc
773
+ :type _return_http_data_only: bool, optional
774
+ :param _request_timeout: timeout setting for this request. If one
775
+ number provided, it will be total request
776
+ timeout. It can also be a pair (tuple) of
777
+ (connection, read) timeouts.
778
+ :param _request_auth: set to override the auth_settings for an a single
779
+ request; this effectively ignores the authentication
780
+ in the spec for a single request.
781
+ :type _request_auth: dict, optional
782
+ :type _content_type: string, optional: force content-type for the request
783
+ :return: Returns the result object.
784
+ If the method is called asynchronously,
785
+ returns the request thread.
786
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
787
+ """
788
+
789
+ _params = locals()
790
+
791
+ _all_params = [
792
+ 'workspace_name',
793
+ 'item_name'
794
+ ]
795
+ _all_params.extend(
796
+ [
797
+ 'async_req',
798
+ '_return_http_data_only',
799
+ '_preload_content',
800
+ '_request_timeout',
801
+ '_request_auth',
802
+ '_content_type',
803
+ '_headers'
804
+ ]
805
+ )
806
+
807
+ # validate the arguments
808
+ for _key, _val in _params['kwargs'].items():
809
+ if _key not in _all_params:
810
+ raise ApiTypeError(
811
+ "Got an unexpected keyword argument '%s'"
812
+ " to method delete_personal_item" % _key
813
+ )
814
+ _params[_key] = _val
815
+ del _params['kwargs']
816
+
817
+ _collection_formats = {}
818
+
819
+ # process the path parameters
820
+ _path_params = {}
821
+ if _params['workspace_name']:
822
+ _path_params['workspaceName'] = _params['workspace_name']
823
+
824
+ if _params['item_name']:
825
+ _path_params['itemName'] = _params['item_name']
826
+
827
+
828
+ # process the query parameters
829
+ _query_params = []
830
+ # process the header parameters
831
+ _header_params = dict(_params.get('_headers', {}))
832
+ # process the form parameters
833
+ _form_params = []
834
+ _files = {}
835
+ # process the body parameter
836
+ _body_params = None
837
+ # set the HTTP header `Accept`
838
+ _header_params['Accept'] = self.api_client.select_header_accept(
839
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
840
+
841
+ # authentication setting
842
+ _auth_settings = ['oauth2'] # noqa: E501
843
+
844
+ _response_types_map = {
845
+ '200': "DeletedEntityResponse",
846
+ '400': "LusidValidationProblemDetails",
847
+ }
848
+
849
+ return self.api_client.call_api(
850
+ '/api/workspaces/personal/{workspaceName}/items/{itemName}', 'DELETE',
851
+ _path_params,
852
+ _query_params,
853
+ _header_params,
854
+ body=_body_params,
855
+ post_params=_form_params,
856
+ files=_files,
857
+ response_types_map=_response_types_map,
858
+ auth_settings=_auth_settings,
859
+ async_req=_params.get('async_req'),
860
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
861
+ _preload_content=_params.get('_preload_content', True),
862
+ _request_timeout=_params.get('_request_timeout'),
863
+ collection_formats=_collection_formats,
864
+ _request_auth=_params.get('_request_auth'))
865
+
866
+ @overload
867
+ async def delete_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
868
+ ...
869
+
870
+ @overload
871
+ def delete_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
872
+ ...
873
+
874
+ @validate_arguments
875
+ def delete_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
876
+ """[EXPERIMENTAL] DeletePersonalWorkspace: Delete a personal workspace. # noqa: E501
877
+
878
+ Delete a personal workspace. # noqa: E501
879
+ This method makes a synchronous HTTP request by default. To make an
880
+ asynchronous HTTP request, please pass async_req=True
881
+
882
+ >>> thread = api.delete_personal_workspace(workspace_name, async_req=True)
883
+ >>> result = thread.get()
884
+
885
+ :param workspace_name: The name of the personal workspace. (required)
886
+ :type workspace_name: str
887
+ :param async_req: Whether to execute the request asynchronously.
888
+ :type async_req: bool, optional
889
+ :param _request_timeout: timeout setting for this request.
890
+ If one number provided, it will be total request
891
+ timeout. It can also be a pair (tuple) of
892
+ (connection, read) timeouts.
893
+ :return: Returns the result object.
894
+ If the method is called asynchronously,
895
+ returns the request thread.
896
+ :rtype: DeletedEntityResponse
897
+ """
898
+ kwargs['_return_http_data_only'] = True
899
+ if '_preload_content' in kwargs:
900
+ message = "Error! Please call the delete_personal_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
901
+ raise ValueError(message)
902
+ if async_req is not None:
903
+ kwargs['async_req'] = async_req
904
+ return self.delete_personal_workspace_with_http_info(workspace_name, **kwargs) # noqa: E501
905
+
906
+ @validate_arguments
907
+ def delete_personal_workspace_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], **kwargs) -> ApiResponse: # noqa: E501
908
+ """[EXPERIMENTAL] DeletePersonalWorkspace: Delete a personal workspace. # noqa: E501
909
+
910
+ Delete a personal workspace. # noqa: E501
911
+ This method makes a synchronous HTTP request by default. To make an
912
+ asynchronous HTTP request, please pass async_req=True
913
+
914
+ >>> thread = api.delete_personal_workspace_with_http_info(workspace_name, async_req=True)
915
+ >>> result = thread.get()
916
+
917
+ :param workspace_name: The name of the personal workspace. (required)
918
+ :type workspace_name: str
919
+ :param async_req: Whether to execute the request asynchronously.
920
+ :type async_req: bool, optional
921
+ :param _preload_content: if False, the ApiResponse.data will
922
+ be set to none and raw_data will store the
923
+ HTTP response body without reading/decoding.
924
+ Default is True.
925
+ :type _preload_content: bool, optional
926
+ :param _return_http_data_only: response data instead of ApiResponse
927
+ object with status code, headers, etc
928
+ :type _return_http_data_only: bool, optional
929
+ :param _request_timeout: timeout setting for this request. If one
930
+ number provided, it will be total request
931
+ timeout. It can also be a pair (tuple) of
932
+ (connection, read) timeouts.
933
+ :param _request_auth: set to override the auth_settings for an a single
934
+ request; this effectively ignores the authentication
935
+ in the spec for a single request.
936
+ :type _request_auth: dict, optional
937
+ :type _content_type: string, optional: force content-type for the request
938
+ :return: Returns the result object.
939
+ If the method is called asynchronously,
940
+ returns the request thread.
941
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
942
+ """
943
+
944
+ _params = locals()
945
+
946
+ _all_params = [
947
+ 'workspace_name'
948
+ ]
949
+ _all_params.extend(
950
+ [
951
+ 'async_req',
952
+ '_return_http_data_only',
953
+ '_preload_content',
954
+ '_request_timeout',
955
+ '_request_auth',
956
+ '_content_type',
957
+ '_headers'
958
+ ]
959
+ )
960
+
961
+ # validate the arguments
962
+ for _key, _val in _params['kwargs'].items():
963
+ if _key not in _all_params:
964
+ raise ApiTypeError(
965
+ "Got an unexpected keyword argument '%s'"
966
+ " to method delete_personal_workspace" % _key
967
+ )
968
+ _params[_key] = _val
969
+ del _params['kwargs']
970
+
971
+ _collection_formats = {}
972
+
973
+ # process the path parameters
974
+ _path_params = {}
975
+ if _params['workspace_name']:
976
+ _path_params['workspaceName'] = _params['workspace_name']
977
+
978
+
979
+ # process the query parameters
980
+ _query_params = []
981
+ # process the header parameters
982
+ _header_params = dict(_params.get('_headers', {}))
983
+ # process the form parameters
984
+ _form_params = []
985
+ _files = {}
986
+ # process the body parameter
987
+ _body_params = None
988
+ # set the HTTP header `Accept`
989
+ _header_params['Accept'] = self.api_client.select_header_accept(
990
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
991
+
992
+ # authentication setting
993
+ _auth_settings = ['oauth2'] # noqa: E501
994
+
995
+ _response_types_map = {
996
+ '200': "DeletedEntityResponse",
997
+ '400': "LusidValidationProblemDetails",
998
+ }
999
+
1000
+ return self.api_client.call_api(
1001
+ '/api/workspaces/personal/{workspaceName}', 'DELETE',
1002
+ _path_params,
1003
+ _query_params,
1004
+ _header_params,
1005
+ body=_body_params,
1006
+ post_params=_form_params,
1007
+ files=_files,
1008
+ response_types_map=_response_types_map,
1009
+ auth_settings=_auth_settings,
1010
+ async_req=_params.get('async_req'),
1011
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1012
+ _preload_content=_params.get('_preload_content', True),
1013
+ _request_timeout=_params.get('_request_timeout'),
1014
+ collection_formats=_collection_formats,
1015
+ _request_auth=_params.get('_request_auth'))
1016
+
1017
+ @overload
1018
+ async def delete_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
1019
+ ...
1020
+
1021
+ @overload
1022
+ def delete_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
1023
+ ...
1024
+
1025
+ @validate_arguments
1026
+ def delete_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
1027
+ """[EXPERIMENTAL] DeleteSharedItem: Delete an item from a shared workspace. # noqa: E501
1028
+
1029
+ Delete an item from a shared workspace. # noqa: E501
1030
+ This method makes a synchronous HTTP request by default. To make an
1031
+ asynchronous HTTP request, please pass async_req=True
1032
+
1033
+ >>> thread = api.delete_shared_item(workspace_name, item_name, async_req=True)
1034
+ >>> result = thread.get()
1035
+
1036
+ :param workspace_name: The name of the shared workspace. (required)
1037
+ :type workspace_name: str
1038
+ :param item_name: The name of the item. (required)
1039
+ :type item_name: str
1040
+ :param async_req: Whether to execute the request asynchronously.
1041
+ :type async_req: bool, optional
1042
+ :param _request_timeout: timeout setting for this request.
1043
+ If one number provided, it will be total request
1044
+ timeout. It can also be a pair (tuple) of
1045
+ (connection, read) timeouts.
1046
+ :return: Returns the result object.
1047
+ If the method is called asynchronously,
1048
+ returns the request thread.
1049
+ :rtype: DeletedEntityResponse
1050
+ """
1051
+ kwargs['_return_http_data_only'] = True
1052
+ if '_preload_content' in kwargs:
1053
+ message = "Error! Please call the delete_shared_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1054
+ raise ValueError(message)
1055
+ if async_req is not None:
1056
+ kwargs['async_req'] = async_req
1057
+ return self.delete_shared_item_with_http_info(workspace_name, item_name, **kwargs) # noqa: E501
1058
+
1059
+ @validate_arguments
1060
+ def delete_shared_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], **kwargs) -> ApiResponse: # noqa: E501
1061
+ """[EXPERIMENTAL] DeleteSharedItem: Delete an item from a shared workspace. # noqa: E501
1062
+
1063
+ Delete an item from a shared workspace. # noqa: E501
1064
+ This method makes a synchronous HTTP request by default. To make an
1065
+ asynchronous HTTP request, please pass async_req=True
1066
+
1067
+ >>> thread = api.delete_shared_item_with_http_info(workspace_name, item_name, async_req=True)
1068
+ >>> result = thread.get()
1069
+
1070
+ :param workspace_name: The name of the shared workspace. (required)
1071
+ :type workspace_name: str
1072
+ :param item_name: The name of the item. (required)
1073
+ :type item_name: str
1074
+ :param async_req: Whether to execute the request asynchronously.
1075
+ :type async_req: bool, optional
1076
+ :param _preload_content: if False, the ApiResponse.data will
1077
+ be set to none and raw_data will store the
1078
+ HTTP response body without reading/decoding.
1079
+ Default is True.
1080
+ :type _preload_content: bool, optional
1081
+ :param _return_http_data_only: response data instead of ApiResponse
1082
+ object with status code, headers, etc
1083
+ :type _return_http_data_only: bool, optional
1084
+ :param _request_timeout: timeout setting for this request. If one
1085
+ number provided, it will be total request
1086
+ timeout. It can also be a pair (tuple) of
1087
+ (connection, read) timeouts.
1088
+ :param _request_auth: set to override the auth_settings for an a single
1089
+ request; this effectively ignores the authentication
1090
+ in the spec for a single request.
1091
+ :type _request_auth: dict, optional
1092
+ :type _content_type: string, optional: force content-type for the request
1093
+ :return: Returns the result object.
1094
+ If the method is called asynchronously,
1095
+ returns the request thread.
1096
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
1097
+ """
1098
+
1099
+ _params = locals()
1100
+
1101
+ _all_params = [
1102
+ 'workspace_name',
1103
+ 'item_name'
1104
+ ]
1105
+ _all_params.extend(
1106
+ [
1107
+ 'async_req',
1108
+ '_return_http_data_only',
1109
+ '_preload_content',
1110
+ '_request_timeout',
1111
+ '_request_auth',
1112
+ '_content_type',
1113
+ '_headers'
1114
+ ]
1115
+ )
1116
+
1117
+ # validate the arguments
1118
+ for _key, _val in _params['kwargs'].items():
1119
+ if _key not in _all_params:
1120
+ raise ApiTypeError(
1121
+ "Got an unexpected keyword argument '%s'"
1122
+ " to method delete_shared_item" % _key
1123
+ )
1124
+ _params[_key] = _val
1125
+ del _params['kwargs']
1126
+
1127
+ _collection_formats = {}
1128
+
1129
+ # process the path parameters
1130
+ _path_params = {}
1131
+ if _params['workspace_name']:
1132
+ _path_params['workspaceName'] = _params['workspace_name']
1133
+
1134
+ if _params['item_name']:
1135
+ _path_params['itemName'] = _params['item_name']
1136
+
1137
+
1138
+ # process the query parameters
1139
+ _query_params = []
1140
+ # process the header parameters
1141
+ _header_params = dict(_params.get('_headers', {}))
1142
+ # process the form parameters
1143
+ _form_params = []
1144
+ _files = {}
1145
+ # process the body parameter
1146
+ _body_params = None
1147
+ # set the HTTP header `Accept`
1148
+ _header_params['Accept'] = self.api_client.select_header_accept(
1149
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1150
+
1151
+ # authentication setting
1152
+ _auth_settings = ['oauth2'] # noqa: E501
1153
+
1154
+ _response_types_map = {
1155
+ '200': "DeletedEntityResponse",
1156
+ '400': "LusidValidationProblemDetails",
1157
+ }
1158
+
1159
+ return self.api_client.call_api(
1160
+ '/api/workspaces/shared/{workspaceName}/items/{itemName}', 'DELETE',
1161
+ _path_params,
1162
+ _query_params,
1163
+ _header_params,
1164
+ body=_body_params,
1165
+ post_params=_form_params,
1166
+ files=_files,
1167
+ response_types_map=_response_types_map,
1168
+ auth_settings=_auth_settings,
1169
+ async_req=_params.get('async_req'),
1170
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1171
+ _preload_content=_params.get('_preload_content', True),
1172
+ _request_timeout=_params.get('_request_timeout'),
1173
+ collection_formats=_collection_formats,
1174
+ _request_auth=_params.get('_request_auth'))
1175
+
1176
+ @overload
1177
+ async def delete_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], **kwargs) -> DeletedEntityResponse: # noqa: E501
1178
+ ...
1179
+
1180
+ @overload
1181
+ def delete_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
1182
+ ...
1183
+
1184
+ @validate_arguments
1185
+ def delete_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
1186
+ """[EXPERIMENTAL] DeleteSharedWorkspace: Delete a shared workspace. # noqa: E501
1187
+
1188
+ Delete a shared workspace. # noqa: E501
1189
+ This method makes a synchronous HTTP request by default. To make an
1190
+ asynchronous HTTP request, please pass async_req=True
1191
+
1192
+ >>> thread = api.delete_shared_workspace(workspace_name, async_req=True)
1193
+ >>> result = thread.get()
1194
+
1195
+ :param workspace_name: The name of the shared workspace. (required)
1196
+ :type workspace_name: str
1197
+ :param async_req: Whether to execute the request asynchronously.
1198
+ :type async_req: bool, optional
1199
+ :param _request_timeout: timeout setting for this request.
1200
+ If one number provided, it will be total request
1201
+ timeout. It can also be a pair (tuple) of
1202
+ (connection, read) timeouts.
1203
+ :return: Returns the result object.
1204
+ If the method is called asynchronously,
1205
+ returns the request thread.
1206
+ :rtype: DeletedEntityResponse
1207
+ """
1208
+ kwargs['_return_http_data_only'] = True
1209
+ if '_preload_content' in kwargs:
1210
+ message = "Error! Please call the delete_shared_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1211
+ raise ValueError(message)
1212
+ if async_req is not None:
1213
+ kwargs['async_req'] = async_req
1214
+ return self.delete_shared_workspace_with_http_info(workspace_name, **kwargs) # noqa: E501
1215
+
1216
+ @validate_arguments
1217
+ def delete_shared_workspace_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], **kwargs) -> ApiResponse: # noqa: E501
1218
+ """[EXPERIMENTAL] DeleteSharedWorkspace: Delete a shared workspace. # noqa: E501
1219
+
1220
+ Delete a shared workspace. # noqa: E501
1221
+ This method makes a synchronous HTTP request by default. To make an
1222
+ asynchronous HTTP request, please pass async_req=True
1223
+
1224
+ >>> thread = api.delete_shared_workspace_with_http_info(workspace_name, async_req=True)
1225
+ >>> result = thread.get()
1226
+
1227
+ :param workspace_name: The name of the shared workspace. (required)
1228
+ :type workspace_name: str
1229
+ :param async_req: Whether to execute the request asynchronously.
1230
+ :type async_req: bool, optional
1231
+ :param _preload_content: if False, the ApiResponse.data will
1232
+ be set to none and raw_data will store the
1233
+ HTTP response body without reading/decoding.
1234
+ Default is True.
1235
+ :type _preload_content: bool, optional
1236
+ :param _return_http_data_only: response data instead of ApiResponse
1237
+ object with status code, headers, etc
1238
+ :type _return_http_data_only: bool, optional
1239
+ :param _request_timeout: timeout setting for this request. If one
1240
+ number provided, it will be total request
1241
+ timeout. It can also be a pair (tuple) of
1242
+ (connection, read) timeouts.
1243
+ :param _request_auth: set to override the auth_settings for an a single
1244
+ request; this effectively ignores the authentication
1245
+ in the spec for a single request.
1246
+ :type _request_auth: dict, optional
1247
+ :type _content_type: string, optional: force content-type for the request
1248
+ :return: Returns the result object.
1249
+ If the method is called asynchronously,
1250
+ returns the request thread.
1251
+ :rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
1252
+ """
1253
+
1254
+ _params = locals()
1255
+
1256
+ _all_params = [
1257
+ 'workspace_name'
1258
+ ]
1259
+ _all_params.extend(
1260
+ [
1261
+ 'async_req',
1262
+ '_return_http_data_only',
1263
+ '_preload_content',
1264
+ '_request_timeout',
1265
+ '_request_auth',
1266
+ '_content_type',
1267
+ '_headers'
1268
+ ]
1269
+ )
1270
+
1271
+ # validate the arguments
1272
+ for _key, _val in _params['kwargs'].items():
1273
+ if _key not in _all_params:
1274
+ raise ApiTypeError(
1275
+ "Got an unexpected keyword argument '%s'"
1276
+ " to method delete_shared_workspace" % _key
1277
+ )
1278
+ _params[_key] = _val
1279
+ del _params['kwargs']
1280
+
1281
+ _collection_formats = {}
1282
+
1283
+ # process the path parameters
1284
+ _path_params = {}
1285
+ if _params['workspace_name']:
1286
+ _path_params['workspaceName'] = _params['workspace_name']
1287
+
1288
+
1289
+ # process the query parameters
1290
+ _query_params = []
1291
+ # process the header parameters
1292
+ _header_params = dict(_params.get('_headers', {}))
1293
+ # process the form parameters
1294
+ _form_params = []
1295
+ _files = {}
1296
+ # process the body parameter
1297
+ _body_params = None
1298
+ # set the HTTP header `Accept`
1299
+ _header_params['Accept'] = self.api_client.select_header_accept(
1300
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1301
+
1302
+ # authentication setting
1303
+ _auth_settings = ['oauth2'] # noqa: E501
1304
+
1305
+ _response_types_map = {
1306
+ '200': "DeletedEntityResponse",
1307
+ '400': "LusidValidationProblemDetails",
1308
+ }
1309
+
1310
+ return self.api_client.call_api(
1311
+ '/api/workspaces/shared/{workspaceName}', 'DELETE',
1312
+ _path_params,
1313
+ _query_params,
1314
+ _header_params,
1315
+ body=_body_params,
1316
+ post_params=_form_params,
1317
+ files=_files,
1318
+ response_types_map=_response_types_map,
1319
+ auth_settings=_auth_settings,
1320
+ async_req=_params.get('async_req'),
1321
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1322
+ _preload_content=_params.get('_preload_content', True),
1323
+ _request_timeout=_params.get('_request_timeout'),
1324
+ collection_formats=_collection_formats,
1325
+ _request_auth=_params.get('_request_auth'))
1326
+
1327
+ @overload
1328
+ async def get_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, **kwargs) -> WorkspaceItem: # noqa: E501
1329
+ ...
1330
+
1331
+ @overload
1332
+ def get_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, async_req: Optional[bool]=True, **kwargs) -> WorkspaceItem: # noqa: E501
1333
+ ...
1334
+
1335
+ @validate_arguments
1336
+ def get_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[WorkspaceItem, Awaitable[WorkspaceItem]]: # noqa: E501
1337
+ """[EXPERIMENTAL] GetPersonalItem: Get a single personal workspace item. # noqa: E501
1338
+
1339
+ Get a single personal workspace item. # noqa: E501
1340
+ This method makes a synchronous HTTP request by default. To make an
1341
+ asynchronous HTTP request, please pass async_req=True
1342
+
1343
+ >>> thread = api.get_personal_item(workspace_name, item_name, as_at, async_req=True)
1344
+ >>> result = thread.get()
1345
+
1346
+ :param workspace_name: The name of the personal workspace. (required)
1347
+ :type workspace_name: str
1348
+ :param item_name: The name of the item. (required)
1349
+ :type item_name: str
1350
+ :param as_at: The datetime at which to request the workspace item. If not provided, defaults to 'latest'.
1351
+ :type as_at: datetime
1352
+ :param async_req: Whether to execute the request asynchronously.
1353
+ :type async_req: bool, optional
1354
+ :param _request_timeout: timeout setting for this request.
1355
+ If one number provided, it will be total request
1356
+ timeout. It can also be a pair (tuple) of
1357
+ (connection, read) timeouts.
1358
+ :return: Returns the result object.
1359
+ If the method is called asynchronously,
1360
+ returns the request thread.
1361
+ :rtype: WorkspaceItem
1362
+ """
1363
+ kwargs['_return_http_data_only'] = True
1364
+ if '_preload_content' in kwargs:
1365
+ message = "Error! Please call the get_personal_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1366
+ raise ValueError(message)
1367
+ if async_req is not None:
1368
+ kwargs['async_req'] = async_req
1369
+ return self.get_personal_item_with_http_info(workspace_name, item_name, as_at, **kwargs) # noqa: E501
1370
+
1371
+ @validate_arguments
1372
+ def get_personal_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the personal workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1373
+ """[EXPERIMENTAL] GetPersonalItem: Get a single personal workspace item. # noqa: E501
1374
+
1375
+ Get a single personal workspace item. # noqa: E501
1376
+ This method makes a synchronous HTTP request by default. To make an
1377
+ asynchronous HTTP request, please pass async_req=True
1378
+
1379
+ >>> thread = api.get_personal_item_with_http_info(workspace_name, item_name, as_at, async_req=True)
1380
+ >>> result = thread.get()
1381
+
1382
+ :param workspace_name: The name of the personal workspace. (required)
1383
+ :type workspace_name: str
1384
+ :param item_name: The name of the item. (required)
1385
+ :type item_name: str
1386
+ :param as_at: The datetime at which to request the workspace item. If not provided, defaults to 'latest'.
1387
+ :type as_at: datetime
1388
+ :param async_req: Whether to execute the request asynchronously.
1389
+ :type async_req: bool, optional
1390
+ :param _preload_content: if False, the ApiResponse.data will
1391
+ be set to none and raw_data will store the
1392
+ HTTP response body without reading/decoding.
1393
+ Default is True.
1394
+ :type _preload_content: bool, optional
1395
+ :param _return_http_data_only: response data instead of ApiResponse
1396
+ object with status code, headers, etc
1397
+ :type _return_http_data_only: bool, optional
1398
+ :param _request_timeout: timeout setting for this request. If one
1399
+ number provided, it will be total request
1400
+ timeout. It can also be a pair (tuple) of
1401
+ (connection, read) timeouts.
1402
+ :param _request_auth: set to override the auth_settings for an a single
1403
+ request; this effectively ignores the authentication
1404
+ in the spec for a single request.
1405
+ :type _request_auth: dict, optional
1406
+ :type _content_type: string, optional: force content-type for the request
1407
+ :return: Returns the result object.
1408
+ If the method is called asynchronously,
1409
+ returns the request thread.
1410
+ :rtype: tuple(WorkspaceItem, status_code(int), headers(HTTPHeaderDict))
1411
+ """
1412
+
1413
+ _params = locals()
1414
+
1415
+ _all_params = [
1416
+ 'workspace_name',
1417
+ 'item_name',
1418
+ 'as_at'
1419
+ ]
1420
+ _all_params.extend(
1421
+ [
1422
+ 'async_req',
1423
+ '_return_http_data_only',
1424
+ '_preload_content',
1425
+ '_request_timeout',
1426
+ '_request_auth',
1427
+ '_content_type',
1428
+ '_headers'
1429
+ ]
1430
+ )
1431
+
1432
+ # validate the arguments
1433
+ for _key, _val in _params['kwargs'].items():
1434
+ if _key not in _all_params:
1435
+ raise ApiTypeError(
1436
+ "Got an unexpected keyword argument '%s'"
1437
+ " to method get_personal_item" % _key
1438
+ )
1439
+ _params[_key] = _val
1440
+ del _params['kwargs']
1441
+
1442
+ _collection_formats = {}
1443
+
1444
+ # process the path parameters
1445
+ _path_params = {}
1446
+ if _params['workspace_name']:
1447
+ _path_params['workspaceName'] = _params['workspace_name']
1448
+
1449
+ if _params['item_name']:
1450
+ _path_params['itemName'] = _params['item_name']
1451
+
1452
+
1453
+ # process the query parameters
1454
+ _query_params = []
1455
+ if _params.get('as_at') is not None: # noqa: E501
1456
+ if isinstance(_params['as_at'], datetime):
1457
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1458
+ else:
1459
+ _query_params.append(('asAt', _params['as_at']))
1460
+
1461
+ # process the header parameters
1462
+ _header_params = dict(_params.get('_headers', {}))
1463
+ # process the form parameters
1464
+ _form_params = []
1465
+ _files = {}
1466
+ # process the body parameter
1467
+ _body_params = None
1468
+ # set the HTTP header `Accept`
1469
+ _header_params['Accept'] = self.api_client.select_header_accept(
1470
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1471
+
1472
+ # authentication setting
1473
+ _auth_settings = ['oauth2'] # noqa: E501
1474
+
1475
+ _response_types_map = {
1476
+ '200': "WorkspaceItem",
1477
+ '400': "LusidValidationProblemDetails",
1478
+ }
1479
+
1480
+ return self.api_client.call_api(
1481
+ '/api/workspaces/personal/{workspaceName}/items/{itemName}', 'GET',
1482
+ _path_params,
1483
+ _query_params,
1484
+ _header_params,
1485
+ body=_body_params,
1486
+ post_params=_form_params,
1487
+ files=_files,
1488
+ response_types_map=_response_types_map,
1489
+ auth_settings=_auth_settings,
1490
+ async_req=_params.get('async_req'),
1491
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1492
+ _preload_content=_params.get('_preload_content', True),
1493
+ _request_timeout=_params.get('_request_timeout'),
1494
+ collection_formats=_collection_formats,
1495
+ _request_auth=_params.get('_request_auth'))
1496
+
1497
+ @overload
1498
+ async def get_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, **kwargs) -> Workspace: # noqa: E501
1499
+ ...
1500
+
1501
+ @overload
1502
+ def get_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> Workspace: # noqa: E501
1503
+ ...
1504
+
1505
+ @validate_arguments
1506
+ def get_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Workspace, Awaitable[Workspace]]: # noqa: E501
1507
+ """[EXPERIMENTAL] GetPersonalWorkspace: Get a personal workspace. # noqa: E501
1508
+
1509
+ Get a personal workspace. # noqa: E501
1510
+ This method makes a synchronous HTTP request by default. To make an
1511
+ asynchronous HTTP request, please pass async_req=True
1512
+
1513
+ >>> thread = api.get_personal_workspace(workspace_name, as_at, async_req=True)
1514
+ >>> result = thread.get()
1515
+
1516
+ :param workspace_name: The personal workspace name. (required)
1517
+ :type workspace_name: str
1518
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
1519
+ :type as_at: datetime
1520
+ :param async_req: Whether to execute the request asynchronously.
1521
+ :type async_req: bool, optional
1522
+ :param _request_timeout: timeout setting for this request.
1523
+ If one number provided, it will be total request
1524
+ timeout. It can also be a pair (tuple) of
1525
+ (connection, read) timeouts.
1526
+ :return: Returns the result object.
1527
+ If the method is called asynchronously,
1528
+ returns the request thread.
1529
+ :rtype: Workspace
1530
+ """
1531
+ kwargs['_return_http_data_only'] = True
1532
+ if '_preload_content' in kwargs:
1533
+ message = "Error! Please call the get_personal_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1534
+ raise ValueError(message)
1535
+ if async_req is not None:
1536
+ kwargs['async_req'] = async_req
1537
+ return self.get_personal_workspace_with_http_info(workspace_name, as_at, **kwargs) # noqa: E501
1538
+
1539
+ @validate_arguments
1540
+ def get_personal_workspace_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1541
+ """[EXPERIMENTAL] GetPersonalWorkspace: Get a personal workspace. # noqa: E501
1542
+
1543
+ Get a personal workspace. # noqa: E501
1544
+ This method makes a synchronous HTTP request by default. To make an
1545
+ asynchronous HTTP request, please pass async_req=True
1546
+
1547
+ >>> thread = api.get_personal_workspace_with_http_info(workspace_name, as_at, async_req=True)
1548
+ >>> result = thread.get()
1549
+
1550
+ :param workspace_name: The personal workspace name. (required)
1551
+ :type workspace_name: str
1552
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
1553
+ :type as_at: datetime
1554
+ :param async_req: Whether to execute the request asynchronously.
1555
+ :type async_req: bool, optional
1556
+ :param _preload_content: if False, the ApiResponse.data will
1557
+ be set to none and raw_data will store the
1558
+ HTTP response body without reading/decoding.
1559
+ Default is True.
1560
+ :type _preload_content: bool, optional
1561
+ :param _return_http_data_only: response data instead of ApiResponse
1562
+ object with status code, headers, etc
1563
+ :type _return_http_data_only: bool, optional
1564
+ :param _request_timeout: timeout setting for this request. If one
1565
+ number provided, it will be total request
1566
+ timeout. It can also be a pair (tuple) of
1567
+ (connection, read) timeouts.
1568
+ :param _request_auth: set to override the auth_settings for an a single
1569
+ request; this effectively ignores the authentication
1570
+ in the spec for a single request.
1571
+ :type _request_auth: dict, optional
1572
+ :type _content_type: string, optional: force content-type for the request
1573
+ :return: Returns the result object.
1574
+ If the method is called asynchronously,
1575
+ returns the request thread.
1576
+ :rtype: tuple(Workspace, status_code(int), headers(HTTPHeaderDict))
1577
+ """
1578
+
1579
+ _params = locals()
1580
+
1581
+ _all_params = [
1582
+ 'workspace_name',
1583
+ 'as_at'
1584
+ ]
1585
+ _all_params.extend(
1586
+ [
1587
+ 'async_req',
1588
+ '_return_http_data_only',
1589
+ '_preload_content',
1590
+ '_request_timeout',
1591
+ '_request_auth',
1592
+ '_content_type',
1593
+ '_headers'
1594
+ ]
1595
+ )
1596
+
1597
+ # validate the arguments
1598
+ for _key, _val in _params['kwargs'].items():
1599
+ if _key not in _all_params:
1600
+ raise ApiTypeError(
1601
+ "Got an unexpected keyword argument '%s'"
1602
+ " to method get_personal_workspace" % _key
1603
+ )
1604
+ _params[_key] = _val
1605
+ del _params['kwargs']
1606
+
1607
+ _collection_formats = {}
1608
+
1609
+ # process the path parameters
1610
+ _path_params = {}
1611
+ if _params['workspace_name']:
1612
+ _path_params['workspaceName'] = _params['workspace_name']
1613
+
1614
+
1615
+ # process the query parameters
1616
+ _query_params = []
1617
+ if _params.get('as_at') is not None: # noqa: E501
1618
+ if isinstance(_params['as_at'], datetime):
1619
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1620
+ else:
1621
+ _query_params.append(('asAt', _params['as_at']))
1622
+
1623
+ # process the header parameters
1624
+ _header_params = dict(_params.get('_headers', {}))
1625
+ # process the form parameters
1626
+ _form_params = []
1627
+ _files = {}
1628
+ # process the body parameter
1629
+ _body_params = None
1630
+ # set the HTTP header `Accept`
1631
+ _header_params['Accept'] = self.api_client.select_header_accept(
1632
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1633
+
1634
+ # authentication setting
1635
+ _auth_settings = ['oauth2'] # noqa: E501
1636
+
1637
+ _response_types_map = {
1638
+ '200': "Workspace",
1639
+ '400': "LusidValidationProblemDetails",
1640
+ }
1641
+
1642
+ return self.api_client.call_api(
1643
+ '/api/workspaces/personal/{workspaceName}', 'GET',
1644
+ _path_params,
1645
+ _query_params,
1646
+ _header_params,
1647
+ body=_body_params,
1648
+ post_params=_form_params,
1649
+ files=_files,
1650
+ response_types_map=_response_types_map,
1651
+ auth_settings=_auth_settings,
1652
+ async_req=_params.get('async_req'),
1653
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1654
+ _preload_content=_params.get('_preload_content', True),
1655
+ _request_timeout=_params.get('_request_timeout'),
1656
+ collection_formats=_collection_formats,
1657
+ _request_auth=_params.get('_request_auth'))
1658
+
1659
+ @overload
1660
+ async def get_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, **kwargs) -> WorkspaceItem: # noqa: E501
1661
+ ...
1662
+
1663
+ @overload
1664
+ def get_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, async_req: Optional[bool]=True, **kwargs) -> WorkspaceItem: # noqa: E501
1665
+ ...
1666
+
1667
+ @validate_arguments
1668
+ def get_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[WorkspaceItem, Awaitable[WorkspaceItem]]: # noqa: E501
1669
+ """[EXPERIMENTAL] GetSharedItem: Get a single shared workspace item. # noqa: E501
1670
+
1671
+ Get a single shared workspace item. # noqa: E501
1672
+ This method makes a synchronous HTTP request by default. To make an
1673
+ asynchronous HTTP request, please pass async_req=True
1674
+
1675
+ >>> thread = api.get_shared_item(workspace_name, item_name, as_at, async_req=True)
1676
+ >>> result = thread.get()
1677
+
1678
+ :param workspace_name: The name of the shared workspace. (required)
1679
+ :type workspace_name: str
1680
+ :param item_name: The name of the item. (required)
1681
+ :type item_name: str
1682
+ :param as_at: The datetime at which to request the workspace item. If not provided, defaults to 'latest'.
1683
+ :type as_at: datetime
1684
+ :param async_req: Whether to execute the request asynchronously.
1685
+ :type async_req: bool, optional
1686
+ :param _request_timeout: timeout setting for this request.
1687
+ If one number provided, it will be total request
1688
+ timeout. It can also be a pair (tuple) of
1689
+ (connection, read) timeouts.
1690
+ :return: Returns the result object.
1691
+ If the method is called asynchronously,
1692
+ returns the request thread.
1693
+ :rtype: WorkspaceItem
1694
+ """
1695
+ kwargs['_return_http_data_only'] = True
1696
+ if '_preload_content' in kwargs:
1697
+ message = "Error! Please call the get_shared_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1698
+ raise ValueError(message)
1699
+ if async_req is not None:
1700
+ kwargs['async_req'] = async_req
1701
+ return self.get_shared_item_with_http_info(workspace_name, item_name, as_at, **kwargs) # noqa: E501
1702
+
1703
+ @validate_arguments
1704
+ def get_shared_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the shared workspace.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The name of the item.")], as_at : Annotated[Optional[datetime], Field(description="The datetime at which to request the workspace item. If not provided, defaults to 'latest'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1705
+ """[EXPERIMENTAL] GetSharedItem: Get a single shared workspace item. # noqa: E501
1706
+
1707
+ Get a single shared workspace item. # noqa: E501
1708
+ This method makes a synchronous HTTP request by default. To make an
1709
+ asynchronous HTTP request, please pass async_req=True
1710
+
1711
+ >>> thread = api.get_shared_item_with_http_info(workspace_name, item_name, as_at, async_req=True)
1712
+ >>> result = thread.get()
1713
+
1714
+ :param workspace_name: The name of the shared workspace. (required)
1715
+ :type workspace_name: str
1716
+ :param item_name: The name of the item. (required)
1717
+ :type item_name: str
1718
+ :param as_at: The datetime at which to request the workspace item. If not provided, defaults to 'latest'.
1719
+ :type as_at: datetime
1720
+ :param async_req: Whether to execute the request asynchronously.
1721
+ :type async_req: bool, optional
1722
+ :param _preload_content: if False, the ApiResponse.data will
1723
+ be set to none and raw_data will store the
1724
+ HTTP response body without reading/decoding.
1725
+ Default is True.
1726
+ :type _preload_content: bool, optional
1727
+ :param _return_http_data_only: response data instead of ApiResponse
1728
+ object with status code, headers, etc
1729
+ :type _return_http_data_only: bool, optional
1730
+ :param _request_timeout: timeout setting for this request. If one
1731
+ number provided, it will be total request
1732
+ timeout. It can also be a pair (tuple) of
1733
+ (connection, read) timeouts.
1734
+ :param _request_auth: set to override the auth_settings for an a single
1735
+ request; this effectively ignores the authentication
1736
+ in the spec for a single request.
1737
+ :type _request_auth: dict, optional
1738
+ :type _content_type: string, optional: force content-type for the request
1739
+ :return: Returns the result object.
1740
+ If the method is called asynchronously,
1741
+ returns the request thread.
1742
+ :rtype: tuple(WorkspaceItem, status_code(int), headers(HTTPHeaderDict))
1743
+ """
1744
+
1745
+ _params = locals()
1746
+
1747
+ _all_params = [
1748
+ 'workspace_name',
1749
+ 'item_name',
1750
+ 'as_at'
1751
+ ]
1752
+ _all_params.extend(
1753
+ [
1754
+ 'async_req',
1755
+ '_return_http_data_only',
1756
+ '_preload_content',
1757
+ '_request_timeout',
1758
+ '_request_auth',
1759
+ '_content_type',
1760
+ '_headers'
1761
+ ]
1762
+ )
1763
+
1764
+ # validate the arguments
1765
+ for _key, _val in _params['kwargs'].items():
1766
+ if _key not in _all_params:
1767
+ raise ApiTypeError(
1768
+ "Got an unexpected keyword argument '%s'"
1769
+ " to method get_shared_item" % _key
1770
+ )
1771
+ _params[_key] = _val
1772
+ del _params['kwargs']
1773
+
1774
+ _collection_formats = {}
1775
+
1776
+ # process the path parameters
1777
+ _path_params = {}
1778
+ if _params['workspace_name']:
1779
+ _path_params['workspaceName'] = _params['workspace_name']
1780
+
1781
+ if _params['item_name']:
1782
+ _path_params['itemName'] = _params['item_name']
1783
+
1784
+
1785
+ # process the query parameters
1786
+ _query_params = []
1787
+ if _params.get('as_at') is not None: # noqa: E501
1788
+ if isinstance(_params['as_at'], datetime):
1789
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1790
+ else:
1791
+ _query_params.append(('asAt', _params['as_at']))
1792
+
1793
+ # process the header parameters
1794
+ _header_params = dict(_params.get('_headers', {}))
1795
+ # process the form parameters
1796
+ _form_params = []
1797
+ _files = {}
1798
+ # process the body parameter
1799
+ _body_params = None
1800
+ # set the HTTP header `Accept`
1801
+ _header_params['Accept'] = self.api_client.select_header_accept(
1802
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1803
+
1804
+ # authentication setting
1805
+ _auth_settings = ['oauth2'] # noqa: E501
1806
+
1807
+ _response_types_map = {
1808
+ '200': "WorkspaceItem",
1809
+ '400': "LusidValidationProblemDetails",
1810
+ }
1811
+
1812
+ return self.api_client.call_api(
1813
+ '/api/workspaces/shared/{workspaceName}/items/{itemName}', 'GET',
1814
+ _path_params,
1815
+ _query_params,
1816
+ _header_params,
1817
+ body=_body_params,
1818
+ post_params=_form_params,
1819
+ files=_files,
1820
+ response_types_map=_response_types_map,
1821
+ auth_settings=_auth_settings,
1822
+ async_req=_params.get('async_req'),
1823
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1824
+ _preload_content=_params.get('_preload_content', True),
1825
+ _request_timeout=_params.get('_request_timeout'),
1826
+ collection_formats=_collection_formats,
1827
+ _request_auth=_params.get('_request_auth'))
1828
+
1829
+ @overload
1830
+ async def get_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, **kwargs) -> Workspace: # noqa: E501
1831
+ ...
1832
+
1833
+ @overload
1834
+ def get_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> Workspace: # noqa: E501
1835
+ ...
1836
+
1837
+ @validate_arguments
1838
+ def get_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Workspace, Awaitable[Workspace]]: # noqa: E501
1839
+ """[EXPERIMENTAL] GetSharedWorkspace: Get a shared workspace. # noqa: E501
1840
+
1841
+ Get a shared workspace. # noqa: E501
1842
+ This method makes a synchronous HTTP request by default. To make an
1843
+ asynchronous HTTP request, please pass async_req=True
1844
+
1845
+ >>> thread = api.get_shared_workspace(workspace_name, as_at, async_req=True)
1846
+ >>> result = thread.get()
1847
+
1848
+ :param workspace_name: The shared workspace name. (required)
1849
+ :type workspace_name: str
1850
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
1851
+ :type as_at: datetime
1852
+ :param async_req: Whether to execute the request asynchronously.
1853
+ :type async_req: bool, optional
1854
+ :param _request_timeout: timeout setting for this request.
1855
+ If one number provided, it will be total request
1856
+ timeout. It can also be a pair (tuple) of
1857
+ (connection, read) timeouts.
1858
+ :return: Returns the result object.
1859
+ If the method is called asynchronously,
1860
+ returns the request thread.
1861
+ :rtype: Workspace
1862
+ """
1863
+ kwargs['_return_http_data_only'] = True
1864
+ if '_preload_content' in kwargs:
1865
+ message = "Error! Please call the get_shared_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1866
+ raise ValueError(message)
1867
+ if async_req is not None:
1868
+ kwargs['async_req'] = async_req
1869
+ return self.get_shared_workspace_with_http_info(workspace_name, as_at, **kwargs) # noqa: E501
1870
+
1871
+ @validate_arguments
1872
+ def get_shared_workspace_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1873
+ """[EXPERIMENTAL] GetSharedWorkspace: Get a shared workspace. # noqa: E501
1874
+
1875
+ Get a shared workspace. # noqa: E501
1876
+ This method makes a synchronous HTTP request by default. To make an
1877
+ asynchronous HTTP request, please pass async_req=True
1878
+
1879
+ >>> thread = api.get_shared_workspace_with_http_info(workspace_name, as_at, async_req=True)
1880
+ >>> result = thread.get()
1881
+
1882
+ :param workspace_name: The shared workspace name. (required)
1883
+ :type workspace_name: str
1884
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
1885
+ :type as_at: datetime
1886
+ :param async_req: Whether to execute the request asynchronously.
1887
+ :type async_req: bool, optional
1888
+ :param _preload_content: if False, the ApiResponse.data will
1889
+ be set to none and raw_data will store the
1890
+ HTTP response body without reading/decoding.
1891
+ Default is True.
1892
+ :type _preload_content: bool, optional
1893
+ :param _return_http_data_only: response data instead of ApiResponse
1894
+ object with status code, headers, etc
1895
+ :type _return_http_data_only: bool, optional
1896
+ :param _request_timeout: timeout setting for this request. If one
1897
+ number provided, it will be total request
1898
+ timeout. It can also be a pair (tuple) of
1899
+ (connection, read) timeouts.
1900
+ :param _request_auth: set to override the auth_settings for an a single
1901
+ request; this effectively ignores the authentication
1902
+ in the spec for a single request.
1903
+ :type _request_auth: dict, optional
1904
+ :type _content_type: string, optional: force content-type for the request
1905
+ :return: Returns the result object.
1906
+ If the method is called asynchronously,
1907
+ returns the request thread.
1908
+ :rtype: tuple(Workspace, status_code(int), headers(HTTPHeaderDict))
1909
+ """
1910
+
1911
+ _params = locals()
1912
+
1913
+ _all_params = [
1914
+ 'workspace_name',
1915
+ 'as_at'
1916
+ ]
1917
+ _all_params.extend(
1918
+ [
1919
+ 'async_req',
1920
+ '_return_http_data_only',
1921
+ '_preload_content',
1922
+ '_request_timeout',
1923
+ '_request_auth',
1924
+ '_content_type',
1925
+ '_headers'
1926
+ ]
1927
+ )
1928
+
1929
+ # validate the arguments
1930
+ for _key, _val in _params['kwargs'].items():
1931
+ if _key not in _all_params:
1932
+ raise ApiTypeError(
1933
+ "Got an unexpected keyword argument '%s'"
1934
+ " to method get_shared_workspace" % _key
1935
+ )
1936
+ _params[_key] = _val
1937
+ del _params['kwargs']
1938
+
1939
+ _collection_formats = {}
1940
+
1941
+ # process the path parameters
1942
+ _path_params = {}
1943
+ if _params['workspace_name']:
1944
+ _path_params['workspaceName'] = _params['workspace_name']
1945
+
1946
+
1947
+ # process the query parameters
1948
+ _query_params = []
1949
+ if _params.get('as_at') is not None: # noqa: E501
1950
+ if isinstance(_params['as_at'], datetime):
1951
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1952
+ else:
1953
+ _query_params.append(('asAt', _params['as_at']))
1954
+
1955
+ # process the header parameters
1956
+ _header_params = dict(_params.get('_headers', {}))
1957
+ # process the form parameters
1958
+ _form_params = []
1959
+ _files = {}
1960
+ # process the body parameter
1961
+ _body_params = None
1962
+ # set the HTTP header `Accept`
1963
+ _header_params['Accept'] = self.api_client.select_header_accept(
1964
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1965
+
1966
+ # authentication setting
1967
+ _auth_settings = ['oauth2'] # noqa: E501
1968
+
1969
+ _response_types_map = {
1970
+ '200': "Workspace",
1971
+ '400': "LusidValidationProblemDetails",
1972
+ }
1973
+
1974
+ return self.api_client.call_api(
1975
+ '/api/workspaces/shared/{workspaceName}', 'GET',
1976
+ _path_params,
1977
+ _query_params,
1978
+ _header_params,
1979
+ body=_body_params,
1980
+ post_params=_form_params,
1981
+ files=_files,
1982
+ response_types_map=_response_types_map,
1983
+ auth_settings=_auth_settings,
1984
+ async_req=_params.get('async_req'),
1985
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1986
+ _preload_content=_params.get('_preload_content', True),
1987
+ _request_timeout=_params.get('_request_timeout'),
1988
+ collection_formats=_collection_formats,
1989
+ _request_auth=_params.get('_request_auth'))
1990
+
1991
+ @overload
1992
+ async def list_personal_items(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfWorkspaceItem: # noqa: E501
1993
+ ...
1994
+
1995
+ @overload
1996
+ def list_personal_items(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfWorkspaceItem: # noqa: E501
1997
+ ...
1998
+
1999
+ @validate_arguments
2000
+ def list_personal_items(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfWorkspaceItem, Awaitable[PagedResourceListOfWorkspaceItem]]: # noqa: E501
2001
+ """[EXPERIMENTAL] ListPersonalItems: List the items in a personal workspace. # noqa: E501
2002
+
2003
+ List the items in a personal workspace. # noqa: E501
2004
+ This method makes a synchronous HTTP request by default. To make an
2005
+ asynchronous HTTP request, please pass async_req=True
2006
+
2007
+ >>> thread = api.list_personal_items(workspace_name, as_at, page, sort_by, limit, filter, async_req=True)
2008
+ >>> result = thread.get()
2009
+
2010
+ :param workspace_name: The item's workspace name. (required)
2011
+ :type workspace_name: str
2012
+ :param as_at: The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.
2013
+ :type as_at: datetime
2014
+ :param page: The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2015
+ :type page: str
2016
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2017
+ :type sort_by: List[str]
2018
+ :param limit: When paginating, limit the number of returned results to this many.
2019
+ :type limit: int
2020
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2021
+ :type filter: str
2022
+ :param async_req: Whether to execute the request asynchronously.
2023
+ :type async_req: bool, optional
2024
+ :param _request_timeout: timeout setting for this request.
2025
+ If one number provided, it will be total request
2026
+ timeout. It can also be a pair (tuple) of
2027
+ (connection, read) timeouts.
2028
+ :return: Returns the result object.
2029
+ If the method is called asynchronously,
2030
+ returns the request thread.
2031
+ :rtype: PagedResourceListOfWorkspaceItem
2032
+ """
2033
+ kwargs['_return_http_data_only'] = True
2034
+ if '_preload_content' in kwargs:
2035
+ message = "Error! Please call the list_personal_items_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2036
+ raise ValueError(message)
2037
+ if async_req is not None:
2038
+ kwargs['async_req'] = async_req
2039
+ return self.list_personal_items_with_http_info(workspace_name, as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
2040
+
2041
+ @validate_arguments
2042
+ def list_personal_items_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2043
+ """[EXPERIMENTAL] ListPersonalItems: List the items in a personal workspace. # noqa: E501
2044
+
2045
+ List the items in a personal workspace. # noqa: E501
2046
+ This method makes a synchronous HTTP request by default. To make an
2047
+ asynchronous HTTP request, please pass async_req=True
2048
+
2049
+ >>> thread = api.list_personal_items_with_http_info(workspace_name, as_at, page, sort_by, limit, filter, async_req=True)
2050
+ >>> result = thread.get()
2051
+
2052
+ :param workspace_name: The item's workspace name. (required)
2053
+ :type workspace_name: str
2054
+ :param as_at: The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.
2055
+ :type as_at: datetime
2056
+ :param page: The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2057
+ :type page: str
2058
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2059
+ :type sort_by: List[str]
2060
+ :param limit: When paginating, limit the number of returned results to this many.
2061
+ :type limit: int
2062
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2063
+ :type filter: str
2064
+ :param async_req: Whether to execute the request asynchronously.
2065
+ :type async_req: bool, optional
2066
+ :param _preload_content: if False, the ApiResponse.data will
2067
+ be set to none and raw_data will store the
2068
+ HTTP response body without reading/decoding.
2069
+ Default is True.
2070
+ :type _preload_content: bool, optional
2071
+ :param _return_http_data_only: response data instead of ApiResponse
2072
+ object with status code, headers, etc
2073
+ :type _return_http_data_only: bool, optional
2074
+ :param _request_timeout: timeout setting for this request. If one
2075
+ number provided, it will be total request
2076
+ timeout. It can also be a pair (tuple) of
2077
+ (connection, read) timeouts.
2078
+ :param _request_auth: set to override the auth_settings for an a single
2079
+ request; this effectively ignores the authentication
2080
+ in the spec for a single request.
2081
+ :type _request_auth: dict, optional
2082
+ :type _content_type: string, optional: force content-type for the request
2083
+ :return: Returns the result object.
2084
+ If the method is called asynchronously,
2085
+ returns the request thread.
2086
+ :rtype: tuple(PagedResourceListOfWorkspaceItem, status_code(int), headers(HTTPHeaderDict))
2087
+ """
2088
+
2089
+ _params = locals()
2090
+
2091
+ _all_params = [
2092
+ 'workspace_name',
2093
+ 'as_at',
2094
+ 'page',
2095
+ 'sort_by',
2096
+ 'limit',
2097
+ 'filter'
2098
+ ]
2099
+ _all_params.extend(
2100
+ [
2101
+ 'async_req',
2102
+ '_return_http_data_only',
2103
+ '_preload_content',
2104
+ '_request_timeout',
2105
+ '_request_auth',
2106
+ '_content_type',
2107
+ '_headers'
2108
+ ]
2109
+ )
2110
+
2111
+ # validate the arguments
2112
+ for _key, _val in _params['kwargs'].items():
2113
+ if _key not in _all_params:
2114
+ raise ApiTypeError(
2115
+ "Got an unexpected keyword argument '%s'"
2116
+ " to method list_personal_items" % _key
2117
+ )
2118
+ _params[_key] = _val
2119
+ del _params['kwargs']
2120
+
2121
+ _collection_formats = {}
2122
+
2123
+ # process the path parameters
2124
+ _path_params = {}
2125
+ if _params['workspace_name']:
2126
+ _path_params['workspaceName'] = _params['workspace_name']
2127
+
2128
+
2129
+ # process the query parameters
2130
+ _query_params = []
2131
+ if _params.get('as_at') is not None: # noqa: E501
2132
+ if isinstance(_params['as_at'], datetime):
2133
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
2134
+ else:
2135
+ _query_params.append(('asAt', _params['as_at']))
2136
+
2137
+ if _params.get('page') is not None: # noqa: E501
2138
+ _query_params.append(('page', _params['page']))
2139
+
2140
+ if _params.get('sort_by') is not None: # noqa: E501
2141
+ _query_params.append(('sortBy', _params['sort_by']))
2142
+ _collection_formats['sortBy'] = 'multi'
2143
+
2144
+ if _params.get('limit') is not None: # noqa: E501
2145
+ _query_params.append(('limit', _params['limit']))
2146
+
2147
+ if _params.get('filter') is not None: # noqa: E501
2148
+ _query_params.append(('filter', _params['filter']))
2149
+
2150
+ # process the header parameters
2151
+ _header_params = dict(_params.get('_headers', {}))
2152
+ # process the form parameters
2153
+ _form_params = []
2154
+ _files = {}
2155
+ # process the body parameter
2156
+ _body_params = None
2157
+ # set the HTTP header `Accept`
2158
+ _header_params['Accept'] = self.api_client.select_header_accept(
2159
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2160
+
2161
+ # authentication setting
2162
+ _auth_settings = ['oauth2'] # noqa: E501
2163
+
2164
+ _response_types_map = {
2165
+ '200': "PagedResourceListOfWorkspaceItem",
2166
+ '400': "LusidValidationProblemDetails",
2167
+ }
2168
+
2169
+ return self.api_client.call_api(
2170
+ '/api/workspaces/personal/{workspaceName}/items', 'GET',
2171
+ _path_params,
2172
+ _query_params,
2173
+ _header_params,
2174
+ body=_body_params,
2175
+ post_params=_form_params,
2176
+ files=_files,
2177
+ response_types_map=_response_types_map,
2178
+ auth_settings=_auth_settings,
2179
+ async_req=_params.get('async_req'),
2180
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2181
+ _preload_content=_params.get('_preload_content', True),
2182
+ _request_timeout=_params.get('_request_timeout'),
2183
+ collection_formats=_collection_formats,
2184
+ _request_auth=_params.get('_request_auth'))
2185
+
2186
+ @overload
2187
+ async def list_personal_workspaces(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfWorkspace: # noqa: E501
2188
+ ...
2189
+
2190
+ @overload
2191
+ def list_personal_workspaces(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfWorkspace: # noqa: E501
2192
+ ...
2193
+
2194
+ @validate_arguments
2195
+ def list_personal_workspaces(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfWorkspace, Awaitable[PagedResourceListOfWorkspace]]: # noqa: E501
2196
+ """[EXPERIMENTAL] ListPersonalWorkspaces: List personal workspaces. # noqa: E501
2197
+
2198
+ List personal workspaces. # noqa: E501
2199
+ This method makes a synchronous HTTP request by default. To make an
2200
+ asynchronous HTTP request, please pass async_req=True
2201
+
2202
+ >>> thread = api.list_personal_workspaces(as_at, page, sort_by, limit, filter, async_req=True)
2203
+ >>> result = thread.get()
2204
+
2205
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
2206
+ :type as_at: datetime
2207
+ :param page: The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2208
+ :type page: str
2209
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2210
+ :type sort_by: List[str]
2211
+ :param limit: When paginating, limit the number of returned results to this many.
2212
+ :type limit: int
2213
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2214
+ :type filter: str
2215
+ :param async_req: Whether to execute the request asynchronously.
2216
+ :type async_req: bool, optional
2217
+ :param _request_timeout: timeout setting for this request.
2218
+ If one number provided, it will be total request
2219
+ timeout. It can also be a pair (tuple) of
2220
+ (connection, read) timeouts.
2221
+ :return: Returns the result object.
2222
+ If the method is called asynchronously,
2223
+ returns the request thread.
2224
+ :rtype: PagedResourceListOfWorkspace
2225
+ """
2226
+ kwargs['_return_http_data_only'] = True
2227
+ if '_preload_content' in kwargs:
2228
+ message = "Error! Please call the list_personal_workspaces_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2229
+ raise ValueError(message)
2230
+ if async_req is not None:
2231
+ kwargs['async_req'] = async_req
2232
+ return self.list_personal_workspaces_with_http_info(as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
2233
+
2234
+ @validate_arguments
2235
+ def list_personal_workspaces_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2236
+ """[EXPERIMENTAL] ListPersonalWorkspaces: List personal workspaces. # noqa: E501
2237
+
2238
+ List personal workspaces. # noqa: E501
2239
+ This method makes a synchronous HTTP request by default. To make an
2240
+ asynchronous HTTP request, please pass async_req=True
2241
+
2242
+ >>> thread = api.list_personal_workspaces_with_http_info(as_at, page, sort_by, limit, filter, async_req=True)
2243
+ >>> result = thread.get()
2244
+
2245
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
2246
+ :type as_at: datetime
2247
+ :param page: The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2248
+ :type page: str
2249
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2250
+ :type sort_by: List[str]
2251
+ :param limit: When paginating, limit the number of returned results to this many.
2252
+ :type limit: int
2253
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2254
+ :type filter: str
2255
+ :param async_req: Whether to execute the request asynchronously.
2256
+ :type async_req: bool, optional
2257
+ :param _preload_content: if False, the ApiResponse.data will
2258
+ be set to none and raw_data will store the
2259
+ HTTP response body without reading/decoding.
2260
+ Default is True.
2261
+ :type _preload_content: bool, optional
2262
+ :param _return_http_data_only: response data instead of ApiResponse
2263
+ object with status code, headers, etc
2264
+ :type _return_http_data_only: bool, optional
2265
+ :param _request_timeout: timeout setting for this request. If one
2266
+ number provided, it will be total request
2267
+ timeout. It can also be a pair (tuple) of
2268
+ (connection, read) timeouts.
2269
+ :param _request_auth: set to override the auth_settings for an a single
2270
+ request; this effectively ignores the authentication
2271
+ in the spec for a single request.
2272
+ :type _request_auth: dict, optional
2273
+ :type _content_type: string, optional: force content-type for the request
2274
+ :return: Returns the result object.
2275
+ If the method is called asynchronously,
2276
+ returns the request thread.
2277
+ :rtype: tuple(PagedResourceListOfWorkspace, status_code(int), headers(HTTPHeaderDict))
2278
+ """
2279
+
2280
+ _params = locals()
2281
+
2282
+ _all_params = [
2283
+ 'as_at',
2284
+ 'page',
2285
+ 'sort_by',
2286
+ 'limit',
2287
+ 'filter'
2288
+ ]
2289
+ _all_params.extend(
2290
+ [
2291
+ 'async_req',
2292
+ '_return_http_data_only',
2293
+ '_preload_content',
2294
+ '_request_timeout',
2295
+ '_request_auth',
2296
+ '_content_type',
2297
+ '_headers'
2298
+ ]
2299
+ )
2300
+
2301
+ # validate the arguments
2302
+ for _key, _val in _params['kwargs'].items():
2303
+ if _key not in _all_params:
2304
+ raise ApiTypeError(
2305
+ "Got an unexpected keyword argument '%s'"
2306
+ " to method list_personal_workspaces" % _key
2307
+ )
2308
+ _params[_key] = _val
2309
+ del _params['kwargs']
2310
+
2311
+ _collection_formats = {}
2312
+
2313
+ # process the path parameters
2314
+ _path_params = {}
2315
+
2316
+ # process the query parameters
2317
+ _query_params = []
2318
+ if _params.get('as_at') is not None: # noqa: E501
2319
+ if isinstance(_params['as_at'], datetime):
2320
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
2321
+ else:
2322
+ _query_params.append(('asAt', _params['as_at']))
2323
+
2324
+ if _params.get('page') is not None: # noqa: E501
2325
+ _query_params.append(('page', _params['page']))
2326
+
2327
+ if _params.get('sort_by') is not None: # noqa: E501
2328
+ _query_params.append(('sortBy', _params['sort_by']))
2329
+ _collection_formats['sortBy'] = 'multi'
2330
+
2331
+ if _params.get('limit') is not None: # noqa: E501
2332
+ _query_params.append(('limit', _params['limit']))
2333
+
2334
+ if _params.get('filter') is not None: # noqa: E501
2335
+ _query_params.append(('filter', _params['filter']))
2336
+
2337
+ # process the header parameters
2338
+ _header_params = dict(_params.get('_headers', {}))
2339
+ # process the form parameters
2340
+ _form_params = []
2341
+ _files = {}
2342
+ # process the body parameter
2343
+ _body_params = None
2344
+ # set the HTTP header `Accept`
2345
+ _header_params['Accept'] = self.api_client.select_header_accept(
2346
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2347
+
2348
+ # authentication setting
2349
+ _auth_settings = ['oauth2'] # noqa: E501
2350
+
2351
+ _response_types_map = {
2352
+ '200': "PagedResourceListOfWorkspace",
2353
+ '400': "LusidValidationProblemDetails",
2354
+ }
2355
+
2356
+ return self.api_client.call_api(
2357
+ '/api/workspaces/personal', 'GET',
2358
+ _path_params,
2359
+ _query_params,
2360
+ _header_params,
2361
+ body=_body_params,
2362
+ post_params=_form_params,
2363
+ files=_files,
2364
+ response_types_map=_response_types_map,
2365
+ auth_settings=_auth_settings,
2366
+ async_req=_params.get('async_req'),
2367
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2368
+ _preload_content=_params.get('_preload_content', True),
2369
+ _request_timeout=_params.get('_request_timeout'),
2370
+ collection_formats=_collection_formats,
2371
+ _request_auth=_params.get('_request_auth'))
2372
+
2373
+ @overload
2374
+ async def list_shared_items(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfWorkspaceItem: # noqa: E501
2375
+ ...
2376
+
2377
+ @overload
2378
+ def list_shared_items(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfWorkspaceItem: # noqa: E501
2379
+ ...
2380
+
2381
+ @validate_arguments
2382
+ def list_shared_items(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfWorkspaceItem, Awaitable[PagedResourceListOfWorkspaceItem]]: # noqa: E501
2383
+ """[EXPERIMENTAL] ListSharedItems: List the items in a shared workspace. # noqa: E501
2384
+
2385
+ List the items in a shared workspace. # noqa: E501
2386
+ This method makes a synchronous HTTP request by default. To make an
2387
+ asynchronous HTTP request, please pass async_req=True
2388
+
2389
+ >>> thread = api.list_shared_items(workspace_name, as_at, page, sort_by, limit, filter, async_req=True)
2390
+ >>> result = thread.get()
2391
+
2392
+ :param workspace_name: The item's workspace name. (required)
2393
+ :type workspace_name: str
2394
+ :param as_at: The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.
2395
+ :type as_at: datetime
2396
+ :param page: The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2397
+ :type page: str
2398
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2399
+ :type sort_by: List[str]
2400
+ :param limit: When paginating, limit the number of returned results to this many.
2401
+ :type limit: int
2402
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2403
+ :type filter: str
2404
+ :param async_req: Whether to execute the request asynchronously.
2405
+ :type async_req: bool, optional
2406
+ :param _request_timeout: timeout setting for this request.
2407
+ If one number provided, it will be total request
2408
+ timeout. It can also be a pair (tuple) of
2409
+ (connection, read) timeouts.
2410
+ :return: Returns the result object.
2411
+ If the method is called asynchronously,
2412
+ returns the request thread.
2413
+ :rtype: PagedResourceListOfWorkspaceItem
2414
+ """
2415
+ kwargs['_return_http_data_only'] = True
2416
+ if '_preload_content' in kwargs:
2417
+ message = "Error! Please call the list_shared_items_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2418
+ raise ValueError(message)
2419
+ if async_req is not None:
2420
+ kwargs['async_req'] = async_req
2421
+ return self.list_shared_items_with_http_info(workspace_name, as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
2422
+
2423
+ @validate_arguments
2424
+ def list_shared_items_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item's workspace name.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2425
+ """[EXPERIMENTAL] ListSharedItems: List the items in a shared workspace. # noqa: E501
2426
+
2427
+ List the items in a shared workspace. # noqa: E501
2428
+ This method makes a synchronous HTTP request by default. To make an
2429
+ asynchronous HTTP request, please pass async_req=True
2430
+
2431
+ >>> thread = api.list_shared_items_with_http_info(workspace_name, as_at, page, sort_by, limit, filter, async_req=True)
2432
+ >>> result = thread.get()
2433
+
2434
+ :param workspace_name: The item's workspace name. (required)
2435
+ :type workspace_name: str
2436
+ :param as_at: The asAt datetime at which to retrieve workspace items. Defaults to 'latest' if not specified.
2437
+ :type as_at: datetime
2438
+ :param page: The pagination token to use to continue listing workspaces items from a previous call to list workspaces items. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2439
+ :type page: str
2440
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2441
+ :type sort_by: List[str]
2442
+ :param limit: When paginating, limit the number of returned results to this many.
2443
+ :type limit: int
2444
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2445
+ :type filter: str
2446
+ :param async_req: Whether to execute the request asynchronously.
2447
+ :type async_req: bool, optional
2448
+ :param _preload_content: if False, the ApiResponse.data will
2449
+ be set to none and raw_data will store the
2450
+ HTTP response body without reading/decoding.
2451
+ Default is True.
2452
+ :type _preload_content: bool, optional
2453
+ :param _return_http_data_only: response data instead of ApiResponse
2454
+ object with status code, headers, etc
2455
+ :type _return_http_data_only: bool, optional
2456
+ :param _request_timeout: timeout setting for this request. If one
2457
+ number provided, it will be total request
2458
+ timeout. It can also be a pair (tuple) of
2459
+ (connection, read) timeouts.
2460
+ :param _request_auth: set to override the auth_settings for an a single
2461
+ request; this effectively ignores the authentication
2462
+ in the spec for a single request.
2463
+ :type _request_auth: dict, optional
2464
+ :type _content_type: string, optional: force content-type for the request
2465
+ :return: Returns the result object.
2466
+ If the method is called asynchronously,
2467
+ returns the request thread.
2468
+ :rtype: tuple(PagedResourceListOfWorkspaceItem, status_code(int), headers(HTTPHeaderDict))
2469
+ """
2470
+
2471
+ _params = locals()
2472
+
2473
+ _all_params = [
2474
+ 'workspace_name',
2475
+ 'as_at',
2476
+ 'page',
2477
+ 'sort_by',
2478
+ 'limit',
2479
+ 'filter'
2480
+ ]
2481
+ _all_params.extend(
2482
+ [
2483
+ 'async_req',
2484
+ '_return_http_data_only',
2485
+ '_preload_content',
2486
+ '_request_timeout',
2487
+ '_request_auth',
2488
+ '_content_type',
2489
+ '_headers'
2490
+ ]
2491
+ )
2492
+
2493
+ # validate the arguments
2494
+ for _key, _val in _params['kwargs'].items():
2495
+ if _key not in _all_params:
2496
+ raise ApiTypeError(
2497
+ "Got an unexpected keyword argument '%s'"
2498
+ " to method list_shared_items" % _key
2499
+ )
2500
+ _params[_key] = _val
2501
+ del _params['kwargs']
2502
+
2503
+ _collection_formats = {}
2504
+
2505
+ # process the path parameters
2506
+ _path_params = {}
2507
+ if _params['workspace_name']:
2508
+ _path_params['workspaceName'] = _params['workspace_name']
2509
+
2510
+
2511
+ # process the query parameters
2512
+ _query_params = []
2513
+ if _params.get('as_at') is not None: # noqa: E501
2514
+ if isinstance(_params['as_at'], datetime):
2515
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
2516
+ else:
2517
+ _query_params.append(('asAt', _params['as_at']))
2518
+
2519
+ if _params.get('page') is not None: # noqa: E501
2520
+ _query_params.append(('page', _params['page']))
2521
+
2522
+ if _params.get('sort_by') is not None: # noqa: E501
2523
+ _query_params.append(('sortBy', _params['sort_by']))
2524
+ _collection_formats['sortBy'] = 'multi'
2525
+
2526
+ if _params.get('limit') is not None: # noqa: E501
2527
+ _query_params.append(('limit', _params['limit']))
2528
+
2529
+ if _params.get('filter') is not None: # noqa: E501
2530
+ _query_params.append(('filter', _params['filter']))
2531
+
2532
+ # process the header parameters
2533
+ _header_params = dict(_params.get('_headers', {}))
2534
+ # process the form parameters
2535
+ _form_params = []
2536
+ _files = {}
2537
+ # process the body parameter
2538
+ _body_params = None
2539
+ # set the HTTP header `Accept`
2540
+ _header_params['Accept'] = self.api_client.select_header_accept(
2541
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2542
+
2543
+ # authentication setting
2544
+ _auth_settings = ['oauth2'] # noqa: E501
2545
+
2546
+ _response_types_map = {
2547
+ '200': "PagedResourceListOfWorkspaceItem",
2548
+ '400': "LusidValidationProblemDetails",
2549
+ }
2550
+
2551
+ return self.api_client.call_api(
2552
+ '/api/workspaces/shared/{workspaceName}/items', 'GET',
2553
+ _path_params,
2554
+ _query_params,
2555
+ _header_params,
2556
+ body=_body_params,
2557
+ post_params=_form_params,
2558
+ files=_files,
2559
+ response_types_map=_response_types_map,
2560
+ auth_settings=_auth_settings,
2561
+ async_req=_params.get('async_req'),
2562
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2563
+ _preload_content=_params.get('_preload_content', True),
2564
+ _request_timeout=_params.get('_request_timeout'),
2565
+ collection_formats=_collection_formats,
2566
+ _request_auth=_params.get('_request_auth'))
2567
+
2568
+ @overload
2569
+ async def list_shared_workspaces(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> PagedResourceListOfWorkspace: # noqa: E501
2570
+ ...
2571
+
2572
+ @overload
2573
+ def list_shared_workspaces(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfWorkspace: # noqa: E501
2574
+ ...
2575
+
2576
+ @validate_arguments
2577
+ def list_shared_workspaces(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfWorkspace, Awaitable[PagedResourceListOfWorkspace]]: # noqa: E501
2578
+ """[EXPERIMENTAL] ListSharedWorkspaces: List shared workspaces. # noqa: E501
2579
+
2580
+ List shared workspaces. # noqa: E501
2581
+ This method makes a synchronous HTTP request by default. To make an
2582
+ asynchronous HTTP request, please pass async_req=True
2583
+
2584
+ >>> thread = api.list_shared_workspaces(as_at, page, sort_by, limit, filter, async_req=True)
2585
+ >>> result = thread.get()
2586
+
2587
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
2588
+ :type as_at: datetime
2589
+ :param page: The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2590
+ :type page: str
2591
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2592
+ :type sort_by: List[str]
2593
+ :param limit: When paginating, limit the number of returned results to this many.
2594
+ :type limit: int
2595
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2596
+ :type filter: str
2597
+ :param async_req: Whether to execute the request asynchronously.
2598
+ :type async_req: bool, optional
2599
+ :param _request_timeout: timeout setting for this request.
2600
+ If one number provided, it will be total request
2601
+ timeout. It can also be a pair (tuple) of
2602
+ (connection, read) timeouts.
2603
+ :return: Returns the result object.
2604
+ If the method is called asynchronously,
2605
+ returns the request thread.
2606
+ :rtype: PagedResourceListOfWorkspace
2607
+ """
2608
+ kwargs['_return_http_data_only'] = True
2609
+ if '_preload_content' in kwargs:
2610
+ message = "Error! Please call the list_shared_workspaces_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2611
+ raise ValueError(message)
2612
+ if async_req is not None:
2613
+ kwargs['async_req'] = async_req
2614
+ return self.list_shared_workspaces_with_http_info(as_at, page, sort_by, limit, filter, **kwargs) # noqa: E501
2615
+
2616
+ @validate_arguments
2617
+ def list_shared_workspaces_with_http_info(self, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2618
+ """[EXPERIMENTAL] ListSharedWorkspaces: List shared workspaces. # noqa: E501
2619
+
2620
+ List shared workspaces. # noqa: E501
2621
+ This method makes a synchronous HTTP request by default. To make an
2622
+ asynchronous HTTP request, please pass async_req=True
2623
+
2624
+ >>> thread = api.list_shared_workspaces_with_http_info(as_at, page, sort_by, limit, filter, async_req=True)
2625
+ >>> result = thread.get()
2626
+
2627
+ :param as_at: The asAt datetime at which to retrieve workspaces. Defaults to 'latest' if not specified.
2628
+ :type as_at: datetime
2629
+ :param page: The pagination token to use to continue listing workspaces from a previous call to list workspaces. This value is returned from the previous call. If a pagination token is provided the sortBy, filter, effectiveAt, and asAt fields must not have changed since the original request.
2630
+ :type page: str
2631
+ :param sort_by: A list of field names to sort by, each suffixed by \" ASC\" or \" DESC\".
2632
+ :type sort_by: List[str]
2633
+ :param limit: When paginating, limit the number of returned results to this many.
2634
+ :type limit: int
2635
+ :param filter: Expression to filter the result set. Read more about filtering results from LUSID here: https://support.lusid.com/filtering-results-from-lusid.
2636
+ :type filter: str
2637
+ :param async_req: Whether to execute the request asynchronously.
2638
+ :type async_req: bool, optional
2639
+ :param _preload_content: if False, the ApiResponse.data will
2640
+ be set to none and raw_data will store the
2641
+ HTTP response body without reading/decoding.
2642
+ Default is True.
2643
+ :type _preload_content: bool, optional
2644
+ :param _return_http_data_only: response data instead of ApiResponse
2645
+ object with status code, headers, etc
2646
+ :type _return_http_data_only: bool, optional
2647
+ :param _request_timeout: timeout setting for this request. If one
2648
+ number provided, it will be total request
2649
+ timeout. It can also be a pair (tuple) of
2650
+ (connection, read) timeouts.
2651
+ :param _request_auth: set to override the auth_settings for an a single
2652
+ request; this effectively ignores the authentication
2653
+ in the spec for a single request.
2654
+ :type _request_auth: dict, optional
2655
+ :type _content_type: string, optional: force content-type for the request
2656
+ :return: Returns the result object.
2657
+ If the method is called asynchronously,
2658
+ returns the request thread.
2659
+ :rtype: tuple(PagedResourceListOfWorkspace, status_code(int), headers(HTTPHeaderDict))
2660
+ """
2661
+
2662
+ _params = locals()
2663
+
2664
+ _all_params = [
2665
+ 'as_at',
2666
+ 'page',
2667
+ 'sort_by',
2668
+ 'limit',
2669
+ 'filter'
2670
+ ]
2671
+ _all_params.extend(
2672
+ [
2673
+ 'async_req',
2674
+ '_return_http_data_only',
2675
+ '_preload_content',
2676
+ '_request_timeout',
2677
+ '_request_auth',
2678
+ '_content_type',
2679
+ '_headers'
2680
+ ]
2681
+ )
2682
+
2683
+ # validate the arguments
2684
+ for _key, _val in _params['kwargs'].items():
2685
+ if _key not in _all_params:
2686
+ raise ApiTypeError(
2687
+ "Got an unexpected keyword argument '%s'"
2688
+ " to method list_shared_workspaces" % _key
2689
+ )
2690
+ _params[_key] = _val
2691
+ del _params['kwargs']
2692
+
2693
+ _collection_formats = {}
2694
+
2695
+ # process the path parameters
2696
+ _path_params = {}
2697
+
2698
+ # process the query parameters
2699
+ _query_params = []
2700
+ if _params.get('as_at') is not None: # noqa: E501
2701
+ if isinstance(_params['as_at'], datetime):
2702
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
2703
+ else:
2704
+ _query_params.append(('asAt', _params['as_at']))
2705
+
2706
+ if _params.get('page') is not None: # noqa: E501
2707
+ _query_params.append(('page', _params['page']))
2708
+
2709
+ if _params.get('sort_by') is not None: # noqa: E501
2710
+ _query_params.append(('sortBy', _params['sort_by']))
2711
+ _collection_formats['sortBy'] = 'multi'
2712
+
2713
+ if _params.get('limit') is not None: # noqa: E501
2714
+ _query_params.append(('limit', _params['limit']))
2715
+
2716
+ if _params.get('filter') is not None: # noqa: E501
2717
+ _query_params.append(('filter', _params['filter']))
2718
+
2719
+ # process the header parameters
2720
+ _header_params = dict(_params.get('_headers', {}))
2721
+ # process the form parameters
2722
+ _form_params = []
2723
+ _files = {}
2724
+ # process the body parameter
2725
+ _body_params = None
2726
+ # set the HTTP header `Accept`
2727
+ _header_params['Accept'] = self.api_client.select_header_accept(
2728
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2729
+
2730
+ # authentication setting
2731
+ _auth_settings = ['oauth2'] # noqa: E501
2732
+
2733
+ _response_types_map = {
2734
+ '200': "PagedResourceListOfWorkspace",
2735
+ '400': "LusidValidationProblemDetails",
2736
+ }
2737
+
2738
+ return self.api_client.call_api(
2739
+ '/api/workspaces/shared', 'GET',
2740
+ _path_params,
2741
+ _query_params,
2742
+ _header_params,
2743
+ body=_body_params,
2744
+ post_params=_form_params,
2745
+ files=_files,
2746
+ response_types_map=_response_types_map,
2747
+ auth_settings=_auth_settings,
2748
+ async_req=_params.get('async_req'),
2749
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2750
+ _preload_content=_params.get('_preload_content', True),
2751
+ _request_timeout=_params.get('_request_timeout'),
2752
+ collection_formats=_collection_formats,
2753
+ _request_auth=_params.get('_request_auth'))
2754
+
2755
+ @overload
2756
+ async def update_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, **kwargs) -> WorkspaceItem: # noqa: E501
2757
+ ...
2758
+
2759
+ @overload
2760
+ def update_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, async_req: Optional[bool]=True, **kwargs) -> WorkspaceItem: # noqa: E501
2761
+ ...
2762
+
2763
+ @validate_arguments
2764
+ def update_personal_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[WorkspaceItem, Awaitable[WorkspaceItem]]: # noqa: E501
2765
+ """[EXPERIMENTAL] UpdatePersonalItem: Update an item in a personal workspace. # noqa: E501
2766
+
2767
+ Update an item in a personal workspace. # noqa: E501
2768
+ This method makes a synchronous HTTP request by default. To make an
2769
+ asynchronous HTTP request, please pass async_req=True
2770
+
2771
+ >>> thread = api.update_personal_item(workspace_name, item_name, workspace_item_update_request, async_req=True)
2772
+ >>> result = thread.get()
2773
+
2774
+ :param workspace_name: The personal workspace name. (required)
2775
+ :type workspace_name: str
2776
+ :param item_name: The item name. (required)
2777
+ :type item_name: str
2778
+ :param workspace_item_update_request: The new item details.
2779
+ :type workspace_item_update_request: WorkspaceItemUpdateRequest
2780
+ :param async_req: Whether to execute the request asynchronously.
2781
+ :type async_req: bool, optional
2782
+ :param _request_timeout: timeout setting for this request.
2783
+ If one number provided, it will be total request
2784
+ timeout. It can also be a pair (tuple) of
2785
+ (connection, read) timeouts.
2786
+ :return: Returns the result object.
2787
+ If the method is called asynchronously,
2788
+ returns the request thread.
2789
+ :rtype: WorkspaceItem
2790
+ """
2791
+ kwargs['_return_http_data_only'] = True
2792
+ if '_preload_content' in kwargs:
2793
+ message = "Error! Please call the update_personal_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2794
+ raise ValueError(message)
2795
+ if async_req is not None:
2796
+ kwargs['async_req'] = async_req
2797
+ return self.update_personal_item_with_http_info(workspace_name, item_name, workspace_item_update_request, **kwargs) # noqa: E501
2798
+
2799
+ @validate_arguments
2800
+ def update_personal_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2801
+ """[EXPERIMENTAL] UpdatePersonalItem: Update an item in a personal workspace. # noqa: E501
2802
+
2803
+ Update an item in a personal workspace. # noqa: E501
2804
+ This method makes a synchronous HTTP request by default. To make an
2805
+ asynchronous HTTP request, please pass async_req=True
2806
+
2807
+ >>> thread = api.update_personal_item_with_http_info(workspace_name, item_name, workspace_item_update_request, async_req=True)
2808
+ >>> result = thread.get()
2809
+
2810
+ :param workspace_name: The personal workspace name. (required)
2811
+ :type workspace_name: str
2812
+ :param item_name: The item name. (required)
2813
+ :type item_name: str
2814
+ :param workspace_item_update_request: The new item details.
2815
+ :type workspace_item_update_request: WorkspaceItemUpdateRequest
2816
+ :param async_req: Whether to execute the request asynchronously.
2817
+ :type async_req: bool, optional
2818
+ :param _preload_content: if False, the ApiResponse.data will
2819
+ be set to none and raw_data will store the
2820
+ HTTP response body without reading/decoding.
2821
+ Default is True.
2822
+ :type _preload_content: bool, optional
2823
+ :param _return_http_data_only: response data instead of ApiResponse
2824
+ object with status code, headers, etc
2825
+ :type _return_http_data_only: bool, optional
2826
+ :param _request_timeout: timeout setting for this request. If one
2827
+ number provided, it will be total request
2828
+ timeout. It can also be a pair (tuple) of
2829
+ (connection, read) timeouts.
2830
+ :param _request_auth: set to override the auth_settings for an a single
2831
+ request; this effectively ignores the authentication
2832
+ in the spec for a single request.
2833
+ :type _request_auth: dict, optional
2834
+ :type _content_type: string, optional: force content-type for the request
2835
+ :return: Returns the result object.
2836
+ If the method is called asynchronously,
2837
+ returns the request thread.
2838
+ :rtype: tuple(WorkspaceItem, status_code(int), headers(HTTPHeaderDict))
2839
+ """
2840
+
2841
+ _params = locals()
2842
+
2843
+ _all_params = [
2844
+ 'workspace_name',
2845
+ 'item_name',
2846
+ 'workspace_item_update_request'
2847
+ ]
2848
+ _all_params.extend(
2849
+ [
2850
+ 'async_req',
2851
+ '_return_http_data_only',
2852
+ '_preload_content',
2853
+ '_request_timeout',
2854
+ '_request_auth',
2855
+ '_content_type',
2856
+ '_headers'
2857
+ ]
2858
+ )
2859
+
2860
+ # validate the arguments
2861
+ for _key, _val in _params['kwargs'].items():
2862
+ if _key not in _all_params:
2863
+ raise ApiTypeError(
2864
+ "Got an unexpected keyword argument '%s'"
2865
+ " to method update_personal_item" % _key
2866
+ )
2867
+ _params[_key] = _val
2868
+ del _params['kwargs']
2869
+
2870
+ _collection_formats = {}
2871
+
2872
+ # process the path parameters
2873
+ _path_params = {}
2874
+ if _params['workspace_name']:
2875
+ _path_params['workspaceName'] = _params['workspace_name']
2876
+
2877
+ if _params['item_name']:
2878
+ _path_params['itemName'] = _params['item_name']
2879
+
2880
+
2881
+ # process the query parameters
2882
+ _query_params = []
2883
+ # process the header parameters
2884
+ _header_params = dict(_params.get('_headers', {}))
2885
+ # process the form parameters
2886
+ _form_params = []
2887
+ _files = {}
2888
+ # process the body parameter
2889
+ _body_params = None
2890
+ if _params['workspace_item_update_request'] is not None:
2891
+ _body_params = _params['workspace_item_update_request']
2892
+
2893
+ # set the HTTP header `Accept`
2894
+ _header_params['Accept'] = self.api_client.select_header_accept(
2895
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2896
+
2897
+ # set the HTTP header `Content-Type`
2898
+ _content_types_list = _params.get('_content_type',
2899
+ self.api_client.select_header_content_type(
2900
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2901
+ if _content_types_list:
2902
+ _header_params['Content-Type'] = _content_types_list
2903
+
2904
+ # authentication setting
2905
+ _auth_settings = ['oauth2'] # noqa: E501
2906
+
2907
+ _response_types_map = {
2908
+ '200': "WorkspaceItem",
2909
+ '400': "LusidValidationProblemDetails",
2910
+ }
2911
+
2912
+ return self.api_client.call_api(
2913
+ '/api/workspaces/personal/{workspaceName}/items/{itemName}', 'PUT',
2914
+ _path_params,
2915
+ _query_params,
2916
+ _header_params,
2917
+ body=_body_params,
2918
+ post_params=_form_params,
2919
+ files=_files,
2920
+ response_types_map=_response_types_map,
2921
+ auth_settings=_auth_settings,
2922
+ async_req=_params.get('async_req'),
2923
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2924
+ _preload_content=_params.get('_preload_content', True),
2925
+ _request_timeout=_params.get('_request_timeout'),
2926
+ collection_formats=_collection_formats,
2927
+ _request_auth=_params.get('_request_auth'))
2928
+
2929
+ @overload
2930
+ async def update_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, **kwargs) -> Workspace: # noqa: E501
2931
+ ...
2932
+
2933
+ @overload
2934
+ def update_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, async_req: Optional[bool]=True, **kwargs) -> Workspace: # noqa: E501
2935
+ ...
2936
+
2937
+ @validate_arguments
2938
+ def update_personal_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Workspace, Awaitable[Workspace]]: # noqa: E501
2939
+ """[EXPERIMENTAL] UpdatePersonalWorkspace: Update a personal workspace. # noqa: E501
2940
+
2941
+ Update a personal workspace. # noqa: E501
2942
+ This method makes a synchronous HTTP request by default. To make an
2943
+ asynchronous HTTP request, please pass async_req=True
2944
+
2945
+ >>> thread = api.update_personal_workspace(workspace_name, workspace_update_request, async_req=True)
2946
+ >>> result = thread.get()
2947
+
2948
+ :param workspace_name: The personal workspace name. (required)
2949
+ :type workspace_name: str
2950
+ :param workspace_update_request: The new workspace details.
2951
+ :type workspace_update_request: WorkspaceUpdateRequest
2952
+ :param async_req: Whether to execute the request asynchronously.
2953
+ :type async_req: bool, optional
2954
+ :param _request_timeout: timeout setting for this request.
2955
+ If one number provided, it will be total request
2956
+ timeout. It can also be a pair (tuple) of
2957
+ (connection, read) timeouts.
2958
+ :return: Returns the result object.
2959
+ If the method is called asynchronously,
2960
+ returns the request thread.
2961
+ :rtype: Workspace
2962
+ """
2963
+ kwargs['_return_http_data_only'] = True
2964
+ if '_preload_content' in kwargs:
2965
+ message = "Error! Please call the update_personal_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2966
+ raise ValueError(message)
2967
+ if async_req is not None:
2968
+ kwargs['async_req'] = async_req
2969
+ return self.update_personal_workspace_with_http_info(workspace_name, workspace_update_request, **kwargs) # noqa: E501
2970
+
2971
+ @validate_arguments
2972
+ def update_personal_workspace_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The personal workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, **kwargs) -> ApiResponse: # noqa: E501
2973
+ """[EXPERIMENTAL] UpdatePersonalWorkspace: Update a personal workspace. # noqa: E501
2974
+
2975
+ Update a personal workspace. # noqa: E501
2976
+ This method makes a synchronous HTTP request by default. To make an
2977
+ asynchronous HTTP request, please pass async_req=True
2978
+
2979
+ >>> thread = api.update_personal_workspace_with_http_info(workspace_name, workspace_update_request, async_req=True)
2980
+ >>> result = thread.get()
2981
+
2982
+ :param workspace_name: The personal workspace name. (required)
2983
+ :type workspace_name: str
2984
+ :param workspace_update_request: The new workspace details.
2985
+ :type workspace_update_request: WorkspaceUpdateRequest
2986
+ :param async_req: Whether to execute the request asynchronously.
2987
+ :type async_req: bool, optional
2988
+ :param _preload_content: if False, the ApiResponse.data will
2989
+ be set to none and raw_data will store the
2990
+ HTTP response body without reading/decoding.
2991
+ Default is True.
2992
+ :type _preload_content: bool, optional
2993
+ :param _return_http_data_only: response data instead of ApiResponse
2994
+ object with status code, headers, etc
2995
+ :type _return_http_data_only: bool, optional
2996
+ :param _request_timeout: timeout setting for this request. If one
2997
+ number provided, it will be total request
2998
+ timeout. It can also be a pair (tuple) of
2999
+ (connection, read) timeouts.
3000
+ :param _request_auth: set to override the auth_settings for an a single
3001
+ request; this effectively ignores the authentication
3002
+ in the spec for a single request.
3003
+ :type _request_auth: dict, optional
3004
+ :type _content_type: string, optional: force content-type for the request
3005
+ :return: Returns the result object.
3006
+ If the method is called asynchronously,
3007
+ returns the request thread.
3008
+ :rtype: tuple(Workspace, status_code(int), headers(HTTPHeaderDict))
3009
+ """
3010
+
3011
+ _params = locals()
3012
+
3013
+ _all_params = [
3014
+ 'workspace_name',
3015
+ 'workspace_update_request'
3016
+ ]
3017
+ _all_params.extend(
3018
+ [
3019
+ 'async_req',
3020
+ '_return_http_data_only',
3021
+ '_preload_content',
3022
+ '_request_timeout',
3023
+ '_request_auth',
3024
+ '_content_type',
3025
+ '_headers'
3026
+ ]
3027
+ )
3028
+
3029
+ # validate the arguments
3030
+ for _key, _val in _params['kwargs'].items():
3031
+ if _key not in _all_params:
3032
+ raise ApiTypeError(
3033
+ "Got an unexpected keyword argument '%s'"
3034
+ " to method update_personal_workspace" % _key
3035
+ )
3036
+ _params[_key] = _val
3037
+ del _params['kwargs']
3038
+
3039
+ _collection_formats = {}
3040
+
3041
+ # process the path parameters
3042
+ _path_params = {}
3043
+ if _params['workspace_name']:
3044
+ _path_params['workspaceName'] = _params['workspace_name']
3045
+
3046
+
3047
+ # process the query parameters
3048
+ _query_params = []
3049
+ # process the header parameters
3050
+ _header_params = dict(_params.get('_headers', {}))
3051
+ # process the form parameters
3052
+ _form_params = []
3053
+ _files = {}
3054
+ # process the body parameter
3055
+ _body_params = None
3056
+ if _params['workspace_update_request'] is not None:
3057
+ _body_params = _params['workspace_update_request']
3058
+
3059
+ # set the HTTP header `Accept`
3060
+ _header_params['Accept'] = self.api_client.select_header_accept(
3061
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
3062
+
3063
+ # set the HTTP header `Content-Type`
3064
+ _content_types_list = _params.get('_content_type',
3065
+ self.api_client.select_header_content_type(
3066
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
3067
+ if _content_types_list:
3068
+ _header_params['Content-Type'] = _content_types_list
3069
+
3070
+ # authentication setting
3071
+ _auth_settings = ['oauth2'] # noqa: E501
3072
+
3073
+ _response_types_map = {
3074
+ '200': "Workspace",
3075
+ '400': "LusidValidationProblemDetails",
3076
+ }
3077
+
3078
+ return self.api_client.call_api(
3079
+ '/api/workspaces/personal/{workspaceName}', 'PUT',
3080
+ _path_params,
3081
+ _query_params,
3082
+ _header_params,
3083
+ body=_body_params,
3084
+ post_params=_form_params,
3085
+ files=_files,
3086
+ response_types_map=_response_types_map,
3087
+ auth_settings=_auth_settings,
3088
+ async_req=_params.get('async_req'),
3089
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3090
+ _preload_content=_params.get('_preload_content', True),
3091
+ _request_timeout=_params.get('_request_timeout'),
3092
+ collection_formats=_collection_formats,
3093
+ _request_auth=_params.get('_request_auth'))
3094
+
3095
+ @overload
3096
+ async def update_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, **kwargs) -> WorkspaceItem: # noqa: E501
3097
+ ...
3098
+
3099
+ @overload
3100
+ def update_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, async_req: Optional[bool]=True, **kwargs) -> WorkspaceItem: # noqa: E501
3101
+ ...
3102
+
3103
+ @validate_arguments
3104
+ def update_shared_item(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[WorkspaceItem, Awaitable[WorkspaceItem]]: # noqa: E501
3105
+ """[EXPERIMENTAL] UpdateSharedItem: Update an item in a shared workspace. # noqa: E501
3106
+
3107
+ Update an item in a shared workspace. # noqa: E501
3108
+ This method makes a synchronous HTTP request by default. To make an
3109
+ asynchronous HTTP request, please pass async_req=True
3110
+
3111
+ >>> thread = api.update_shared_item(workspace_name, item_name, workspace_item_update_request, async_req=True)
3112
+ >>> result = thread.get()
3113
+
3114
+ :param workspace_name: The shared workspace name. (required)
3115
+ :type workspace_name: str
3116
+ :param item_name: The item name. (required)
3117
+ :type item_name: str
3118
+ :param workspace_item_update_request: The new item details.
3119
+ :type workspace_item_update_request: WorkspaceItemUpdateRequest
3120
+ :param async_req: Whether to execute the request asynchronously.
3121
+ :type async_req: bool, optional
3122
+ :param _request_timeout: timeout setting for this request.
3123
+ If one number provided, it will be total request
3124
+ timeout. It can also be a pair (tuple) of
3125
+ (connection, read) timeouts.
3126
+ :return: Returns the result object.
3127
+ If the method is called asynchronously,
3128
+ returns the request thread.
3129
+ :rtype: WorkspaceItem
3130
+ """
3131
+ kwargs['_return_http_data_only'] = True
3132
+ if '_preload_content' in kwargs:
3133
+ message = "Error! Please call the update_shared_item_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
3134
+ raise ValueError(message)
3135
+ if async_req is not None:
3136
+ kwargs['async_req'] = async_req
3137
+ return self.update_shared_item_with_http_info(workspace_name, item_name, workspace_item_update_request, **kwargs) # noqa: E501
3138
+
3139
+ @validate_arguments
3140
+ def update_shared_item_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], item_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The item name.")], workspace_item_update_request : Annotated[Optional[WorkspaceItemUpdateRequest], Field(description="The new item details.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3141
+ """[EXPERIMENTAL] UpdateSharedItem: Update an item in a shared workspace. # noqa: E501
3142
+
3143
+ Update an item in a shared workspace. # noqa: E501
3144
+ This method makes a synchronous HTTP request by default. To make an
3145
+ asynchronous HTTP request, please pass async_req=True
3146
+
3147
+ >>> thread = api.update_shared_item_with_http_info(workspace_name, item_name, workspace_item_update_request, async_req=True)
3148
+ >>> result = thread.get()
3149
+
3150
+ :param workspace_name: The shared workspace name. (required)
3151
+ :type workspace_name: str
3152
+ :param item_name: The item name. (required)
3153
+ :type item_name: str
3154
+ :param workspace_item_update_request: The new item details.
3155
+ :type workspace_item_update_request: WorkspaceItemUpdateRequest
3156
+ :param async_req: Whether to execute the request asynchronously.
3157
+ :type async_req: bool, optional
3158
+ :param _preload_content: if False, the ApiResponse.data will
3159
+ be set to none and raw_data will store the
3160
+ HTTP response body without reading/decoding.
3161
+ Default is True.
3162
+ :type _preload_content: bool, optional
3163
+ :param _return_http_data_only: response data instead of ApiResponse
3164
+ object with status code, headers, etc
3165
+ :type _return_http_data_only: bool, optional
3166
+ :param _request_timeout: timeout setting for this request. If one
3167
+ number provided, it will be total request
3168
+ timeout. It can also be a pair (tuple) of
3169
+ (connection, read) timeouts.
3170
+ :param _request_auth: set to override the auth_settings for an a single
3171
+ request; this effectively ignores the authentication
3172
+ in the spec for a single request.
3173
+ :type _request_auth: dict, optional
3174
+ :type _content_type: string, optional: force content-type for the request
3175
+ :return: Returns the result object.
3176
+ If the method is called asynchronously,
3177
+ returns the request thread.
3178
+ :rtype: tuple(WorkspaceItem, status_code(int), headers(HTTPHeaderDict))
3179
+ """
3180
+
3181
+ _params = locals()
3182
+
3183
+ _all_params = [
3184
+ 'workspace_name',
3185
+ 'item_name',
3186
+ 'workspace_item_update_request'
3187
+ ]
3188
+ _all_params.extend(
3189
+ [
3190
+ 'async_req',
3191
+ '_return_http_data_only',
3192
+ '_preload_content',
3193
+ '_request_timeout',
3194
+ '_request_auth',
3195
+ '_content_type',
3196
+ '_headers'
3197
+ ]
3198
+ )
3199
+
3200
+ # validate the arguments
3201
+ for _key, _val in _params['kwargs'].items():
3202
+ if _key not in _all_params:
3203
+ raise ApiTypeError(
3204
+ "Got an unexpected keyword argument '%s'"
3205
+ " to method update_shared_item" % _key
3206
+ )
3207
+ _params[_key] = _val
3208
+ del _params['kwargs']
3209
+
3210
+ _collection_formats = {}
3211
+
3212
+ # process the path parameters
3213
+ _path_params = {}
3214
+ if _params['workspace_name']:
3215
+ _path_params['workspaceName'] = _params['workspace_name']
3216
+
3217
+ if _params['item_name']:
3218
+ _path_params['itemName'] = _params['item_name']
3219
+
3220
+
3221
+ # process the query parameters
3222
+ _query_params = []
3223
+ # process the header parameters
3224
+ _header_params = dict(_params.get('_headers', {}))
3225
+ # process the form parameters
3226
+ _form_params = []
3227
+ _files = {}
3228
+ # process the body parameter
3229
+ _body_params = None
3230
+ if _params['workspace_item_update_request'] is not None:
3231
+ _body_params = _params['workspace_item_update_request']
3232
+
3233
+ # set the HTTP header `Accept`
3234
+ _header_params['Accept'] = self.api_client.select_header_accept(
3235
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
3236
+
3237
+ # set the HTTP header `Content-Type`
3238
+ _content_types_list = _params.get('_content_type',
3239
+ self.api_client.select_header_content_type(
3240
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
3241
+ if _content_types_list:
3242
+ _header_params['Content-Type'] = _content_types_list
3243
+
3244
+ # authentication setting
3245
+ _auth_settings = ['oauth2'] # noqa: E501
3246
+
3247
+ _response_types_map = {
3248
+ '200': "WorkspaceItem",
3249
+ '400': "LusidValidationProblemDetails",
3250
+ }
3251
+
3252
+ return self.api_client.call_api(
3253
+ '/api/workspaces/shared/{workspaceName}/items/{itemName}', 'PUT',
3254
+ _path_params,
3255
+ _query_params,
3256
+ _header_params,
3257
+ body=_body_params,
3258
+ post_params=_form_params,
3259
+ files=_files,
3260
+ response_types_map=_response_types_map,
3261
+ auth_settings=_auth_settings,
3262
+ async_req=_params.get('async_req'),
3263
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3264
+ _preload_content=_params.get('_preload_content', True),
3265
+ _request_timeout=_params.get('_request_timeout'),
3266
+ collection_formats=_collection_formats,
3267
+ _request_auth=_params.get('_request_auth'))
3268
+
3269
+ @overload
3270
+ async def update_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, **kwargs) -> Workspace: # noqa: E501
3271
+ ...
3272
+
3273
+ @overload
3274
+ def update_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, async_req: Optional[bool]=True, **kwargs) -> Workspace: # noqa: E501
3275
+ ...
3276
+
3277
+ @validate_arguments
3278
+ def update_shared_workspace(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Workspace, Awaitable[Workspace]]: # noqa: E501
3279
+ """[EXPERIMENTAL] UpdateSharedWorkspace: Update a shared workspace. # noqa: E501
3280
+
3281
+ Update a shared workspace. # noqa: E501
3282
+ This method makes a synchronous HTTP request by default. To make an
3283
+ asynchronous HTTP request, please pass async_req=True
3284
+
3285
+ >>> thread = api.update_shared_workspace(workspace_name, workspace_update_request, async_req=True)
3286
+ >>> result = thread.get()
3287
+
3288
+ :param workspace_name: The shared workspace name. (required)
3289
+ :type workspace_name: str
3290
+ :param workspace_update_request: The new workspace details.
3291
+ :type workspace_update_request: WorkspaceUpdateRequest
3292
+ :param async_req: Whether to execute the request asynchronously.
3293
+ :type async_req: bool, optional
3294
+ :param _request_timeout: timeout setting for this request.
3295
+ If one number provided, it will be total request
3296
+ timeout. It can also be a pair (tuple) of
3297
+ (connection, read) timeouts.
3298
+ :return: Returns the result object.
3299
+ If the method is called asynchronously,
3300
+ returns the request thread.
3301
+ :rtype: Workspace
3302
+ """
3303
+ kwargs['_return_http_data_only'] = True
3304
+ if '_preload_content' in kwargs:
3305
+ message = "Error! Please call the update_shared_workspace_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
3306
+ raise ValueError(message)
3307
+ if async_req is not None:
3308
+ kwargs['async_req'] = async_req
3309
+ return self.update_shared_workspace_with_http_info(workspace_name, workspace_update_request, **kwargs) # noqa: E501
3310
+
3311
+ @validate_arguments
3312
+ def update_shared_workspace_with_http_info(self, workspace_name : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The shared workspace name.")], workspace_update_request : Annotated[Optional[WorkspaceUpdateRequest], Field(description="The new workspace details.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3313
+ """[EXPERIMENTAL] UpdateSharedWorkspace: Update a shared workspace. # noqa: E501
3314
+
3315
+ Update a shared workspace. # noqa: E501
3316
+ This method makes a synchronous HTTP request by default. To make an
3317
+ asynchronous HTTP request, please pass async_req=True
3318
+
3319
+ >>> thread = api.update_shared_workspace_with_http_info(workspace_name, workspace_update_request, async_req=True)
3320
+ >>> result = thread.get()
3321
+
3322
+ :param workspace_name: The shared workspace name. (required)
3323
+ :type workspace_name: str
3324
+ :param workspace_update_request: The new workspace details.
3325
+ :type workspace_update_request: WorkspaceUpdateRequest
3326
+ :param async_req: Whether to execute the request asynchronously.
3327
+ :type async_req: bool, optional
3328
+ :param _preload_content: if False, the ApiResponse.data will
3329
+ be set to none and raw_data will store the
3330
+ HTTP response body without reading/decoding.
3331
+ Default is True.
3332
+ :type _preload_content: bool, optional
3333
+ :param _return_http_data_only: response data instead of ApiResponse
3334
+ object with status code, headers, etc
3335
+ :type _return_http_data_only: bool, optional
3336
+ :param _request_timeout: timeout setting for this request. If one
3337
+ number provided, it will be total request
3338
+ timeout. It can also be a pair (tuple) of
3339
+ (connection, read) timeouts.
3340
+ :param _request_auth: set to override the auth_settings for an a single
3341
+ request; this effectively ignores the authentication
3342
+ in the spec for a single request.
3343
+ :type _request_auth: dict, optional
3344
+ :type _content_type: string, optional: force content-type for the request
3345
+ :return: Returns the result object.
3346
+ If the method is called asynchronously,
3347
+ returns the request thread.
3348
+ :rtype: tuple(Workspace, status_code(int), headers(HTTPHeaderDict))
3349
+ """
3350
+
3351
+ _params = locals()
3352
+
3353
+ _all_params = [
3354
+ 'workspace_name',
3355
+ 'workspace_update_request'
3356
+ ]
3357
+ _all_params.extend(
3358
+ [
3359
+ 'async_req',
3360
+ '_return_http_data_only',
3361
+ '_preload_content',
3362
+ '_request_timeout',
3363
+ '_request_auth',
3364
+ '_content_type',
3365
+ '_headers'
3366
+ ]
3367
+ )
3368
+
3369
+ # validate the arguments
3370
+ for _key, _val in _params['kwargs'].items():
3371
+ if _key not in _all_params:
3372
+ raise ApiTypeError(
3373
+ "Got an unexpected keyword argument '%s'"
3374
+ " to method update_shared_workspace" % _key
3375
+ )
3376
+ _params[_key] = _val
3377
+ del _params['kwargs']
3378
+
3379
+ _collection_formats = {}
3380
+
3381
+ # process the path parameters
3382
+ _path_params = {}
3383
+ if _params['workspace_name']:
3384
+ _path_params['workspaceName'] = _params['workspace_name']
3385
+
3386
+
3387
+ # process the query parameters
3388
+ _query_params = []
3389
+ # process the header parameters
3390
+ _header_params = dict(_params.get('_headers', {}))
3391
+ # process the form parameters
3392
+ _form_params = []
3393
+ _files = {}
3394
+ # process the body parameter
3395
+ _body_params = None
3396
+ if _params['workspace_update_request'] is not None:
3397
+ _body_params = _params['workspace_update_request']
3398
+
3399
+ # set the HTTP header `Accept`
3400
+ _header_params['Accept'] = self.api_client.select_header_accept(
3401
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
3402
+
3403
+ # set the HTTP header `Content-Type`
3404
+ _content_types_list = _params.get('_content_type',
3405
+ self.api_client.select_header_content_type(
3406
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
3407
+ if _content_types_list:
3408
+ _header_params['Content-Type'] = _content_types_list
3409
+
3410
+ # authentication setting
3411
+ _auth_settings = ['oauth2'] # noqa: E501
3412
+
3413
+ _response_types_map = {
3414
+ '200': "Workspace",
3415
+ '400': "LusidValidationProblemDetails",
3416
+ }
3417
+
3418
+ return self.api_client.call_api(
3419
+ '/api/workspaces/shared/{workspaceName}', 'PUT',
3420
+ _path_params,
3421
+ _query_params,
3422
+ _header_params,
3423
+ body=_body_params,
3424
+ post_params=_form_params,
3425
+ files=_files,
3426
+ response_types_map=_response_types_map,
3427
+ auth_settings=_auth_settings,
3428
+ async_req=_params.get('async_req'),
3429
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3430
+ _preload_content=_params.get('_preload_content', True),
3431
+ _request_timeout=_params.get('_request_timeout'),
3432
+ collection_formats=_collection_formats,
3433
+ _request_auth=_params.get('_request_auth'))