lusid-sdk 2.1.488__py3-none-any.whl → 2.1.516__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. lusid/__init__.py +28 -0
  2. lusid/api/group_reconciliations_api.py +360 -0
  3. lusid/configuration.py +1 -1
  4. lusid/models/__init__.py +28 -0
  5. lusid/models/accumulation_event.py +3 -3
  6. lusid/models/amortisation_event.py +3 -3
  7. lusid/models/applicable_instrument_event.py +7 -2
  8. lusid/models/batch_update_user_review_for_comparison_result_request.py +81 -0
  9. lusid/models/batch_update_user_review_for_comparison_result_response.py +146 -0
  10. lusid/models/bond_coupon_event.py +3 -3
  11. lusid/models/bond_default_event.py +3 -3
  12. lusid/models/bond_principal_event.py +3 -3
  13. lusid/models/bonus_issue_event.py +3 -3
  14. lusid/models/call_on_intermediate_securities_event.py +3 -3
  15. lusid/models/capital_distribution_event.py +3 -3
  16. lusid/models/cash_dividend_event.py +3 -3
  17. lusid/models/cash_flow_event.py +3 -3
  18. lusid/models/cds_credit_event.py +3 -3
  19. lusid/models/cdx_credit_event.py +3 -3
  20. lusid/models/close_event.py +3 -3
  21. lusid/models/create_staging_rule_set_request.py +1 -6
  22. lusid/models/credit_premium_cash_flow_event.py +3 -3
  23. lusid/models/delete_instrument_response.py +7 -1
  24. lusid/models/deleted_entity_response.py +7 -1
  25. lusid/models/dividend_option_event.py +3 -3
  26. lusid/models/dividend_reinvestment_event.py +3 -3
  27. lusid/models/equity_option.py +7 -2
  28. lusid/models/exchange_traded_option_contract_details.py +1 -1
  29. lusid/models/exercise_event.py +3 -3
  30. lusid/models/expiry_event.py +3 -3
  31. lusid/models/fee.py +1 -1
  32. lusid/models/fee_request.py +1 -1
  33. lusid/models/future_expiry_event.py +3 -3
  34. lusid/models/fx_forward_settlement_event.py +3 -3
  35. lusid/models/group_reconciliation_result_statuses.py +89 -0
  36. lusid/models/group_reconciliation_result_types.py +96 -0
  37. lusid/models/group_reconciliation_review_statuses.py +96 -0
  38. lusid/models/group_reconciliation_run_details.py +76 -0
  39. lusid/models/group_reconciliation_run_request.py +75 -0
  40. lusid/models/group_reconciliation_run_response.py +77 -0
  41. lusid/models/group_reconciliation_summary.py +121 -0
  42. lusid/models/group_reconciliation_user_review_add.py +88 -0
  43. lusid/models/group_reconciliation_user_review_remove.py +88 -0
  44. lusid/models/informational_error_event.py +3 -3
  45. lusid/models/informational_event.py +3 -3
  46. lusid/models/instrument_event.py +8 -5
  47. lusid/models/instrument_event_type.py +3 -0
  48. lusid/models/intermediate_securities_distribution_event.py +140 -0
  49. lusid/models/maturity_event.py +3 -3
  50. lusid/models/mbs_coupon_event.py +3 -3
  51. lusid/models/mbs_interest_deferral_event.py +3 -3
  52. lusid/models/mbs_interest_shortfall_event.py +3 -3
  53. lusid/models/mbs_principal_event.py +3 -3
  54. lusid/models/mbs_principal_write_off_event.py +3 -3
  55. lusid/models/merger_event.py +3 -3
  56. lusid/models/new_instrument.py +1 -1
  57. lusid/models/open_event.py +3 -3
  58. lusid/models/option_exercise_physical_event.py +149 -0
  59. lusid/models/protection_payout_cash_flow_event.py +102 -0
  60. lusid/models/raw_vendor_event.py +3 -3
  61. lusid/models/reset_event.py +3 -3
  62. lusid/models/reverse_stock_split_event.py +3 -3
  63. lusid/models/scrip_dividend_event.py +3 -3
  64. lusid/models/spin_off_event.py +3 -3
  65. lusid/models/stock_dividend_event.py +3 -3
  66. lusid/models/stock_split_event.py +3 -3
  67. lusid/models/swap_cash_flow_event.py +3 -3
  68. lusid/models/swap_principal_event.py +3 -3
  69. lusid/models/target_tax_lot.py +23 -2
  70. lusid/models/target_tax_lot_request.py +23 -2
  71. lusid/models/tender_event.py +3 -3
  72. lusid/models/transition_event.py +3 -3
  73. lusid/models/trigger_event.py +3 -3
  74. lusid/models/update_staging_rule_set_request.py +1 -6
  75. {lusid_sdk-2.1.488.dist-info → lusid_sdk-2.1.516.dist-info}/METADATA +17 -1
  76. {lusid_sdk-2.1.488.dist-info → lusid_sdk-2.1.516.dist-info}/RECORD +77 -63
  77. {lusid_sdk-2.1.488.dist-info → lusid_sdk-2.1.516.dist-info}/WHEEL +0 -0
lusid/__init__.py CHANGED
@@ -159,6 +159,8 @@ from lusid.models.barrier import Barrier
159
159
  from lusid.models.basket import Basket
160
160
  from lusid.models.basket_identifier import BasketIdentifier
161
161
  from lusid.models.batch_adjust_holdings_response import BatchAdjustHoldingsResponse
162
+ from lusid.models.batch_update_user_review_for_comparison_result_request import BatchUpdateUserReviewForComparisonResultRequest
163
+ from lusid.models.batch_update_user_review_for_comparison_result_response import BatchUpdateUserReviewForComparisonResultResponse
162
164
  from lusid.models.batch_upsert_dates_for_calendar_response import BatchUpsertDatesForCalendarResponse
163
165
  from lusid.models.batch_upsert_instrument_properties_response import BatchUpsertInstrumentPropertiesResponse
164
166
  from lusid.models.batch_upsert_portfolio_access_metadata_request import BatchUpsertPortfolioAccessMetadataRequest
@@ -528,10 +530,19 @@ from lusid.models.group_reconciliation_definition_currencies import GroupReconci
528
530
  from lusid.models.group_reconciliation_definition_portfolio_entity_ids import GroupReconciliationDefinitionPortfolioEntityIds
529
531
  from lusid.models.group_reconciliation_definition_recipe_ids import GroupReconciliationDefinitionRecipeIds
530
532
  from lusid.models.group_reconciliation_instance_id import GroupReconciliationInstanceId
533
+ from lusid.models.group_reconciliation_result_statuses import GroupReconciliationResultStatuses
534
+ from lusid.models.group_reconciliation_result_types import GroupReconciliationResultTypes
535
+ from lusid.models.group_reconciliation_review_statuses import GroupReconciliationReviewStatuses
536
+ from lusid.models.group_reconciliation_run_details import GroupReconciliationRunDetails
537
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
538
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
539
+ from lusid.models.group_reconciliation_summary import GroupReconciliationSummary
531
540
  from lusid.models.group_reconciliation_user_review import GroupReconciliationUserReview
541
+ from lusid.models.group_reconciliation_user_review_add import GroupReconciliationUserReviewAdd
532
542
  from lusid.models.group_reconciliation_user_review_break_code import GroupReconciliationUserReviewBreakCode
533
543
  from lusid.models.group_reconciliation_user_review_comment import GroupReconciliationUserReviewComment
534
544
  from lusid.models.group_reconciliation_user_review_match_key import GroupReconciliationUserReviewMatchKey
545
+ from lusid.models.group_reconciliation_user_review_remove import GroupReconciliationUserReviewRemove
535
546
  from lusid.models.grouped_result_of_address_key import GroupedResultOfAddressKey
536
547
  from lusid.models.holding_adjustment import HoldingAdjustment
537
548
  from lusid.models.holding_adjustment_with_date import HoldingAdjustmentWithDate
@@ -590,6 +601,7 @@ from lusid.models.interest_rate_swap import InterestRateSwap
590
601
  from lusid.models.interest_rate_swaption import InterestRateSwaption
591
602
  from lusid.models.intermediate_compliance_step import IntermediateComplianceStep
592
603
  from lusid.models.intermediate_compliance_step_request import IntermediateComplianceStepRequest
604
+ from lusid.models.intermediate_securities_distribution_event import IntermediateSecuritiesDistributionEvent
593
605
  from lusid.models.ir_vol_cube_data import IrVolCubeData
594
606
  from lusid.models.ir_vol_dependency import IrVolDependency
595
607
  from lusid.models.is_business_day_response import IsBusinessDayResponse
@@ -661,6 +673,7 @@ from lusid.models.operation_type import OperationType
661
673
  from lusid.models.operator import Operator
662
674
  from lusid.models.option_entry import OptionEntry
663
675
  from lusid.models.option_exercise_election import OptionExerciseElection
676
+ from lusid.models.option_exercise_physical_event import OptionExercisePhysicalEvent
664
677
  from lusid.models.optionality_schedule import OptionalitySchedule
665
678
  from lusid.models.order import Order
666
679
  from lusid.models.order_by_spec import OrderBySpec
@@ -835,6 +848,7 @@ from lusid.models.property_type import PropertyType
835
848
  from lusid.models.property_value import PropertyValue
836
849
  from lusid.models.property_value_equals import PropertyValueEquals
837
850
  from lusid.models.property_value_in import PropertyValueIn
851
+ from lusid.models.protection_payout_cash_flow_event import ProtectionPayoutCashFlowEvent
838
852
  from lusid.models.query_applicable_instrument_events_request import QueryApplicableInstrumentEventsRequest
839
853
  from lusid.models.query_bucketed_cash_flows_request import QueryBucketedCashFlowsRequest
840
854
  from lusid.models.query_cash_flows_request import QueryCashFlowsRequest
@@ -1360,6 +1374,8 @@ __all__ = [
1360
1374
  "Basket",
1361
1375
  "BasketIdentifier",
1362
1376
  "BatchAdjustHoldingsResponse",
1377
+ "BatchUpdateUserReviewForComparisonResultRequest",
1378
+ "BatchUpdateUserReviewForComparisonResultResponse",
1363
1379
  "BatchUpsertDatesForCalendarResponse",
1364
1380
  "BatchUpsertInstrumentPropertiesResponse",
1365
1381
  "BatchUpsertPortfolioAccessMetadataRequest",
@@ -1729,10 +1745,19 @@ __all__ = [
1729
1745
  "GroupReconciliationDefinitionPortfolioEntityIds",
1730
1746
  "GroupReconciliationDefinitionRecipeIds",
1731
1747
  "GroupReconciliationInstanceId",
1748
+ "GroupReconciliationResultStatuses",
1749
+ "GroupReconciliationResultTypes",
1750
+ "GroupReconciliationReviewStatuses",
1751
+ "GroupReconciliationRunDetails",
1752
+ "GroupReconciliationRunRequest",
1753
+ "GroupReconciliationRunResponse",
1754
+ "GroupReconciliationSummary",
1732
1755
  "GroupReconciliationUserReview",
1756
+ "GroupReconciliationUserReviewAdd",
1733
1757
  "GroupReconciliationUserReviewBreakCode",
1734
1758
  "GroupReconciliationUserReviewComment",
1735
1759
  "GroupReconciliationUserReviewMatchKey",
1760
+ "GroupReconciliationUserReviewRemove",
1736
1761
  "GroupedResultOfAddressKey",
1737
1762
  "HoldingAdjustment",
1738
1763
  "HoldingAdjustmentWithDate",
@@ -1791,6 +1816,7 @@ __all__ = [
1791
1816
  "InterestRateSwaption",
1792
1817
  "IntermediateComplianceStep",
1793
1818
  "IntermediateComplianceStepRequest",
1819
+ "IntermediateSecuritiesDistributionEvent",
1794
1820
  "IrVolCubeData",
1795
1821
  "IrVolDependency",
1796
1822
  "IsBusinessDayResponse",
@@ -1862,6 +1888,7 @@ __all__ = [
1862
1888
  "Operator",
1863
1889
  "OptionEntry",
1864
1890
  "OptionExerciseElection",
1891
+ "OptionExercisePhysicalEvent",
1865
1892
  "OptionalitySchedule",
1866
1893
  "Order",
1867
1894
  "OrderBySpec",
@@ -2036,6 +2063,7 @@ __all__ = [
2036
2063
  "PropertyValue",
2037
2064
  "PropertyValueEquals",
2038
2065
  "PropertyValueIn",
2066
+ "ProtectionPayoutCashFlowEvent",
2039
2067
  "QueryApplicableInstrumentEventsRequest",
2040
2068
  "QueryBucketedCashFlowsRequest",
2041
2069
  "QueryCashFlowsRequest",
@@ -26,12 +26,16 @@ from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
26
26
 
27
27
  from typing import Optional
28
28
 
29
+ from lusid.models.batch_update_user_review_for_comparison_result_request import BatchUpdateUserReviewForComparisonResultRequest
30
+ from lusid.models.batch_update_user_review_for_comparison_result_response import BatchUpdateUserReviewForComparisonResultResponse
29
31
  from lusid.models.create_group_reconciliation_comparison_ruleset_request import CreateGroupReconciliationComparisonRulesetRequest
30
32
  from lusid.models.create_group_reconciliation_definition_request import CreateGroupReconciliationDefinitionRequest
31
33
  from lusid.models.deleted_entity_response import DeletedEntityResponse
32
34
  from lusid.models.group_reconciliation_comparison_result import GroupReconciliationComparisonResult
33
35
  from lusid.models.group_reconciliation_comparison_ruleset import GroupReconciliationComparisonRuleset
34
36
  from lusid.models.group_reconciliation_definition import GroupReconciliationDefinition
37
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
38
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
35
39
  from lusid.models.paged_resource_list_of_group_reconciliation_comparison_result import PagedResourceListOfGroupReconciliationComparisonResult
36
40
  from lusid.models.paged_resource_list_of_group_reconciliation_comparison_ruleset import PagedResourceListOfGroupReconciliationComparisonRuleset
37
41
  from lusid.models.paged_resource_list_of_group_reconciliation_definition import PagedResourceListOfGroupReconciliationDefinition
@@ -59,6 +63,188 @@ class GroupReconciliationsApi:
59
63
  api_client = ApiClient.get_default()
60
64
  self.api_client = api_client
61
65
 
66
+ @overload
67
+ async def batch_update_comparison_results(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, **kwargs) -> BatchUpdateUserReviewForComparisonResultResponse: # noqa: E501
68
+ ...
69
+
70
+ @overload
71
+ def batch_update_comparison_results(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchUpdateUserReviewForComparisonResultResponse: # noqa: E501
72
+ ...
73
+
74
+ @validate_arguments
75
+ def batch_update_comparison_results(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchUpdateUserReviewForComparisonResultResponse, Awaitable[BatchUpdateUserReviewForComparisonResultResponse]]: # noqa: E501
76
+ """[EXPERIMENTAL] BatchUpdateComparisonResults: Add User Review entries for a range of comparison results related to a specific GroupReconciliationDefinition. # noqa: E501
77
+
78
+ Allows to update multiple Group Reconciliation Comparison Results related to the same definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code. Updates User Review with new entries and sets the relevant Review Status. Supports partial success when all the entries that haven't passed validation or are not related to the definition will be returned with respectful error details. # noqa: E501
79
+ This method makes a synchronous HTTP request by default. To make an
80
+ asynchronous HTTP request, please pass async_req=True
81
+
82
+ >>> thread = api.batch_update_comparison_results(scope, code, batch_update_user_review_for_comparison_result_request, success_mode, async_req=True)
83
+ >>> result = thread.get()
84
+
85
+ :param scope: Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults. (required)
86
+ :type scope: str
87
+ :param code: GroupReconciliationDefinitionId code. (required)
88
+ :type code: str
89
+ :param batch_update_user_review_for_comparison_result_request: A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp. (required)
90
+ :type batch_update_user_review_for_comparison_result_request: List[BatchUpdateUserReviewForComparisonResultRequest]
91
+ :param success_mode: Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".
92
+ :type success_mode: str
93
+ :param async_req: Whether to execute the request asynchronously.
94
+ :type async_req: bool, optional
95
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
96
+ :param opts: Configuration options for this request
97
+ :type opts: ConfigurationOptions, optional
98
+ :return: Returns the result object.
99
+ If the method is called asynchronously,
100
+ returns the request thread.
101
+ :rtype: BatchUpdateUserReviewForComparisonResultResponse
102
+ """
103
+ kwargs['_return_http_data_only'] = True
104
+ if '_preload_content' in kwargs:
105
+ message = "Error! Please call the batch_update_comparison_results_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
106
+ raise ValueError(message)
107
+ if async_req is not None:
108
+ kwargs['async_req'] = async_req
109
+ return self.batch_update_comparison_results_with_http_info(scope, code, batch_update_user_review_for_comparison_result_request, success_mode, **kwargs) # noqa: E501
110
+
111
+ @validate_arguments
112
+ def batch_update_comparison_results_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="GroupReconciliationDefinitionId code.")], batch_update_user_review_for_comparison_result_request : Annotated[conlist(BatchUpdateUserReviewForComparisonResultRequest), Field(..., description="A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp.")], success_mode : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".")] = None, **kwargs) -> ApiResponse: # noqa: E501
113
+ """[EXPERIMENTAL] BatchUpdateComparisonResults: Add User Review entries for a range of comparison results related to a specific GroupReconciliationDefinition. # noqa: E501
114
+
115
+ Allows to update multiple Group Reconciliation Comparison Results related to the same definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code. Updates User Review with new entries and sets the relevant Review Status. Supports partial success when all the entries that haven't passed validation or are not related to the definition will be returned with respectful error details. # noqa: E501
116
+ This method makes a synchronous HTTP request by default. To make an
117
+ asynchronous HTTP request, please pass async_req=True
118
+
119
+ >>> thread = api.batch_update_comparison_results_with_http_info(scope, code, batch_update_user_review_for_comparison_result_request, success_mode, async_req=True)
120
+ >>> result = thread.get()
121
+
122
+ :param scope: Shared Scope of the GroupReconciliationDefinition and GroupReconciliationComparisonResults. (required)
123
+ :type scope: str
124
+ :param code: GroupReconciliationDefinitionId code. (required)
125
+ :type code: str
126
+ :param batch_update_user_review_for_comparison_result_request: A collection of the comparison result Ids and their user review entries to be added or removed. Single request contains resultId, break code/match key/comment to add and break code/match key/comment to remove by added timestamp. (required)
127
+ :type batch_update_user_review_for_comparison_result_request: List[BatchUpdateUserReviewForComparisonResultRequest]
128
+ :param success_mode: Defines whether the request should fail if at least one of the entries is failed to update or process all the entries regardless and return collections of successful and failed updates. \"Partial\" (default) | \"Atomic\".
129
+ :type success_mode: str
130
+ :param async_req: Whether to execute the request asynchronously.
131
+ :type async_req: bool, optional
132
+ :param _preload_content: if False, the ApiResponse.data will
133
+ be set to none and raw_data will store the
134
+ HTTP response body without reading/decoding.
135
+ Default is True.
136
+ :type _preload_content: bool, optional
137
+ :param _return_http_data_only: response data instead of ApiResponse
138
+ object with status code, headers, etc
139
+ :type _return_http_data_only: bool, optional
140
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
141
+ :param opts: Configuration options for this request
142
+ :type opts: ConfigurationOptions, optional
143
+ :param _request_auth: set to override the auth_settings for an a single
144
+ request; this effectively ignores the authentication
145
+ in the spec for a single request.
146
+ :type _request_auth: dict, optional
147
+ :type _content_type: string, optional: force content-type for the request
148
+ :return: Returns the result object.
149
+ If the method is called asynchronously,
150
+ returns the request thread.
151
+ :rtype: tuple(BatchUpdateUserReviewForComparisonResultResponse, status_code(int), headers(HTTPHeaderDict))
152
+ """
153
+
154
+ _params = locals()
155
+
156
+ _all_params = [
157
+ 'scope',
158
+ 'code',
159
+ 'batch_update_user_review_for_comparison_result_request',
160
+ 'success_mode'
161
+ ]
162
+ _all_params.extend(
163
+ [
164
+ 'async_req',
165
+ '_return_http_data_only',
166
+ '_preload_content',
167
+ '_request_timeout',
168
+ '_request_auth',
169
+ '_content_type',
170
+ '_headers',
171
+ 'opts'
172
+ ]
173
+ )
174
+
175
+ # validate the arguments
176
+ for _key, _val in _params['kwargs'].items():
177
+ if _key not in _all_params:
178
+ raise ApiTypeError(
179
+ "Got an unexpected keyword argument '%s'"
180
+ " to method batch_update_comparison_results" % _key
181
+ )
182
+ _params[_key] = _val
183
+ del _params['kwargs']
184
+
185
+ _collection_formats = {}
186
+
187
+ # process the path parameters
188
+ _path_params = {}
189
+ if _params['scope']:
190
+ _path_params['scope'] = _params['scope']
191
+
192
+ if _params['code']:
193
+ _path_params['code'] = _params['code']
194
+
195
+
196
+ # process the query parameters
197
+ _query_params = []
198
+ if _params.get('success_mode') is not None: # noqa: E501
199
+ _query_params.append(('successMode', _params['success_mode']))
200
+
201
+ # process the header parameters
202
+ _header_params = dict(_params.get('_headers', {}))
203
+ # process the form parameters
204
+ _form_params = []
205
+ _files = {}
206
+ # process the body parameter
207
+ _body_params = None
208
+ if _params['batch_update_user_review_for_comparison_result_request'] is not None:
209
+ _body_params = _params['batch_update_user_review_for_comparison_result_request']
210
+
211
+ # set the HTTP header `Accept`
212
+ _header_params['Accept'] = self.api_client.select_header_accept(
213
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
214
+
215
+ # set the HTTP header `Content-Type`
216
+ _content_types_list = _params.get('_content_type',
217
+ self.api_client.select_header_content_type(
218
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
219
+ if _content_types_list:
220
+ _header_params['Content-Type'] = _content_types_list
221
+
222
+ # authentication setting
223
+ _auth_settings = ['oauth2'] # noqa: E501
224
+
225
+ _response_types_map = {
226
+ '200': "BatchUpdateUserReviewForComparisonResultResponse",
227
+ '400': "LusidValidationProblemDetails",
228
+ }
229
+
230
+ return self.api_client.call_api(
231
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}/comparisonresults/$batchReview', 'POST',
232
+ _path_params,
233
+ _query_params,
234
+ _header_params,
235
+ body=_body_params,
236
+ post_params=_form_params,
237
+ files=_files,
238
+ response_types_map=_response_types_map,
239
+ auth_settings=_auth_settings,
240
+ async_req=_params.get('async_req'),
241
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
242
+ _preload_content=_params.get('_preload_content', True),
243
+ _request_timeout=_params.get('_request_timeout'),
244
+ opts=_params.get('opts'),
245
+ collection_formats=_collection_formats,
246
+ _request_auth=_params.get('_request_auth'))
247
+
62
248
  @overload
63
249
  async def create_comparison_ruleset(self, create_group_reconciliation_comparison_ruleset_request : Annotated[Optional[CreateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the details of the ruleset")] = None, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
64
250
  ...
@@ -1788,6 +1974,180 @@ class GroupReconciliationsApi:
1788
1974
  collection_formats=_collection_formats,
1789
1975
  _request_auth=_params.get('_request_auth'))
1790
1976
 
1977
+ @overload
1978
+ async def run_reconciliation(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, **kwargs) -> GroupReconciliationRunResponse: # noqa: E501
1979
+ ...
1980
+
1981
+ @overload
1982
+ def run_reconciliation(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, async_req: Optional[bool]=True, **kwargs) -> GroupReconciliationRunResponse: # noqa: E501
1983
+ ...
1984
+
1985
+ @validate_arguments
1986
+ def run_reconciliation(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, async_req: Optional[bool]=None, **kwargs) -> Union[GroupReconciliationRunResponse, Awaitable[GroupReconciliationRunResponse]]: # noqa: E501
1987
+ """[EXPERIMENTAL] RunReconciliation: Runs a Group Reconciliation # noqa: E501
1988
+
1989
+ Runs a Group Reconciliation using the definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code Supports pagination. # noqa: E501
1990
+ This method makes a synchronous HTTP request by default. To make an
1991
+ asynchronous HTTP request, please pass async_req=True
1992
+
1993
+ >>> thread = api.run_reconciliation(scope, code, group_reconciliation_run_request, async_req=True)
1994
+ >>> result = thread.get()
1995
+
1996
+ :param scope: The scope of the group reconciliation definition to use for the reconciliation. (required)
1997
+ :type scope: str
1998
+ :param code: The code of the group reconciliation definition to use for the reconciliation. (required)
1999
+ :type code: str
2000
+ :param group_reconciliation_run_request:
2001
+ :type group_reconciliation_run_request: GroupReconciliationRunRequest
2002
+ :param async_req: Whether to execute the request asynchronously.
2003
+ :type async_req: bool, optional
2004
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2005
+ :param opts: Configuration options for this request
2006
+ :type opts: ConfigurationOptions, optional
2007
+ :return: Returns the result object.
2008
+ If the method is called asynchronously,
2009
+ returns the request thread.
2010
+ :rtype: GroupReconciliationRunResponse
2011
+ """
2012
+ kwargs['_return_http_data_only'] = True
2013
+ if '_preload_content' in kwargs:
2014
+ message = "Error! Please call the run_reconciliation_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
2015
+ raise ValueError(message)
2016
+ if async_req is not None:
2017
+ kwargs['async_req'] = async_req
2018
+ return self.run_reconciliation_with_http_info(scope, code, group_reconciliation_run_request, **kwargs) # noqa: E501
2019
+
2020
+ @validate_arguments
2021
+ def run_reconciliation_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the group reconciliation definition to use for the reconciliation.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the group reconciliation definition to use for the reconciliation.")], group_reconciliation_run_request : Optional[GroupReconciliationRunRequest] = None, **kwargs) -> ApiResponse: # noqa: E501
2022
+ """[EXPERIMENTAL] RunReconciliation: Runs a Group Reconciliation # noqa: E501
2023
+
2024
+ Runs a Group Reconciliation using the definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code Supports pagination. # noqa: E501
2025
+ This method makes a synchronous HTTP request by default. To make an
2026
+ asynchronous HTTP request, please pass async_req=True
2027
+
2028
+ >>> thread = api.run_reconciliation_with_http_info(scope, code, group_reconciliation_run_request, async_req=True)
2029
+ >>> result = thread.get()
2030
+
2031
+ :param scope: The scope of the group reconciliation definition to use for the reconciliation. (required)
2032
+ :type scope: str
2033
+ :param code: The code of the group reconciliation definition to use for the reconciliation. (required)
2034
+ :type code: str
2035
+ :param group_reconciliation_run_request:
2036
+ :type group_reconciliation_run_request: GroupReconciliationRunRequest
2037
+ :param async_req: Whether to execute the request asynchronously.
2038
+ :type async_req: bool, optional
2039
+ :param _preload_content: if False, the ApiResponse.data will
2040
+ be set to none and raw_data will store the
2041
+ HTTP response body without reading/decoding.
2042
+ Default is True.
2043
+ :type _preload_content: bool, optional
2044
+ :param _return_http_data_only: response data instead of ApiResponse
2045
+ object with status code, headers, etc
2046
+ :type _return_http_data_only: bool, optional
2047
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
2048
+ :param opts: Configuration options for this request
2049
+ :type opts: ConfigurationOptions, optional
2050
+ :param _request_auth: set to override the auth_settings for an a single
2051
+ request; this effectively ignores the authentication
2052
+ in the spec for a single request.
2053
+ :type _request_auth: dict, optional
2054
+ :type _content_type: string, optional: force content-type for the request
2055
+ :return: Returns the result object.
2056
+ If the method is called asynchronously,
2057
+ returns the request thread.
2058
+ :rtype: tuple(GroupReconciliationRunResponse, status_code(int), headers(HTTPHeaderDict))
2059
+ """
2060
+
2061
+ _params = locals()
2062
+
2063
+ _all_params = [
2064
+ 'scope',
2065
+ 'code',
2066
+ 'group_reconciliation_run_request'
2067
+ ]
2068
+ _all_params.extend(
2069
+ [
2070
+ 'async_req',
2071
+ '_return_http_data_only',
2072
+ '_preload_content',
2073
+ '_request_timeout',
2074
+ '_request_auth',
2075
+ '_content_type',
2076
+ '_headers',
2077
+ 'opts'
2078
+ ]
2079
+ )
2080
+
2081
+ # validate the arguments
2082
+ for _key, _val in _params['kwargs'].items():
2083
+ if _key not in _all_params:
2084
+ raise ApiTypeError(
2085
+ "Got an unexpected keyword argument '%s'"
2086
+ " to method run_reconciliation" % _key
2087
+ )
2088
+ _params[_key] = _val
2089
+ del _params['kwargs']
2090
+
2091
+ _collection_formats = {}
2092
+
2093
+ # process the path parameters
2094
+ _path_params = {}
2095
+ if _params['scope']:
2096
+ _path_params['scope'] = _params['scope']
2097
+
2098
+ if _params['code']:
2099
+ _path_params['code'] = _params['code']
2100
+
2101
+
2102
+ # process the query parameters
2103
+ _query_params = []
2104
+ # process the header parameters
2105
+ _header_params = dict(_params.get('_headers', {}))
2106
+ # process the form parameters
2107
+ _form_params = []
2108
+ _files = {}
2109
+ # process the body parameter
2110
+ _body_params = None
2111
+ if _params['group_reconciliation_run_request'] is not None:
2112
+ _body_params = _params['group_reconciliation_run_request']
2113
+
2114
+ # set the HTTP header `Accept`
2115
+ _header_params['Accept'] = self.api_client.select_header_accept(
2116
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2117
+
2118
+ # set the HTTP header `Content-Type`
2119
+ _content_types_list = _params.get('_content_type',
2120
+ self.api_client.select_header_content_type(
2121
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2122
+ if _content_types_list:
2123
+ _header_params['Content-Type'] = _content_types_list
2124
+
2125
+ # authentication setting
2126
+ _auth_settings = ['oauth2'] # noqa: E501
2127
+
2128
+ _response_types_map = {
2129
+ '200': "GroupReconciliationRunResponse",
2130
+ '400': "LusidValidationProblemDetails",
2131
+ }
2132
+
2133
+ return self.api_client.call_api(
2134
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}/$run', 'POST',
2135
+ _path_params,
2136
+ _query_params,
2137
+ _header_params,
2138
+ body=_body_params,
2139
+ post_params=_form_params,
2140
+ files=_files,
2141
+ response_types_map=_response_types_map,
2142
+ auth_settings=_auth_settings,
2143
+ async_req=_params.get('async_req'),
2144
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2145
+ _preload_content=_params.get('_preload_content', True),
2146
+ _request_timeout=_params.get('_request_timeout'),
2147
+ opts=_params.get('opts'),
2148
+ collection_formats=_collection_formats,
2149
+ _request_auth=_params.get('_request_auth'))
2150
+
1791
2151
  @overload
1792
2152
  async def update_comparison_ruleset(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the specified comparison ruleset.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the specified comparison ruleset. Together with the domain and scope this uniquely identifies the reconciliation comparison ruleset.")], update_group_reconciliation_comparison_ruleset_request : Annotated[Optional[UpdateGroupReconciliationComparisonRulesetRequest], Field(description="The request containing the updated details of the ruleset")] = None, **kwargs) -> GroupReconciliationComparisonRuleset: # noqa: E501
1793
2153
  ...
lusid/configuration.py CHANGED
@@ -445,7 +445,7 @@ class Configuration:
445
445
  return "Python SDK Debug Report:\n"\
446
446
  "OS: {env}\n"\
447
447
  "Python Version: {pyversion}\n"\
448
- "Version of the API: 0.11.6917\n"\
448
+ "Version of the API: 0.11.6945\n"\
449
449
  "SDK Package Version: {package_version}".\
450
450
  format(env=sys.platform, pyversion=sys.version, package_version=package_version)
451
451
 
lusid/models/__init__.py CHANGED
@@ -78,6 +78,8 @@ from lusid.models.barrier import Barrier
78
78
  from lusid.models.basket import Basket
79
79
  from lusid.models.basket_identifier import BasketIdentifier
80
80
  from lusid.models.batch_adjust_holdings_response import BatchAdjustHoldingsResponse
81
+ from lusid.models.batch_update_user_review_for_comparison_result_request import BatchUpdateUserReviewForComparisonResultRequest
82
+ from lusid.models.batch_update_user_review_for_comparison_result_response import BatchUpdateUserReviewForComparisonResultResponse
81
83
  from lusid.models.batch_upsert_dates_for_calendar_response import BatchUpsertDatesForCalendarResponse
82
84
  from lusid.models.batch_upsert_instrument_properties_response import BatchUpsertInstrumentPropertiesResponse
83
85
  from lusid.models.batch_upsert_portfolio_access_metadata_request import BatchUpsertPortfolioAccessMetadataRequest
@@ -447,10 +449,19 @@ from lusid.models.group_reconciliation_definition_currencies import GroupReconci
447
449
  from lusid.models.group_reconciliation_definition_portfolio_entity_ids import GroupReconciliationDefinitionPortfolioEntityIds
448
450
  from lusid.models.group_reconciliation_definition_recipe_ids import GroupReconciliationDefinitionRecipeIds
449
451
  from lusid.models.group_reconciliation_instance_id import GroupReconciliationInstanceId
452
+ from lusid.models.group_reconciliation_result_statuses import GroupReconciliationResultStatuses
453
+ from lusid.models.group_reconciliation_result_types import GroupReconciliationResultTypes
454
+ from lusid.models.group_reconciliation_review_statuses import GroupReconciliationReviewStatuses
455
+ from lusid.models.group_reconciliation_run_details import GroupReconciliationRunDetails
456
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
457
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
458
+ from lusid.models.group_reconciliation_summary import GroupReconciliationSummary
450
459
  from lusid.models.group_reconciliation_user_review import GroupReconciliationUserReview
460
+ from lusid.models.group_reconciliation_user_review_add import GroupReconciliationUserReviewAdd
451
461
  from lusid.models.group_reconciliation_user_review_break_code import GroupReconciliationUserReviewBreakCode
452
462
  from lusid.models.group_reconciliation_user_review_comment import GroupReconciliationUserReviewComment
453
463
  from lusid.models.group_reconciliation_user_review_match_key import GroupReconciliationUserReviewMatchKey
464
+ from lusid.models.group_reconciliation_user_review_remove import GroupReconciliationUserReviewRemove
454
465
  from lusid.models.grouped_result_of_address_key import GroupedResultOfAddressKey
455
466
  from lusid.models.holding_adjustment import HoldingAdjustment
456
467
  from lusid.models.holding_adjustment_with_date import HoldingAdjustmentWithDate
@@ -509,6 +520,7 @@ from lusid.models.interest_rate_swap import InterestRateSwap
509
520
  from lusid.models.interest_rate_swaption import InterestRateSwaption
510
521
  from lusid.models.intermediate_compliance_step import IntermediateComplianceStep
511
522
  from lusid.models.intermediate_compliance_step_request import IntermediateComplianceStepRequest
523
+ from lusid.models.intermediate_securities_distribution_event import IntermediateSecuritiesDistributionEvent
512
524
  from lusid.models.ir_vol_cube_data import IrVolCubeData
513
525
  from lusid.models.ir_vol_dependency import IrVolDependency
514
526
  from lusid.models.is_business_day_response import IsBusinessDayResponse
@@ -580,6 +592,7 @@ from lusid.models.operation_type import OperationType
580
592
  from lusid.models.operator import Operator
581
593
  from lusid.models.option_entry import OptionEntry
582
594
  from lusid.models.option_exercise_election import OptionExerciseElection
595
+ from lusid.models.option_exercise_physical_event import OptionExercisePhysicalEvent
583
596
  from lusid.models.optionality_schedule import OptionalitySchedule
584
597
  from lusid.models.order import Order
585
598
  from lusid.models.order_by_spec import OrderBySpec
@@ -754,6 +767,7 @@ from lusid.models.property_type import PropertyType
754
767
  from lusid.models.property_value import PropertyValue
755
768
  from lusid.models.property_value_equals import PropertyValueEquals
756
769
  from lusid.models.property_value_in import PropertyValueIn
770
+ from lusid.models.protection_payout_cash_flow_event import ProtectionPayoutCashFlowEvent
757
771
  from lusid.models.query_applicable_instrument_events_request import QueryApplicableInstrumentEventsRequest
758
772
  from lusid.models.query_bucketed_cash_flows_request import QueryBucketedCashFlowsRequest
759
773
  from lusid.models.query_cash_flows_request import QueryCashFlowsRequest
@@ -1199,6 +1213,8 @@ __all__ = [
1199
1213
  "Basket",
1200
1214
  "BasketIdentifier",
1201
1215
  "BatchAdjustHoldingsResponse",
1216
+ "BatchUpdateUserReviewForComparisonResultRequest",
1217
+ "BatchUpdateUserReviewForComparisonResultResponse",
1202
1218
  "BatchUpsertDatesForCalendarResponse",
1203
1219
  "BatchUpsertInstrumentPropertiesResponse",
1204
1220
  "BatchUpsertPortfolioAccessMetadataRequest",
@@ -1568,10 +1584,19 @@ __all__ = [
1568
1584
  "GroupReconciliationDefinitionPortfolioEntityIds",
1569
1585
  "GroupReconciliationDefinitionRecipeIds",
1570
1586
  "GroupReconciliationInstanceId",
1587
+ "GroupReconciliationResultStatuses",
1588
+ "GroupReconciliationResultTypes",
1589
+ "GroupReconciliationReviewStatuses",
1590
+ "GroupReconciliationRunDetails",
1591
+ "GroupReconciliationRunRequest",
1592
+ "GroupReconciliationRunResponse",
1593
+ "GroupReconciliationSummary",
1571
1594
  "GroupReconciliationUserReview",
1595
+ "GroupReconciliationUserReviewAdd",
1572
1596
  "GroupReconciliationUserReviewBreakCode",
1573
1597
  "GroupReconciliationUserReviewComment",
1574
1598
  "GroupReconciliationUserReviewMatchKey",
1599
+ "GroupReconciliationUserReviewRemove",
1575
1600
  "GroupedResultOfAddressKey",
1576
1601
  "HoldingAdjustment",
1577
1602
  "HoldingAdjustmentWithDate",
@@ -1630,6 +1655,7 @@ __all__ = [
1630
1655
  "InterestRateSwaption",
1631
1656
  "IntermediateComplianceStep",
1632
1657
  "IntermediateComplianceStepRequest",
1658
+ "IntermediateSecuritiesDistributionEvent",
1633
1659
  "IrVolCubeData",
1634
1660
  "IrVolDependency",
1635
1661
  "IsBusinessDayResponse",
@@ -1701,6 +1727,7 @@ __all__ = [
1701
1727
  "Operator",
1702
1728
  "OptionEntry",
1703
1729
  "OptionExerciseElection",
1730
+ "OptionExercisePhysicalEvent",
1704
1731
  "OptionalitySchedule",
1705
1732
  "Order",
1706
1733
  "OrderBySpec",
@@ -1875,6 +1902,7 @@ __all__ = [
1875
1902
  "PropertyValue",
1876
1903
  "PropertyValueEquals",
1877
1904
  "PropertyValueIn",
1905
+ "ProtectionPayoutCashFlowEvent",
1878
1906
  "QueryApplicableInstrumentEventsRequest",
1879
1907
  "QueryBucketedCashFlowsRequest",
1880
1908
  "QueryCashFlowsRequest",
@@ -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, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent")
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, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, ProtectionPayoutCashFlowEvent")
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', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent'):
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', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent')")
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', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'ProtectionPayoutCashFlowEvent'):
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', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'ProtectionPayoutCashFlowEvent')")
43
43
  return value
44
44
 
45
45
  class Config: