lusid-sdk 2.1.242__py3-none-any.whl → 2.1.261__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.

Files changed (63) hide show
  1. lusid/__init__.py +28 -0
  2. lusid/api/__init__.py +2 -0
  3. lusid/api/entities_api.py +360 -0
  4. lusid/api/fee_types_api.py +143 -0
  5. lusid/api/fund_configurations_api.py +944 -0
  6. lusid/api/order_management_api.py +320 -1
  7. lusid/configuration.py +1 -1
  8. lusid/models/__init__.py +26 -0
  9. lusid/models/accounting_method.py +3 -0
  10. lusid/models/accumulation_event.py +3 -3
  11. lusid/models/amortisation_event.py +3 -3
  12. lusid/models/bond_coupon_event.py +3 -3
  13. lusid/models/bond_default_event.py +3 -3
  14. lusid/models/bond_principal_event.py +3 -3
  15. lusid/models/cancel_placements_response.py +153 -0
  16. lusid/models/cancelled_placement_result.py +83 -0
  17. lusid/models/capital_distribution_event.py +3 -3
  18. lusid/models/cash_dividend_event.py +3 -3
  19. lusid/models/cash_flow_event.py +3 -3
  20. lusid/models/close_event.py +3 -3
  21. lusid/models/component_rule.py +83 -0
  22. lusid/models/create_derived_transaction_portfolio_request.py +3 -3
  23. lusid/models/create_transaction_portfolio_request.py +3 -3
  24. lusid/models/dependency_source_filter.py +9 -2
  25. lusid/models/dividend_option_event.py +3 -3
  26. lusid/models/dividend_reinvestment_event.py +3 -3
  27. lusid/models/exercise_event.py +3 -3
  28. lusid/models/expiry_event.py +3 -3
  29. lusid/models/fee_transaction_template_specification.py +79 -0
  30. lusid/models/fund_configuration.py +150 -0
  31. lusid/models/fund_configuration_properties.py +115 -0
  32. lusid/models/fund_configuration_request.py +130 -0
  33. lusid/models/future_expiry_event.py +100 -0
  34. lusid/models/fx_forward_settlement_event.py +3 -3
  35. lusid/models/informational_error_event.py +3 -3
  36. lusid/models/informational_event.py +3 -3
  37. lusid/models/instrument_entity.py +146 -0
  38. lusid/models/instrument_event.py +6 -5
  39. lusid/models/instrument_event_type.py +1 -0
  40. lusid/models/maturity_event.py +3 -3
  41. lusid/models/merger_event.py +3 -3
  42. lusid/models/open_event.py +3 -3
  43. lusid/models/paged_resource_list_of_fund_configuration.py +113 -0
  44. lusid/models/placement_update_request.py +116 -0
  45. lusid/models/portfolio.py +3 -3
  46. lusid/models/portfolio_details.py +3 -3
  47. lusid/models/portfolio_without_href.py +3 -3
  48. lusid/models/property_definition.py +7 -1
  49. lusid/models/property_definition_entity.py +146 -0
  50. lusid/models/raw_vendor_event.py +3 -3
  51. lusid/models/reset_event.py +3 -3
  52. lusid/models/reverse_stock_split_event.py +3 -3
  53. lusid/models/scrip_dividend_event.py +3 -3
  54. lusid/models/spin_off_event.py +3 -3
  55. lusid/models/stock_dividend_event.py +3 -3
  56. lusid/models/stock_split_event.py +3 -3
  57. lusid/models/transaction_field_map.py +7 -2
  58. lusid/models/transition_event.py +3 -3
  59. lusid/models/trigger_event.py +3 -3
  60. lusid/models/update_placements_response.py +153 -0
  61. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.261.dist-info}/METADATA +26 -3
  62. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.261.dist-info}/RECORD +63 -49
  63. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.261.dist-info}/WHEEL +0 -0
@@ -22,18 +22,21 @@ from typing import overload, Optional, Union, Awaitable
22
22
  from typing_extensions import Annotated
23
23
  from pydantic.v1 import Field, StrictBool, conlist, constr, validator
24
24
 
25
- from typing import Optional
25
+ from typing import Dict, Optional
26
26
 
27
27
  from lusid.models.allocation_service_run_response import AllocationServiceRunResponse
28
28
  from lusid.models.block_and_orders_create_request import BlockAndOrdersCreateRequest
29
29
  from lusid.models.book_transactions_request import BookTransactionsRequest
30
30
  from lusid.models.book_transactions_response import BookTransactionsResponse
31
+ from lusid.models.cancel_placements_response import CancelPlacementsResponse
31
32
  from lusid.models.move_orders_to_different_blocks_request import MoveOrdersToDifferentBlocksRequest
32
33
  from lusid.models.place_blocks_request import PlaceBlocksRequest
34
+ from lusid.models.placement_update_request import PlacementUpdateRequest
33
35
  from lusid.models.resource_id import ResourceId
34
36
  from lusid.models.resource_list_of_block_and_orders import ResourceListOfBlockAndOrders
35
37
  from lusid.models.resource_list_of_moved_order_to_different_block_response import ResourceListOfMovedOrderToDifferentBlockResponse
36
38
  from lusid.models.resource_list_of_placement import ResourceListOfPlacement
39
+ from lusid.models.update_placements_response import UpdatePlacementsResponse
37
40
 
38
41
  from lusid.api_client import ApiClient
39
42
  from lusid.api_response import ApiResponse
@@ -221,6 +224,164 @@ class OrderManagementApi:
221
224
  collection_formats=_collection_formats,
222
225
  _request_auth=_params.get('_request_auth'))
223
226
 
227
+ @overload
228
+ async def cancel_placements(self, request_body : Annotated[Dict[str, ResourceId], Field(..., description="The request containing the ids of the placements to be cancelled.")], **kwargs) -> CancelPlacementsResponse: # noqa: E501
229
+ ...
230
+
231
+ @overload
232
+ def cancel_placements(self, request_body : Annotated[Dict[str, ResourceId], Field(..., description="The request containing the ids of the placements to be cancelled.")], async_req: Optional[bool]=True, **kwargs) -> CancelPlacementsResponse: # noqa: E501
233
+ ...
234
+
235
+ @validate_arguments
236
+ def cancel_placements(self, request_body : Annotated[Dict[str, ResourceId], Field(..., description="The request containing the ids of the placements to be cancelled.")], async_req: Optional[bool]=None, **kwargs) -> Union[CancelPlacementsResponse, Awaitable[CancelPlacementsResponse]]: # noqa: E501
237
+ """[EARLY ACCESS] CancelPlacements: Cancel existing placements # noqa: E501
238
+
239
+ The response returns both the collection of successfully canceled placements, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for unsuccessful results. # noqa: E501
240
+ This method makes a synchronous HTTP request by default. To make an
241
+ asynchronous HTTP request, please pass async_req=True
242
+
243
+ >>> thread = api.cancel_placements(request_body, async_req=True)
244
+ >>> result = thread.get()
245
+
246
+ :param request_body: The request containing the ids of the placements to be cancelled. (required)
247
+ :type request_body: Dict[str, ResourceId]
248
+ :param async_req: Whether to execute the request asynchronously.
249
+ :type async_req: bool, optional
250
+ :param _request_timeout: timeout setting for this request.
251
+ If one number provided, it will be total request
252
+ timeout. It can also be a pair (tuple) of
253
+ (connection, read) timeouts.
254
+ :return: Returns the result object.
255
+ If the method is called asynchronously,
256
+ returns the request thread.
257
+ :rtype: CancelPlacementsResponse
258
+ """
259
+ kwargs['_return_http_data_only'] = True
260
+ if '_preload_content' in kwargs:
261
+ message = "Error! Please call the cancel_placements_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
262
+ raise ValueError(message)
263
+ if async_req is not None:
264
+ kwargs['async_req'] = async_req
265
+ return self.cancel_placements_with_http_info(request_body, **kwargs) # noqa: E501
266
+
267
+ @validate_arguments
268
+ def cancel_placements_with_http_info(self, request_body : Annotated[Dict[str, ResourceId], Field(..., description="The request containing the ids of the placements to be cancelled.")], **kwargs) -> ApiResponse: # noqa: E501
269
+ """[EARLY ACCESS] CancelPlacements: Cancel existing placements # noqa: E501
270
+
271
+ The response returns both the collection of successfully canceled placements, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for unsuccessful results. # noqa: E501
272
+ This method makes a synchronous HTTP request by default. To make an
273
+ asynchronous HTTP request, please pass async_req=True
274
+
275
+ >>> thread = api.cancel_placements_with_http_info(request_body, async_req=True)
276
+ >>> result = thread.get()
277
+
278
+ :param request_body: The request containing the ids of the placements to be cancelled. (required)
279
+ :type request_body: Dict[str, ResourceId]
280
+ :param async_req: Whether to execute the request asynchronously.
281
+ :type async_req: bool, optional
282
+ :param _preload_content: if False, the ApiResponse.data will
283
+ be set to none and raw_data will store the
284
+ HTTP response body without reading/decoding.
285
+ Default is True.
286
+ :type _preload_content: bool, optional
287
+ :param _return_http_data_only: response data instead of ApiResponse
288
+ object with status code, headers, etc
289
+ :type _return_http_data_only: bool, optional
290
+ :param _request_timeout: timeout setting for this request. If one
291
+ number provided, it will be total request
292
+ timeout. It can also be a pair (tuple) of
293
+ (connection, read) timeouts.
294
+ :param _request_auth: set to override the auth_settings for an a single
295
+ request; this effectively ignores the authentication
296
+ in the spec for a single request.
297
+ :type _request_auth: dict, optional
298
+ :type _content_type: string, optional: force content-type for the request
299
+ :return: Returns the result object.
300
+ If the method is called asynchronously,
301
+ returns the request thread.
302
+ :rtype: tuple(CancelPlacementsResponse, status_code(int), headers(HTTPHeaderDict))
303
+ """
304
+
305
+ _params = locals()
306
+
307
+ _all_params = [
308
+ 'request_body'
309
+ ]
310
+ _all_params.extend(
311
+ [
312
+ 'async_req',
313
+ '_return_http_data_only',
314
+ '_preload_content',
315
+ '_request_timeout',
316
+ '_request_auth',
317
+ '_content_type',
318
+ '_headers'
319
+ ]
320
+ )
321
+
322
+ # validate the arguments
323
+ for _key, _val in _params['kwargs'].items():
324
+ if _key not in _all_params:
325
+ raise ApiTypeError(
326
+ "Got an unexpected keyword argument '%s'"
327
+ " to method cancel_placements" % _key
328
+ )
329
+ _params[_key] = _val
330
+ del _params['kwargs']
331
+
332
+ _collection_formats = {}
333
+
334
+ # process the path parameters
335
+ _path_params = {}
336
+
337
+ # process the query parameters
338
+ _query_params = []
339
+ # process the header parameters
340
+ _header_params = dict(_params.get('_headers', {}))
341
+ # process the form parameters
342
+ _form_params = []
343
+ _files = {}
344
+ # process the body parameter
345
+ _body_params = None
346
+ if _params['request_body'] is not None:
347
+ _body_params = _params['request_body']
348
+
349
+ # set the HTTP header `Accept`
350
+ _header_params['Accept'] = self.api_client.select_header_accept(
351
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
352
+
353
+ # set the HTTP header `Content-Type`
354
+ _content_types_list = _params.get('_content_type',
355
+ self.api_client.select_header_content_type(
356
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
357
+ if _content_types_list:
358
+ _header_params['Content-Type'] = _content_types_list
359
+
360
+ # authentication setting
361
+ _auth_settings = ['oauth2'] # noqa: E501
362
+
363
+ _response_types_map = {
364
+ '200': "CancelPlacementsResponse",
365
+ '400': "LusidValidationProblemDetails",
366
+ }
367
+
368
+ return self.api_client.call_api(
369
+ '/api/ordermanagement/$cancelplacements', 'POST',
370
+ _path_params,
371
+ _query_params,
372
+ _header_params,
373
+ body=_body_params,
374
+ post_params=_form_params,
375
+ files=_files,
376
+ response_types_map=_response_types_map,
377
+ auth_settings=_auth_settings,
378
+ async_req=_params.get('async_req'),
379
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
380
+ _preload_content=_params.get('_preload_content', True),
381
+ _request_timeout=_params.get('_request_timeout'),
382
+ collection_formats=_collection_formats,
383
+ _request_auth=_params.get('_request_auth'))
384
+
224
385
  @overload
225
386
  async def create_orders(self, block_and_orders_create_request : Annotated[BlockAndOrdersCreateRequest, Field(..., description="The collection of block and orders requests.")], **kwargs) -> ResourceListOfBlockAndOrders: # noqa: E501
226
387
  ...
@@ -860,3 +1021,161 @@ class OrderManagementApi:
860
1021
  _request_timeout=_params.get('_request_timeout'),
861
1022
  collection_formats=_collection_formats,
862
1023
  _request_auth=_params.get('_request_auth'))
1024
+
1025
+ @overload
1026
+ async def update_placements(self, request_body : Annotated[Dict[str, PlacementUpdateRequest], Field(..., description="The request containing the placements to be updated.")], **kwargs) -> UpdatePlacementsResponse: # noqa: E501
1027
+ ...
1028
+
1029
+ @overload
1030
+ def update_placements(self, request_body : Annotated[Dict[str, PlacementUpdateRequest], Field(..., description="The request containing the placements to be updated.")], async_req: Optional[bool]=True, **kwargs) -> UpdatePlacementsResponse: # noqa: E501
1031
+ ...
1032
+
1033
+ @validate_arguments
1034
+ def update_placements(self, request_body : Annotated[Dict[str, PlacementUpdateRequest], Field(..., description="The request containing the placements to be updated.")], async_req: Optional[bool]=None, **kwargs) -> Union[UpdatePlacementsResponse, Awaitable[UpdatePlacementsResponse]]: # noqa: E501
1035
+ """[EARLY ACCESS] UpdatePlacements: Update existing placements # noqa: E501
1036
+
1037
+ The response returns both the collection of successfully updated placements, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for unsuccessful results. # noqa: E501
1038
+ This method makes a synchronous HTTP request by default. To make an
1039
+ asynchronous HTTP request, please pass async_req=True
1040
+
1041
+ >>> thread = api.update_placements(request_body, async_req=True)
1042
+ >>> result = thread.get()
1043
+
1044
+ :param request_body: The request containing the placements to be updated. (required)
1045
+ :type request_body: Dict[str, PlacementUpdateRequest]
1046
+ :param async_req: Whether to execute the request asynchronously.
1047
+ :type async_req: bool, optional
1048
+ :param _request_timeout: timeout setting for this request.
1049
+ If one number provided, it will be total request
1050
+ timeout. It can also be a pair (tuple) of
1051
+ (connection, read) timeouts.
1052
+ :return: Returns the result object.
1053
+ If the method is called asynchronously,
1054
+ returns the request thread.
1055
+ :rtype: UpdatePlacementsResponse
1056
+ """
1057
+ kwargs['_return_http_data_only'] = True
1058
+ if '_preload_content' in kwargs:
1059
+ message = "Error! Please call the update_placements_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1060
+ raise ValueError(message)
1061
+ if async_req is not None:
1062
+ kwargs['async_req'] = async_req
1063
+ return self.update_placements_with_http_info(request_body, **kwargs) # noqa: E501
1064
+
1065
+ @validate_arguments
1066
+ def update_placements_with_http_info(self, request_body : Annotated[Dict[str, PlacementUpdateRequest], Field(..., description="The request containing the placements to be updated.")], **kwargs) -> ApiResponse: # noqa: E501
1067
+ """[EARLY ACCESS] UpdatePlacements: Update existing placements # noqa: E501
1068
+
1069
+ The response returns both the collection of successfully updated placements, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for unsuccessful results. # noqa: E501
1070
+ This method makes a synchronous HTTP request by default. To make an
1071
+ asynchronous HTTP request, please pass async_req=True
1072
+
1073
+ >>> thread = api.update_placements_with_http_info(request_body, async_req=True)
1074
+ >>> result = thread.get()
1075
+
1076
+ :param request_body: The request containing the placements to be updated. (required)
1077
+ :type request_body: Dict[str, PlacementUpdateRequest]
1078
+ :param async_req: Whether to execute the request asynchronously.
1079
+ :type async_req: bool, optional
1080
+ :param _preload_content: if False, the ApiResponse.data will
1081
+ be set to none and raw_data will store the
1082
+ HTTP response body without reading/decoding.
1083
+ Default is True.
1084
+ :type _preload_content: bool, optional
1085
+ :param _return_http_data_only: response data instead of ApiResponse
1086
+ object with status code, headers, etc
1087
+ :type _return_http_data_only: bool, optional
1088
+ :param _request_timeout: timeout setting for this request. If one
1089
+ number provided, it will be total request
1090
+ timeout. It can also be a pair (tuple) of
1091
+ (connection, read) timeouts.
1092
+ :param _request_auth: set to override the auth_settings for an a single
1093
+ request; this effectively ignores the authentication
1094
+ in the spec for a single request.
1095
+ :type _request_auth: dict, optional
1096
+ :type _content_type: string, optional: force content-type for the request
1097
+ :return: Returns the result object.
1098
+ If the method is called asynchronously,
1099
+ returns the request thread.
1100
+ :rtype: tuple(UpdatePlacementsResponse, status_code(int), headers(HTTPHeaderDict))
1101
+ """
1102
+
1103
+ _params = locals()
1104
+
1105
+ _all_params = [
1106
+ 'request_body'
1107
+ ]
1108
+ _all_params.extend(
1109
+ [
1110
+ 'async_req',
1111
+ '_return_http_data_only',
1112
+ '_preload_content',
1113
+ '_request_timeout',
1114
+ '_request_auth',
1115
+ '_content_type',
1116
+ '_headers'
1117
+ ]
1118
+ )
1119
+
1120
+ # validate the arguments
1121
+ for _key, _val in _params['kwargs'].items():
1122
+ if _key not in _all_params:
1123
+ raise ApiTypeError(
1124
+ "Got an unexpected keyword argument '%s'"
1125
+ " to method update_placements" % _key
1126
+ )
1127
+ _params[_key] = _val
1128
+ del _params['kwargs']
1129
+
1130
+ _collection_formats = {}
1131
+
1132
+ # process the path parameters
1133
+ _path_params = {}
1134
+
1135
+ # process the query parameters
1136
+ _query_params = []
1137
+ # process the header parameters
1138
+ _header_params = dict(_params.get('_headers', {}))
1139
+ # process the form parameters
1140
+ _form_params = []
1141
+ _files = {}
1142
+ # process the body parameter
1143
+ _body_params = None
1144
+ if _params['request_body'] is not None:
1145
+ _body_params = _params['request_body']
1146
+
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
+ # set the HTTP header `Content-Type`
1152
+ _content_types_list = _params.get('_content_type',
1153
+ self.api_client.select_header_content_type(
1154
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1155
+ if _content_types_list:
1156
+ _header_params['Content-Type'] = _content_types_list
1157
+
1158
+ # authentication setting
1159
+ _auth_settings = ['oauth2'] # noqa: E501
1160
+
1161
+ _response_types_map = {
1162
+ '200': "UpdatePlacementsResponse",
1163
+ '400': "LusidValidationProblemDetails",
1164
+ }
1165
+
1166
+ return self.api_client.call_api(
1167
+ '/api/ordermanagement/$updateplacements', 'POST',
1168
+ _path_params,
1169
+ _query_params,
1170
+ _header_params,
1171
+ body=_body_params,
1172
+ post_params=_form_params,
1173
+ files=_files,
1174
+ response_types_map=_response_types_map,
1175
+ auth_settings=_auth_settings,
1176
+ async_req=_params.get('async_req'),
1177
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1178
+ _preload_content=_params.get('_preload_content', True),
1179
+ _request_timeout=_params.get('_request_timeout'),
1180
+ collection_formats=_collection_formats,
1181
+ _request_auth=_params.get('_request_auth'))
lusid/configuration.py CHANGED
@@ -373,7 +373,7 @@ class Configuration:
373
373
  return "Python SDK Debug Report:\n"\
374
374
  "OS: {env}\n"\
375
375
  "Python Version: {pyversion}\n"\
376
- "Version of the API: 0.11.6675\n"\
376
+ "Version of the API: 0.11.6694\n"\
377
377
  "SDK Package Version: {package_version}".\
378
378
  format(env=sys.platform, pyversion=sys.version, package_version=package_version)
379
379
 
lusid/models/__init__.py CHANGED
@@ -106,6 +106,8 @@ from lusid.models.calculation_info import CalculationInfo
106
106
  from lusid.models.calendar import Calendar
107
107
  from lusid.models.calendar_date import CalendarDate
108
108
  from lusid.models.calendar_dependency import CalendarDependency
109
+ from lusid.models.cancel_placements_response import CancelPlacementsResponse
110
+ from lusid.models.cancelled_placement_result import CancelledPlacementResult
109
111
  from lusid.models.cap_floor import CapFloor
110
112
  from lusid.models.capital_distribution_event import CapitalDistributionEvent
111
113
  from lusid.models.cash_and_security_offer_election import CashAndSecurityOfferElection
@@ -172,6 +174,7 @@ from lusid.models.compliance_template_parameter import ComplianceTemplateParamet
172
174
  from lusid.models.compliance_template_variation import ComplianceTemplateVariation
173
175
  from lusid.models.compliance_template_variation_dto import ComplianceTemplateVariationDto
174
176
  from lusid.models.compliance_template_variation_request import ComplianceTemplateVariationRequest
177
+ from lusid.models.component_rule import ComponentRule
175
178
  from lusid.models.component_transaction import ComponentTransaction
176
179
  from lusid.models.composite_breakdown import CompositeBreakdown
177
180
  from lusid.models.composite_breakdown_request import CompositeBreakdownRequest
@@ -317,6 +320,7 @@ from lusid.models.fee_request import FeeRequest
317
320
  from lusid.models.fee_rule import FeeRule
318
321
  from lusid.models.fee_rule_upsert_request import FeeRuleUpsertRequest
319
322
  from lusid.models.fee_rule_upsert_response import FeeRuleUpsertResponse
323
+ from lusid.models.fee_transaction_template_specification import FeeTransactionTemplateSpecification
320
324
  from lusid.models.fee_type import FeeType
321
325
  from lusid.models.fee_type_request import FeeTypeRequest
322
326
  from lusid.models.field_definition import FieldDefinition
@@ -337,12 +341,16 @@ from lusid.models.flow_conventions import FlowConventions
337
341
  from lusid.models.forward_rate_agreement import ForwardRateAgreement
338
342
  from lusid.models.from_recipe import FromRecipe
339
343
  from lusid.models.fund import Fund
344
+ from lusid.models.fund_configuration import FundConfiguration
345
+ from lusid.models.fund_configuration_properties import FundConfigurationProperties
346
+ from lusid.models.fund_configuration_request import FundConfigurationRequest
340
347
  from lusid.models.fund_properties import FundProperties
341
348
  from lusid.models.fund_request import FundRequest
342
349
  from lusid.models.fund_share_class import FundShareClass
343
350
  from lusid.models.funding_leg import FundingLeg
344
351
  from lusid.models.funding_leg_options import FundingLegOptions
345
352
  from lusid.models.future import Future
353
+ from lusid.models.future_expiry_event import FutureExpiryEvent
346
354
  from lusid.models.futures_contract_details import FuturesContractDetails
347
355
  from lusid.models.fx_conventions import FxConventions
348
356
  from lusid.models.fx_dependency import FxDependency
@@ -417,6 +425,7 @@ from lusid.models.instrument_cash_flow import InstrumentCashFlow
417
425
  from lusid.models.instrument_definition import InstrumentDefinition
418
426
  from lusid.models.instrument_definition_format import InstrumentDefinitionFormat
419
427
  from lusid.models.instrument_delete_modes import InstrumentDeleteModes
428
+ from lusid.models.instrument_entity import InstrumentEntity
420
429
  from lusid.models.instrument_event import InstrumentEvent
421
430
  from lusid.models.instrument_event_configuration import InstrumentEventConfiguration
422
431
  from lusid.models.instrument_event_holder import InstrumentEventHolder
@@ -566,6 +575,7 @@ from lusid.models.paged_resource_list_of_execution import PagedResourceListOfExe
566
575
  from lusid.models.paged_resource_list_of_fee import PagedResourceListOfFee
567
576
  from lusid.models.paged_resource_list_of_fee_type import PagedResourceListOfFeeType
568
577
  from lusid.models.paged_resource_list_of_fund import PagedResourceListOfFund
578
+ from lusid.models.paged_resource_list_of_fund_configuration import PagedResourceListOfFundConfiguration
569
579
  from lusid.models.paged_resource_list_of_general_ledger_profile_response import PagedResourceListOfGeneralLedgerProfileResponse
570
580
  from lusid.models.paged_resource_list_of_instrument import PagedResourceListOfInstrument
571
581
  from lusid.models.paged_resource_list_of_instrument_event_holder import PagedResourceListOfInstrumentEventHolder
@@ -613,6 +623,7 @@ from lusid.models.place_blocks_request import PlaceBlocksRequest
613
623
  from lusid.models.placement import Placement
614
624
  from lusid.models.placement_request import PlacementRequest
615
625
  from lusid.models.placement_set_request import PlacementSetRequest
626
+ from lusid.models.placement_update_request import PlacementUpdateRequest
616
627
  from lusid.models.portfolio import Portfolio
617
628
  from lusid.models.portfolio_cash_flow import PortfolioCashFlow
618
629
  from lusid.models.portfolio_cash_ladder import PortfolioCashLadder
@@ -649,6 +660,7 @@ from lusid.models.pricing_model import PricingModel
649
660
  from lusid.models.pricing_options import PricingOptions
650
661
  from lusid.models.processed_command import ProcessedCommand
651
662
  from lusid.models.property_definition import PropertyDefinition
663
+ from lusid.models.property_definition_entity import PropertyDefinitionEntity
652
664
  from lusid.models.property_definition_search_result import PropertyDefinitionSearchResult
653
665
  from lusid.models.property_definition_type import PropertyDefinitionType
654
666
  from lusid.models.property_domain import PropertyDomain
@@ -928,6 +940,7 @@ from lusid.models.update_data_type_request import UpdateDataTypeRequest
928
940
  from lusid.models.update_derived_property_definition_request import UpdateDerivedPropertyDefinitionRequest
929
941
  from lusid.models.update_fee_type_request import UpdateFeeTypeRequest
930
942
  from lusid.models.update_instrument_identifier_request import UpdateInstrumentIdentifierRequest
943
+ from lusid.models.update_placements_response import UpdatePlacementsResponse
931
944
  from lusid.models.update_portfolio_group_request import UpdatePortfolioGroupRequest
932
945
  from lusid.models.update_portfolio_request import UpdatePortfolioRequest
933
946
  from lusid.models.update_property_definition_request import UpdatePropertyDefinitionRequest
@@ -1105,6 +1118,8 @@ __all__ = [
1105
1118
  "Calendar",
1106
1119
  "CalendarDate",
1107
1120
  "CalendarDependency",
1121
+ "CancelPlacementsResponse",
1122
+ "CancelledPlacementResult",
1108
1123
  "CapFloor",
1109
1124
  "CapitalDistributionEvent",
1110
1125
  "CashAndSecurityOfferElection",
@@ -1171,6 +1186,7 @@ __all__ = [
1171
1186
  "ComplianceTemplateVariation",
1172
1187
  "ComplianceTemplateVariationDto",
1173
1188
  "ComplianceTemplateVariationRequest",
1189
+ "ComponentRule",
1174
1190
  "ComponentTransaction",
1175
1191
  "CompositeBreakdown",
1176
1192
  "CompositeBreakdownRequest",
@@ -1316,6 +1332,7 @@ __all__ = [
1316
1332
  "FeeRule",
1317
1333
  "FeeRuleUpsertRequest",
1318
1334
  "FeeRuleUpsertResponse",
1335
+ "FeeTransactionTemplateSpecification",
1319
1336
  "FeeType",
1320
1337
  "FeeTypeRequest",
1321
1338
  "FieldDefinition",
@@ -1336,12 +1353,16 @@ __all__ = [
1336
1353
  "ForwardRateAgreement",
1337
1354
  "FromRecipe",
1338
1355
  "Fund",
1356
+ "FundConfiguration",
1357
+ "FundConfigurationProperties",
1358
+ "FundConfigurationRequest",
1339
1359
  "FundProperties",
1340
1360
  "FundRequest",
1341
1361
  "FundShareClass",
1342
1362
  "FundingLeg",
1343
1363
  "FundingLegOptions",
1344
1364
  "Future",
1365
+ "FutureExpiryEvent",
1345
1366
  "FuturesContractDetails",
1346
1367
  "FxConventions",
1347
1368
  "FxDependency",
@@ -1416,6 +1437,7 @@ __all__ = [
1416
1437
  "InstrumentDefinition",
1417
1438
  "InstrumentDefinitionFormat",
1418
1439
  "InstrumentDeleteModes",
1440
+ "InstrumentEntity",
1419
1441
  "InstrumentEvent",
1420
1442
  "InstrumentEventConfiguration",
1421
1443
  "InstrumentEventHolder",
@@ -1565,6 +1587,7 @@ __all__ = [
1565
1587
  "PagedResourceListOfFee",
1566
1588
  "PagedResourceListOfFeeType",
1567
1589
  "PagedResourceListOfFund",
1590
+ "PagedResourceListOfFundConfiguration",
1568
1591
  "PagedResourceListOfGeneralLedgerProfileResponse",
1569
1592
  "PagedResourceListOfInstrument",
1570
1593
  "PagedResourceListOfInstrumentEventHolder",
@@ -1612,6 +1635,7 @@ __all__ = [
1612
1635
  "Placement",
1613
1636
  "PlacementRequest",
1614
1637
  "PlacementSetRequest",
1638
+ "PlacementUpdateRequest",
1615
1639
  "Portfolio",
1616
1640
  "PortfolioCashFlow",
1617
1641
  "PortfolioCashLadder",
@@ -1648,6 +1672,7 @@ __all__ = [
1648
1672
  "PricingOptions",
1649
1673
  "ProcessedCommand",
1650
1674
  "PropertyDefinition",
1675
+ "PropertyDefinitionEntity",
1651
1676
  "PropertyDefinitionSearchResult",
1652
1677
  "PropertyDefinitionType",
1653
1678
  "PropertyDomain",
@@ -1927,6 +1952,7 @@ __all__ = [
1927
1952
  "UpdateDerivedPropertyDefinitionRequest",
1928
1953
  "UpdateFeeTypeRequest",
1929
1954
  "UpdateInstrumentIdentifierRequest",
1955
+ "UpdatePlacementsResponse",
1930
1956
  "UpdatePortfolioGroupRequest",
1931
1957
  "UpdatePortfolioRequest",
1932
1958
  "UpdatePropertyDefinitionRequest",
@@ -35,6 +35,9 @@ class AccountingMethod(str, Enum):
35
35
  LASTINFIRSTOUT = 'LastInFirstOut'
36
36
  HIGHESTCOSTFIRST = 'HighestCostFirst'
37
37
  LOWESTCOSTFIRST = 'LowestCostFirst'
38
+ PRORATEBYUNITS = 'ProRateByUnits'
39
+ PRORATEBYCOST = 'ProRateByCost'
40
+ PRORATEBYCOSTPORTFOLIOCURRENCY = 'ProRateByCostPortfolioCurrency'
38
41
 
39
42
  @classmethod
40
43
  def from_json(cls, json_str: str) -> AccountingMethod:
@@ -31,15 +31,15 @@ class AccumulationEvent(InstrumentEvent):
31
31
  dividend_rate: Union[StrictFloat, StrictInt] = Field(..., alias="dividendRate", description="Dividend rate or payment rate as a percentage. i.e. 5% is written as 0.05")
32
32
  ex_date: datetime = Field(..., alias="exDate", description="The first business day on which the dividend is not owed to the buying party. Typically this is T-1 from the RecordDate.")
33
33
  payment_date: datetime = Field(..., alias="paymentDate", description="The date the company pays out dividends to shareholders.")
34
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
34
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
35
35
  additional_properties: Dict[str, Any] = {}
36
36
  __properties = ["instrumentEventType", "announcementDate", "dividendCurrency", "dividendRate", "exDate", "paymentDate"]
37
37
 
38
38
  @validator('instrument_event_type')
39
39
  def instrument_event_type_validate_enum(cls, value):
40
40
  """Validates the enum"""
41
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
42
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
41
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
42
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
43
43
  return value
44
44
 
45
45
  class Config:
@@ -30,15 +30,15 @@ class AmortisationEvent(InstrumentEvent):
30
30
  dom_ccy: StrictStr = Field(..., alias="domCcy", description="Domestic currency of the originating instrument")
31
31
  pay_receive: constr(strict=True, min_length=1) = Field(..., alias="payReceive", description="Is this event in relation to the Pay or Receive leg")
32
32
  payment_date: datetime = Field(..., alias="paymentDate", description="The date the principal payment is to be made.")
33
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
33
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "amountReduced", "domCcy", "payReceive", "paymentDate"]
36
36
 
37
37
  @validator('instrument_event_type')
38
38
  def instrument_event_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
41
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
40
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
41
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -30,15 +30,15 @@ class BondCouponEvent(InstrumentEvent):
30
30
  payment_date: datetime = Field(..., alias="paymentDate", description="Payment date of the coupon payment")
31
31
  currency: StrictStr = Field(..., description="Currency of the coupon payment")
32
32
  coupon_per_unit: Union[StrictFloat, StrictInt] = Field(..., alias="couponPerUnit", description="CouponRate*Principal")
33
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
33
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "exDate", "paymentDate", "currency", "couponPerUnit"]
36
36
 
37
37
  @validator('instrument_event_type')
38
38
  def instrument_event_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
41
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
40
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
41
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -27,15 +27,15 @@ class BondDefaultEvent(InstrumentEvent):
27
27
  Indicates when an issuer has defaulted on an obligation due to technical default, missed payments, or bankruptcy filing. # noqa: E501
28
28
  """
29
29
  effective_date: datetime = Field(..., alias="effectiveDate", description="The date the bond default occurred.")
30
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
30
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
31
31
  additional_properties: Dict[str, Any] = {}
32
32
  __properties = ["instrumentEventType", "effectiveDate"]
33
33
 
34
34
  @validator('instrument_event_type')
35
35
  def instrument_event_type_validate_enum(cls, value):
36
36
  """Validates the enum"""
37
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
38
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
37
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
38
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
39
39
  return value
40
40
 
41
41
  class Config: