lusid-sdk 2.1.91__py3-none-any.whl → 2.1.106__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of lusid-sdk might be problematic. Click here for more details.
- lusid/__init__.py +6 -0
- lusid/api/portfolios_api.py +554 -0
- lusid/api/staged_modifications_api.py +12 -12
- lusid/configuration.py +1 -1
- lusid/models/__init__.py +6 -0
- lusid/models/account.py +1 -1
- lusid/models/custodian_account.py +1 -1
- lusid/models/custodian_account_request.py +1 -1
- lusid/models/fx_forward.py +1 -1
- lusid/models/instrument_event_instruction.py +121 -0
- lusid/models/instrument_event_instruction_request.py +87 -0
- lusid/models/instrument_event_instructions_response.py +107 -0
- lusid/models/staged_modification.py +17 -2
- lusid/models/staged_modifications_entity_hrefs.py +19 -4
- lusid/models/staged_modifications_requested_change_interval.py +19 -4
- lusid/models/staging_rule_set.py +17 -2
- lusid/models/version.py +0 -1
- {lusid_sdk-2.1.91.dist-info → lusid_sdk-2.1.106.dist-info}/METADATA +9 -3
- {lusid_sdk-2.1.91.dist-info → lusid_sdk-2.1.106.dist-info}/RECORD +20 -17
- {lusid_sdk-2.1.91.dist-info → lusid_sdk-2.1.106.dist-info}/WHEEL +0 -0
lusid/__init__.py
CHANGED
|
@@ -473,6 +473,9 @@ from lusid.models.instrument_delete_modes import InstrumentDeleteModes
|
|
|
473
473
|
from lusid.models.instrument_event import InstrumentEvent
|
|
474
474
|
from lusid.models.instrument_event_configuration import InstrumentEventConfiguration
|
|
475
475
|
from lusid.models.instrument_event_holder import InstrumentEventHolder
|
|
476
|
+
from lusid.models.instrument_event_instruction import InstrumentEventInstruction
|
|
477
|
+
from lusid.models.instrument_event_instruction_request import InstrumentEventInstructionRequest
|
|
478
|
+
from lusid.models.instrument_event_instructions_response import InstrumentEventInstructionsResponse
|
|
476
479
|
from lusid.models.instrument_event_type import InstrumentEventType
|
|
477
480
|
from lusid.models.instrument_id_type_descriptor import InstrumentIdTypeDescriptor
|
|
478
481
|
from lusid.models.instrument_id_value import InstrumentIdValue
|
|
@@ -1502,6 +1505,9 @@ __all__ = [
|
|
|
1502
1505
|
"InstrumentEvent",
|
|
1503
1506
|
"InstrumentEventConfiguration",
|
|
1504
1507
|
"InstrumentEventHolder",
|
|
1508
|
+
"InstrumentEventInstruction",
|
|
1509
|
+
"InstrumentEventInstructionRequest",
|
|
1510
|
+
"InstrumentEventInstructionsResponse",
|
|
1505
1511
|
"InstrumentEventType",
|
|
1506
1512
|
"InstrumentIdTypeDescriptor",
|
|
1507
1513
|
"InstrumentIdValue",
|
lusid/api/portfolios_api.py
CHANGED
|
@@ -35,6 +35,9 @@ from lusid.models.composite_breakdown_request import CompositeBreakdownRequest
|
|
|
35
35
|
from lusid.models.composite_breakdown_response import CompositeBreakdownResponse
|
|
36
36
|
from lusid.models.composite_dispersion_response import CompositeDispersionResponse
|
|
37
37
|
from lusid.models.deleted_entity_response import DeletedEntityResponse
|
|
38
|
+
from lusid.models.instrument_event_instruction import InstrumentEventInstruction
|
|
39
|
+
from lusid.models.instrument_event_instruction_request import InstrumentEventInstructionRequest
|
|
40
|
+
from lusid.models.instrument_event_instructions_response import InstrumentEventInstructionsResponse
|
|
38
41
|
from lusid.models.model_property import ModelProperty
|
|
39
42
|
from lusid.models.operation import Operation
|
|
40
43
|
from lusid.models.performance_return import PerformanceReturn
|
|
@@ -73,6 +76,181 @@ class PortfoliosApi:
|
|
|
73
76
|
api_client = ApiClient.get_default()
|
|
74
77
|
self.api_client = api_client
|
|
75
78
|
|
|
79
|
+
@overload
|
|
80
|
+
async def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> DeletedEntityResponse: # noqa: E501
|
|
81
|
+
...
|
|
82
|
+
|
|
83
|
+
@overload
|
|
84
|
+
def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> DeletedEntityResponse: # noqa: E501
|
|
85
|
+
...
|
|
86
|
+
|
|
87
|
+
@validate_arguments
|
|
88
|
+
def delete_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[DeletedEntityResponse, Awaitable[DeletedEntityResponse]]: # noqa: E501
|
|
89
|
+
"""[EARLY ACCESS] DeleteInstrumentEventInstruction: Delete Instrument Event Instruction # noqa: E501
|
|
90
|
+
|
|
91
|
+
Delete a particular instruction for a particular portfolio # noqa: E501
|
|
92
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
93
|
+
asynchronous HTTP request, please pass async_req=True
|
|
94
|
+
|
|
95
|
+
>>> thread = api.delete_instrument_event_instruction(scope, code, instrument_event_instruction_id, portfolio_effective_at, async_req=True)
|
|
96
|
+
>>> result = thread.get()
|
|
97
|
+
|
|
98
|
+
:param scope: The scope of the portfolio. (required)
|
|
99
|
+
:type scope: str
|
|
100
|
+
:param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
|
|
101
|
+
:type code: str
|
|
102
|
+
:param instrument_event_instruction_id: The id of the instruction to be deleted. (required)
|
|
103
|
+
:type instrument_event_instruction_id: str
|
|
104
|
+
:param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
|
|
105
|
+
:type portfolio_effective_at: str
|
|
106
|
+
:param async_req: Whether to execute the request asynchronously.
|
|
107
|
+
:type async_req: bool, optional
|
|
108
|
+
:param _request_timeout: timeout setting for this request.
|
|
109
|
+
If one number provided, it will be total request
|
|
110
|
+
timeout. It can also be a pair (tuple) of
|
|
111
|
+
(connection, read) timeouts.
|
|
112
|
+
:return: Returns the result object.
|
|
113
|
+
If the method is called asynchronously,
|
|
114
|
+
returns the request thread.
|
|
115
|
+
:rtype: DeletedEntityResponse
|
|
116
|
+
"""
|
|
117
|
+
kwargs['_return_http_data_only'] = True
|
|
118
|
+
if '_preload_content' in kwargs:
|
|
119
|
+
message = "Error! Please call the delete_instrument_event_instruction_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
|
120
|
+
raise ValueError(message)
|
|
121
|
+
if async_req is not None:
|
|
122
|
+
kwargs['async_req'] = async_req
|
|
123
|
+
return self.delete_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, **kwargs) # noqa: E501
|
|
124
|
+
|
|
125
|
+
@validate_arguments
|
|
126
|
+
def delete_instrument_event_instruction_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be deleted.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
|
|
127
|
+
"""[EARLY ACCESS] DeleteInstrumentEventInstruction: Delete Instrument Event Instruction # noqa: E501
|
|
128
|
+
|
|
129
|
+
Delete a particular instruction for a particular portfolio # noqa: E501
|
|
130
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
131
|
+
asynchronous HTTP request, please pass async_req=True
|
|
132
|
+
|
|
133
|
+
>>> thread = api.delete_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, async_req=True)
|
|
134
|
+
>>> result = thread.get()
|
|
135
|
+
|
|
136
|
+
:param scope: The scope of the portfolio. (required)
|
|
137
|
+
:type scope: str
|
|
138
|
+
:param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
|
|
139
|
+
:type code: str
|
|
140
|
+
:param instrument_event_instruction_id: The id of the instruction to be deleted. (required)
|
|
141
|
+
:type instrument_event_instruction_id: str
|
|
142
|
+
:param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
|
|
143
|
+
:type portfolio_effective_at: str
|
|
144
|
+
:param async_req: Whether to execute the request asynchronously.
|
|
145
|
+
:type async_req: bool, optional
|
|
146
|
+
:param _preload_content: if False, the ApiResponse.data will
|
|
147
|
+
be set to none and raw_data will store the
|
|
148
|
+
HTTP response body without reading/decoding.
|
|
149
|
+
Default is True.
|
|
150
|
+
:type _preload_content: bool, optional
|
|
151
|
+
:param _return_http_data_only: response data instead of ApiResponse
|
|
152
|
+
object with status code, headers, etc
|
|
153
|
+
:type _return_http_data_only: bool, optional
|
|
154
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
155
|
+
number provided, it will be total request
|
|
156
|
+
timeout. It can also be a pair (tuple) of
|
|
157
|
+
(connection, read) timeouts.
|
|
158
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
159
|
+
request; this effectively ignores the authentication
|
|
160
|
+
in the spec for a single request.
|
|
161
|
+
:type _request_auth: dict, optional
|
|
162
|
+
:type _content_type: string, optional: force content-type for the request
|
|
163
|
+
:return: Returns the result object.
|
|
164
|
+
If the method is called asynchronously,
|
|
165
|
+
returns the request thread.
|
|
166
|
+
:rtype: tuple(DeletedEntityResponse, status_code(int), headers(HTTPHeaderDict))
|
|
167
|
+
"""
|
|
168
|
+
|
|
169
|
+
_params = locals()
|
|
170
|
+
|
|
171
|
+
_all_params = [
|
|
172
|
+
'scope',
|
|
173
|
+
'code',
|
|
174
|
+
'instrument_event_instruction_id',
|
|
175
|
+
'portfolio_effective_at'
|
|
176
|
+
]
|
|
177
|
+
_all_params.extend(
|
|
178
|
+
[
|
|
179
|
+
'async_req',
|
|
180
|
+
'_return_http_data_only',
|
|
181
|
+
'_preload_content',
|
|
182
|
+
'_request_timeout',
|
|
183
|
+
'_request_auth',
|
|
184
|
+
'_content_type',
|
|
185
|
+
'_headers'
|
|
186
|
+
]
|
|
187
|
+
)
|
|
188
|
+
|
|
189
|
+
# validate the arguments
|
|
190
|
+
for _key, _val in _params['kwargs'].items():
|
|
191
|
+
if _key not in _all_params:
|
|
192
|
+
raise ApiTypeError(
|
|
193
|
+
"Got an unexpected keyword argument '%s'"
|
|
194
|
+
" to method delete_instrument_event_instruction" % _key
|
|
195
|
+
)
|
|
196
|
+
_params[_key] = _val
|
|
197
|
+
del _params['kwargs']
|
|
198
|
+
|
|
199
|
+
_collection_formats = {}
|
|
200
|
+
|
|
201
|
+
# process the path parameters
|
|
202
|
+
_path_params = {}
|
|
203
|
+
if _params['scope']:
|
|
204
|
+
_path_params['scope'] = _params['scope']
|
|
205
|
+
|
|
206
|
+
if _params['code']:
|
|
207
|
+
_path_params['code'] = _params['code']
|
|
208
|
+
|
|
209
|
+
if _params['instrument_event_instruction_id']:
|
|
210
|
+
_path_params['instrumentEventInstructionId'] = _params['instrument_event_instruction_id']
|
|
211
|
+
|
|
212
|
+
|
|
213
|
+
# process the query parameters
|
|
214
|
+
_query_params = []
|
|
215
|
+
if _params.get('portfolio_effective_at') is not None: # noqa: E501
|
|
216
|
+
_query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
|
|
217
|
+
|
|
218
|
+
# process the header parameters
|
|
219
|
+
_header_params = dict(_params.get('_headers', {}))
|
|
220
|
+
# process the form parameters
|
|
221
|
+
_form_params = []
|
|
222
|
+
_files = {}
|
|
223
|
+
# process the body parameter
|
|
224
|
+
_body_params = None
|
|
225
|
+
# set the HTTP header `Accept`
|
|
226
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
227
|
+
['text/plain', 'application/json', 'text/json']) # noqa: E501
|
|
228
|
+
|
|
229
|
+
# authentication setting
|
|
230
|
+
_auth_settings = ['oauth2'] # noqa: E501
|
|
231
|
+
|
|
232
|
+
_response_types_map = {
|
|
233
|
+
'200': "DeletedEntityResponse",
|
|
234
|
+
'400': "LusidValidationProblemDetails",
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
return self.api_client.call_api(
|
|
238
|
+
'/api/portfolios/{scope}/{code}/instrumenteventinstructions/{instrumentEventInstructionId}', 'DELETE',
|
|
239
|
+
_path_params,
|
|
240
|
+
_query_params,
|
|
241
|
+
_header_params,
|
|
242
|
+
body=_body_params,
|
|
243
|
+
post_params=_form_params,
|
|
244
|
+
files=_files,
|
|
245
|
+
response_types_map=_response_types_map,
|
|
246
|
+
auth_settings=_auth_settings,
|
|
247
|
+
async_req=_params.get('async_req'),
|
|
248
|
+
_return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
|
|
249
|
+
_preload_content=_params.get('_preload_content', True),
|
|
250
|
+
_request_timeout=_params.get('_request_timeout'),
|
|
251
|
+
collection_formats=_collection_formats,
|
|
252
|
+
_request_auth=_params.get('_request_auth'))
|
|
253
|
+
|
|
76
254
|
@overload
|
|
77
255
|
async def delete_key_from_portfolio_access_metadata(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Quote Access Metadata Rule to retrieve.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="The metadataKey identifying the access metadata entry to delete")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective date to delete at, if this is not supplied, it will delete all data found")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the delete is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> DeletedEntityResponse: # noqa: E501
|
|
78
256
|
...
|
|
@@ -1179,6 +1357,192 @@ class PortfoliosApi:
|
|
|
1179
1357
|
collection_formats=_collection_formats,
|
|
1180
1358
|
_request_auth=_params.get('_request_auth'))
|
|
1181
1359
|
|
|
1360
|
+
@overload
|
|
1361
|
+
async def get_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, **kwargs) -> InstrumentEventInstruction: # noqa: E501
|
|
1362
|
+
...
|
|
1363
|
+
|
|
1364
|
+
@overload
|
|
1365
|
+
def get_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> InstrumentEventInstruction: # noqa: E501
|
|
1366
|
+
...
|
|
1367
|
+
|
|
1368
|
+
@validate_arguments
|
|
1369
|
+
def get_instrument_event_instruction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[InstrumentEventInstruction, Awaitable[InstrumentEventInstruction]]: # noqa: E501
|
|
1370
|
+
"""[EARLY ACCESS] GetInstrumentEventInstruction: Get Instrument Event Instruction # noqa: E501
|
|
1371
|
+
|
|
1372
|
+
Get a particular instruction for a particular portfolio # noqa: E501
|
|
1373
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
1374
|
+
asynchronous HTTP request, please pass async_req=True
|
|
1375
|
+
|
|
1376
|
+
>>> thread = api.get_instrument_event_instruction(scope, code, instrument_event_instruction_id, portfolio_effective_at, as_at, async_req=True)
|
|
1377
|
+
>>> result = thread.get()
|
|
1378
|
+
|
|
1379
|
+
:param scope: The scope of the portfolio. (required)
|
|
1380
|
+
:type scope: str
|
|
1381
|
+
:param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
|
|
1382
|
+
:type code: str
|
|
1383
|
+
:param instrument_event_instruction_id: The id of the instruction to be retrieved. (required)
|
|
1384
|
+
:type instrument_event_instruction_id: str
|
|
1385
|
+
:param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
|
|
1386
|
+
:type portfolio_effective_at: str
|
|
1387
|
+
:param as_at: The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.
|
|
1388
|
+
:type as_at: datetime
|
|
1389
|
+
:param async_req: Whether to execute the request asynchronously.
|
|
1390
|
+
:type async_req: bool, optional
|
|
1391
|
+
:param _request_timeout: timeout setting for this request.
|
|
1392
|
+
If one number provided, it will be total request
|
|
1393
|
+
timeout. It can also be a pair (tuple) of
|
|
1394
|
+
(connection, read) timeouts.
|
|
1395
|
+
:return: Returns the result object.
|
|
1396
|
+
If the method is called asynchronously,
|
|
1397
|
+
returns the request thread.
|
|
1398
|
+
:rtype: InstrumentEventInstruction
|
|
1399
|
+
"""
|
|
1400
|
+
kwargs['_return_http_data_only'] = True
|
|
1401
|
+
if '_preload_content' in kwargs:
|
|
1402
|
+
message = "Error! Please call the get_instrument_event_instruction_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
|
1403
|
+
raise ValueError(message)
|
|
1404
|
+
if async_req is not None:
|
|
1405
|
+
kwargs['async_req'] = async_req
|
|
1406
|
+
return self.get_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, as_at, **kwargs) # noqa: E501
|
|
1407
|
+
|
|
1408
|
+
@validate_arguments
|
|
1409
|
+
def get_instrument_event_instruction_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], instrument_event_instruction_id : Annotated[StrictStr, Field(..., description="The id of the instruction to be retrieved.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
|
|
1410
|
+
"""[EARLY ACCESS] GetInstrumentEventInstruction: Get Instrument Event Instruction # noqa: E501
|
|
1411
|
+
|
|
1412
|
+
Get a particular instruction for a particular portfolio # noqa: E501
|
|
1413
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
1414
|
+
asynchronous HTTP request, please pass async_req=True
|
|
1415
|
+
|
|
1416
|
+
>>> thread = api.get_instrument_event_instruction_with_http_info(scope, code, instrument_event_instruction_id, portfolio_effective_at, as_at, async_req=True)
|
|
1417
|
+
>>> result = thread.get()
|
|
1418
|
+
|
|
1419
|
+
:param scope: The scope of the portfolio. (required)
|
|
1420
|
+
:type scope: str
|
|
1421
|
+
:param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
|
|
1422
|
+
:type code: str
|
|
1423
|
+
:param instrument_event_instruction_id: The id of the instruction to be retrieved. (required)
|
|
1424
|
+
:type instrument_event_instruction_id: str
|
|
1425
|
+
:param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
|
|
1426
|
+
:type portfolio_effective_at: str
|
|
1427
|
+
:param as_at: The asAt datetime at which to retrieve the instruction. Defaults to return the latest version of the instruction if not specified.
|
|
1428
|
+
:type as_at: datetime
|
|
1429
|
+
:param async_req: Whether to execute the request asynchronously.
|
|
1430
|
+
:type async_req: bool, optional
|
|
1431
|
+
:param _preload_content: if False, the ApiResponse.data will
|
|
1432
|
+
be set to none and raw_data will store the
|
|
1433
|
+
HTTP response body without reading/decoding.
|
|
1434
|
+
Default is True.
|
|
1435
|
+
:type _preload_content: bool, optional
|
|
1436
|
+
:param _return_http_data_only: response data instead of ApiResponse
|
|
1437
|
+
object with status code, headers, etc
|
|
1438
|
+
:type _return_http_data_only: bool, optional
|
|
1439
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
1440
|
+
number provided, it will be total request
|
|
1441
|
+
timeout. It can also be a pair (tuple) of
|
|
1442
|
+
(connection, read) timeouts.
|
|
1443
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
1444
|
+
request; this effectively ignores the authentication
|
|
1445
|
+
in the spec for a single request.
|
|
1446
|
+
:type _request_auth: dict, optional
|
|
1447
|
+
:type _content_type: string, optional: force content-type for the request
|
|
1448
|
+
:return: Returns the result object.
|
|
1449
|
+
If the method is called asynchronously,
|
|
1450
|
+
returns the request thread.
|
|
1451
|
+
:rtype: tuple(InstrumentEventInstruction, status_code(int), headers(HTTPHeaderDict))
|
|
1452
|
+
"""
|
|
1453
|
+
|
|
1454
|
+
_params = locals()
|
|
1455
|
+
|
|
1456
|
+
_all_params = [
|
|
1457
|
+
'scope',
|
|
1458
|
+
'code',
|
|
1459
|
+
'instrument_event_instruction_id',
|
|
1460
|
+
'portfolio_effective_at',
|
|
1461
|
+
'as_at'
|
|
1462
|
+
]
|
|
1463
|
+
_all_params.extend(
|
|
1464
|
+
[
|
|
1465
|
+
'async_req',
|
|
1466
|
+
'_return_http_data_only',
|
|
1467
|
+
'_preload_content',
|
|
1468
|
+
'_request_timeout',
|
|
1469
|
+
'_request_auth',
|
|
1470
|
+
'_content_type',
|
|
1471
|
+
'_headers'
|
|
1472
|
+
]
|
|
1473
|
+
)
|
|
1474
|
+
|
|
1475
|
+
# validate the arguments
|
|
1476
|
+
for _key, _val in _params['kwargs'].items():
|
|
1477
|
+
if _key not in _all_params:
|
|
1478
|
+
raise ApiTypeError(
|
|
1479
|
+
"Got an unexpected keyword argument '%s'"
|
|
1480
|
+
" to method get_instrument_event_instruction" % _key
|
|
1481
|
+
)
|
|
1482
|
+
_params[_key] = _val
|
|
1483
|
+
del _params['kwargs']
|
|
1484
|
+
|
|
1485
|
+
_collection_formats = {}
|
|
1486
|
+
|
|
1487
|
+
# process the path parameters
|
|
1488
|
+
_path_params = {}
|
|
1489
|
+
if _params['scope']:
|
|
1490
|
+
_path_params['scope'] = _params['scope']
|
|
1491
|
+
|
|
1492
|
+
if _params['code']:
|
|
1493
|
+
_path_params['code'] = _params['code']
|
|
1494
|
+
|
|
1495
|
+
if _params['instrument_event_instruction_id']:
|
|
1496
|
+
_path_params['instrumentEventInstructionId'] = _params['instrument_event_instruction_id']
|
|
1497
|
+
|
|
1498
|
+
|
|
1499
|
+
# process the query parameters
|
|
1500
|
+
_query_params = []
|
|
1501
|
+
if _params.get('portfolio_effective_at') is not None: # noqa: E501
|
|
1502
|
+
_query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
|
|
1503
|
+
|
|
1504
|
+
if _params.get('as_at') is not None: # noqa: E501
|
|
1505
|
+
if isinstance(_params['as_at'], datetime):
|
|
1506
|
+
_query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
|
|
1507
|
+
else:
|
|
1508
|
+
_query_params.append(('asAt', _params['as_at']))
|
|
1509
|
+
|
|
1510
|
+
# process the header parameters
|
|
1511
|
+
_header_params = dict(_params.get('_headers', {}))
|
|
1512
|
+
# process the form parameters
|
|
1513
|
+
_form_params = []
|
|
1514
|
+
_files = {}
|
|
1515
|
+
# process the body parameter
|
|
1516
|
+
_body_params = None
|
|
1517
|
+
# set the HTTP header `Accept`
|
|
1518
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
1519
|
+
['text/plain', 'application/json', 'text/json']) # noqa: E501
|
|
1520
|
+
|
|
1521
|
+
# authentication setting
|
|
1522
|
+
_auth_settings = ['oauth2'] # noqa: E501
|
|
1523
|
+
|
|
1524
|
+
_response_types_map = {
|
|
1525
|
+
'200': "InstrumentEventInstruction",
|
|
1526
|
+
'400': "LusidValidationProblemDetails",
|
|
1527
|
+
}
|
|
1528
|
+
|
|
1529
|
+
return self.api_client.call_api(
|
|
1530
|
+
'/api/portfolios/{scope}/{code}/instrumenteventinstructions/{instrumentEventInstructionId}', 'GET',
|
|
1531
|
+
_path_params,
|
|
1532
|
+
_query_params,
|
|
1533
|
+
_header_params,
|
|
1534
|
+
body=_body_params,
|
|
1535
|
+
post_params=_form_params,
|
|
1536
|
+
files=_files,
|
|
1537
|
+
response_types_map=_response_types_map,
|
|
1538
|
+
auth_settings=_auth_settings,
|
|
1539
|
+
async_req=_params.get('async_req'),
|
|
1540
|
+
_return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
|
|
1541
|
+
_preload_content=_params.get('_preload_content', True),
|
|
1542
|
+
_request_timeout=_params.get('_request_timeout'),
|
|
1543
|
+
collection_formats=_collection_formats,
|
|
1544
|
+
_request_auth=_params.get('_request_auth'))
|
|
1545
|
+
|
|
1182
1546
|
@overload
|
|
1183
1547
|
async def get_portfolio(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to retrieve the portfolio definition. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the portfolio definition. Defaults to returning the latest version of the portfolio definition if not specified.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Portfolio' domain to decorate onto the portfolio, or from any domain that supports relationships to decorate onto related entities. These must take the format {domain}/{scope}/{code}, for example 'Portfolio/Manager/Id'.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the portfolio in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> Portfolio: # noqa: E501
|
|
1184
1548
|
...
|
|
@@ -4577,6 +4941,196 @@ class PortfoliosApi:
|
|
|
4577
4941
|
collection_formats=_collection_formats,
|
|
4578
4942
|
_request_auth=_params.get('_request_auth'))
|
|
4579
4943
|
|
|
4944
|
+
@overload
|
|
4945
|
+
async def upsert_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> InstrumentEventInstructionsResponse: # noqa: E501
|
|
4946
|
+
...
|
|
4947
|
+
|
|
4948
|
+
@overload
|
|
4949
|
+
def upsert_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=True, **kwargs) -> InstrumentEventInstructionsResponse: # noqa: E501
|
|
4950
|
+
...
|
|
4951
|
+
|
|
4952
|
+
@validate_arguments
|
|
4953
|
+
def upsert_instrument_event_instructions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[InstrumentEventInstructionsResponse, Awaitable[InstrumentEventInstructionsResponse]]: # noqa: E501
|
|
4954
|
+
"""[EARLY ACCESS] UpsertInstrumentEventInstructions: Upsert Instrument Event Instructions # noqa: E501
|
|
4955
|
+
|
|
4956
|
+
Batch upsert for instrument event instructions, for the portfolio or individual holdings # noqa: E501
|
|
4957
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
4958
|
+
asynchronous HTTP request, please pass async_req=True
|
|
4959
|
+
|
|
4960
|
+
>>> thread = api.upsert_instrument_event_instructions(scope, code, success_mode, request_body, portfolio_effective_at, async_req=True)
|
|
4961
|
+
>>> result = thread.get()
|
|
4962
|
+
|
|
4963
|
+
:param scope: The scope of the portfolio. (required)
|
|
4964
|
+
:type scope: str
|
|
4965
|
+
:param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
|
|
4966
|
+
:type code: str
|
|
4967
|
+
:param success_mode: Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default) (required)
|
|
4968
|
+
:type success_mode: str
|
|
4969
|
+
:param request_body: The instructions to be upserted to the portfolio. (required)
|
|
4970
|
+
:type request_body: Dict[str, InstrumentEventInstructionRequest]
|
|
4971
|
+
:param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
|
|
4972
|
+
:type portfolio_effective_at: str
|
|
4973
|
+
:param async_req: Whether to execute the request asynchronously.
|
|
4974
|
+
:type async_req: bool, optional
|
|
4975
|
+
:param _request_timeout: timeout setting for this request.
|
|
4976
|
+
If one number provided, it will be total request
|
|
4977
|
+
timeout. It can also be a pair (tuple) of
|
|
4978
|
+
(connection, read) timeouts.
|
|
4979
|
+
:return: Returns the result object.
|
|
4980
|
+
If the method is called asynchronously,
|
|
4981
|
+
returns the request thread.
|
|
4982
|
+
:rtype: InstrumentEventInstructionsResponse
|
|
4983
|
+
"""
|
|
4984
|
+
kwargs['_return_http_data_only'] = True
|
|
4985
|
+
if '_preload_content' in kwargs:
|
|
4986
|
+
message = "Error! Please call the upsert_instrument_event_instructions_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
|
|
4987
|
+
raise ValueError(message)
|
|
4988
|
+
if async_req is not None:
|
|
4989
|
+
kwargs['async_req'] = async_req
|
|
4990
|
+
return self.upsert_instrument_event_instructions_with_http_info(scope, code, success_mode, request_body, portfolio_effective_at, **kwargs) # noqa: E501
|
|
4991
|
+
|
|
4992
|
+
@validate_arguments
|
|
4993
|
+
def upsert_instrument_event_instructions_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the portfolio. Together with the scope this uniquely identifies the portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default)")], request_body : Annotated[Dict[str, InstrumentEventInstructionRequest], Field(..., description="The instructions to be upserted to the portfolio.")], portfolio_effective_at : Annotated[Optional[constr(strict=True, max_length=6000, min_length=0)], Field(description="The effective date at which the portfolio will be resolved. Defaults to current time if not specified.")] = None, **kwargs) -> ApiResponse: # noqa: E501
|
|
4994
|
+
"""[EARLY ACCESS] UpsertInstrumentEventInstructions: Upsert Instrument Event Instructions # noqa: E501
|
|
4995
|
+
|
|
4996
|
+
Batch upsert for instrument event instructions, for the portfolio or individual holdings # noqa: E501
|
|
4997
|
+
This method makes a synchronous HTTP request by default. To make an
|
|
4998
|
+
asynchronous HTTP request, please pass async_req=True
|
|
4999
|
+
|
|
5000
|
+
>>> thread = api.upsert_instrument_event_instructions_with_http_info(scope, code, success_mode, request_body, portfolio_effective_at, async_req=True)
|
|
5001
|
+
>>> result = thread.get()
|
|
5002
|
+
|
|
5003
|
+
:param scope: The scope of the portfolio. (required)
|
|
5004
|
+
:type scope: str
|
|
5005
|
+
:param code: The code of the portfolio. Together with the scope this uniquely identifies the portfolio. (required)
|
|
5006
|
+
:type code: str
|
|
5007
|
+
:param success_mode: Whether the batch request should fail atomically or in a partial fashion - allowed values: Atomic, Partial (default) (required)
|
|
5008
|
+
:type success_mode: str
|
|
5009
|
+
:param request_body: The instructions to be upserted to the portfolio. (required)
|
|
5010
|
+
:type request_body: Dict[str, InstrumentEventInstructionRequest]
|
|
5011
|
+
:param portfolio_effective_at: The effective date at which the portfolio will be resolved. Defaults to current time if not specified.
|
|
5012
|
+
:type portfolio_effective_at: str
|
|
5013
|
+
:param async_req: Whether to execute the request asynchronously.
|
|
5014
|
+
:type async_req: bool, optional
|
|
5015
|
+
:param _preload_content: if False, the ApiResponse.data will
|
|
5016
|
+
be set to none and raw_data will store the
|
|
5017
|
+
HTTP response body without reading/decoding.
|
|
5018
|
+
Default is True.
|
|
5019
|
+
:type _preload_content: bool, optional
|
|
5020
|
+
:param _return_http_data_only: response data instead of ApiResponse
|
|
5021
|
+
object with status code, headers, etc
|
|
5022
|
+
:type _return_http_data_only: bool, optional
|
|
5023
|
+
:param _request_timeout: timeout setting for this request. If one
|
|
5024
|
+
number provided, it will be total request
|
|
5025
|
+
timeout. It can also be a pair (tuple) of
|
|
5026
|
+
(connection, read) timeouts.
|
|
5027
|
+
:param _request_auth: set to override the auth_settings for an a single
|
|
5028
|
+
request; this effectively ignores the authentication
|
|
5029
|
+
in the spec for a single request.
|
|
5030
|
+
:type _request_auth: dict, optional
|
|
5031
|
+
:type _content_type: string, optional: force content-type for the request
|
|
5032
|
+
:return: Returns the result object.
|
|
5033
|
+
If the method is called asynchronously,
|
|
5034
|
+
returns the request thread.
|
|
5035
|
+
:rtype: tuple(InstrumentEventInstructionsResponse, status_code(int), headers(HTTPHeaderDict))
|
|
5036
|
+
"""
|
|
5037
|
+
|
|
5038
|
+
_params = locals()
|
|
5039
|
+
|
|
5040
|
+
_all_params = [
|
|
5041
|
+
'scope',
|
|
5042
|
+
'code',
|
|
5043
|
+
'success_mode',
|
|
5044
|
+
'request_body',
|
|
5045
|
+
'portfolio_effective_at'
|
|
5046
|
+
]
|
|
5047
|
+
_all_params.extend(
|
|
5048
|
+
[
|
|
5049
|
+
'async_req',
|
|
5050
|
+
'_return_http_data_only',
|
|
5051
|
+
'_preload_content',
|
|
5052
|
+
'_request_timeout',
|
|
5053
|
+
'_request_auth',
|
|
5054
|
+
'_content_type',
|
|
5055
|
+
'_headers'
|
|
5056
|
+
]
|
|
5057
|
+
)
|
|
5058
|
+
|
|
5059
|
+
# validate the arguments
|
|
5060
|
+
for _key, _val in _params['kwargs'].items():
|
|
5061
|
+
if _key not in _all_params:
|
|
5062
|
+
raise ApiTypeError(
|
|
5063
|
+
"Got an unexpected keyword argument '%s'"
|
|
5064
|
+
" to method upsert_instrument_event_instructions" % _key
|
|
5065
|
+
)
|
|
5066
|
+
_params[_key] = _val
|
|
5067
|
+
del _params['kwargs']
|
|
5068
|
+
|
|
5069
|
+
_collection_formats = {}
|
|
5070
|
+
|
|
5071
|
+
# process the path parameters
|
|
5072
|
+
_path_params = {}
|
|
5073
|
+
if _params['scope']:
|
|
5074
|
+
_path_params['scope'] = _params['scope']
|
|
5075
|
+
|
|
5076
|
+
if _params['code']:
|
|
5077
|
+
_path_params['code'] = _params['code']
|
|
5078
|
+
|
|
5079
|
+
|
|
5080
|
+
# process the query parameters
|
|
5081
|
+
_query_params = []
|
|
5082
|
+
if _params.get('portfolio_effective_at') is not None: # noqa: E501
|
|
5083
|
+
_query_params.append(('portfolioEffectiveAt', _params['portfolio_effective_at']))
|
|
5084
|
+
|
|
5085
|
+
if _params.get('success_mode') is not None: # noqa: E501
|
|
5086
|
+
_query_params.append(('successMode', _params['success_mode']))
|
|
5087
|
+
|
|
5088
|
+
# process the header parameters
|
|
5089
|
+
_header_params = dict(_params.get('_headers', {}))
|
|
5090
|
+
# process the form parameters
|
|
5091
|
+
_form_params = []
|
|
5092
|
+
_files = {}
|
|
5093
|
+
# process the body parameter
|
|
5094
|
+
_body_params = None
|
|
5095
|
+
if _params['request_body'] is not None:
|
|
5096
|
+
_body_params = _params['request_body']
|
|
5097
|
+
|
|
5098
|
+
# set the HTTP header `Accept`
|
|
5099
|
+
_header_params['Accept'] = self.api_client.select_header_accept(
|
|
5100
|
+
['text/plain', 'application/json', 'text/json']) # noqa: E501
|
|
5101
|
+
|
|
5102
|
+
# set the HTTP header `Content-Type`
|
|
5103
|
+
_content_types_list = _params.get('_content_type',
|
|
5104
|
+
self.api_client.select_header_content_type(
|
|
5105
|
+
['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
|
|
5106
|
+
if _content_types_list:
|
|
5107
|
+
_header_params['Content-Type'] = _content_types_list
|
|
5108
|
+
|
|
5109
|
+
# authentication setting
|
|
5110
|
+
_auth_settings = ['oauth2'] # noqa: E501
|
|
5111
|
+
|
|
5112
|
+
_response_types_map = {
|
|
5113
|
+
'200': "InstrumentEventInstructionsResponse",
|
|
5114
|
+
'400': "LusidValidationProblemDetails",
|
|
5115
|
+
}
|
|
5116
|
+
|
|
5117
|
+
return self.api_client.call_api(
|
|
5118
|
+
'/api/portfolios/{scope}/{code}/instrumenteventinstructions', 'POST',
|
|
5119
|
+
_path_params,
|
|
5120
|
+
_query_params,
|
|
5121
|
+
_header_params,
|
|
5122
|
+
body=_body_params,
|
|
5123
|
+
post_params=_form_params,
|
|
5124
|
+
files=_files,
|
|
5125
|
+
response_types_map=_response_types_map,
|
|
5126
|
+
auth_settings=_auth_settings,
|
|
5127
|
+
async_req=_params.get('async_req'),
|
|
5128
|
+
_return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
|
|
5129
|
+
_preload_content=_params.get('_preload_content', True),
|
|
5130
|
+
_request_timeout=_params.get('_request_timeout'),
|
|
5131
|
+
collection_formats=_collection_formats,
|
|
5132
|
+
_request_auth=_params.get('_request_auth'))
|
|
5133
|
+
|
|
4580
5134
|
@overload
|
|
4581
5135
|
async def upsert_portfolio_access_metadata(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope to use when updating or inserting the Portfolio Access Metadata Rule.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Portfolio code")], metadata_key : Annotated[constr(strict=True, max_length=256, min_length=1), Field(..., description="Key of the access metadata to upsert")], upsert_portfolio_access_metadata_request : Annotated[UpsertPortfolioAccessMetadataRequest, Field(..., description="The Portfolio Access Metadata Rule to update or insert")], effective_at : Annotated[Optional[StrictStr], Field(description="The date this rule will effective from")] = None, effective_until : Annotated[Optional[datetime], Field(description="The effective date until which the Access Metadata is valid. If not supplied this will be valid indefinitely, or until the next 'effectiveAt' date of the Access Metadata")] = None, **kwargs) -> ResourceListOfAccessMetadataValueOf: # noqa: E501
|
|
4582
5136
|
...
|