lusid-sdk 2.1.479__py3-none-any.whl → 2.1.492__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 (62) hide show
  1. lusid/__init__.py +18 -0
  2. lusid/api/group_reconciliations_api.py +176 -0
  3. lusid/api/transaction_portfolios_api.py +200 -0
  4. lusid/configuration.py +1 -1
  5. lusid/models/__init__.py +18 -0
  6. lusid/models/accumulation_event.py +3 -3
  7. lusid/models/amortisation_event.py +3 -3
  8. lusid/models/bond_coupon_event.py +3 -3
  9. lusid/models/bond_default_event.py +3 -3
  10. lusid/models/bond_principal_event.py +3 -3
  11. lusid/models/bonus_issue_event.py +3 -3
  12. lusid/models/call_on_intermediate_securities_event.py +3 -3
  13. lusid/models/capital_distribution_event.py +3 -3
  14. lusid/models/cash_dividend_event.py +3 -3
  15. lusid/models/cash_flow_event.py +3 -3
  16. lusid/models/cds_credit_event.py +3 -3
  17. lusid/models/cdx_credit_event.py +3 -3
  18. lusid/models/close_event.py +3 -3
  19. lusid/models/credit_premium_cash_flow_event.py +3 -3
  20. lusid/models/dividend_option_event.py +3 -3
  21. lusid/models/dividend_reinvestment_event.py +3 -3
  22. lusid/models/exercise_event.py +3 -3
  23. lusid/models/expiry_event.py +3 -3
  24. lusid/models/future_expiry_event.py +3 -3
  25. lusid/models/fx_forward_settlement_event.py +3 -3
  26. lusid/models/group_reconciliation_result_statuses.py +89 -0
  27. lusid/models/group_reconciliation_result_types.py +96 -0
  28. lusid/models/group_reconciliation_review_statuses.py +96 -0
  29. lusid/models/group_reconciliation_run_details.py +76 -0
  30. lusid/models/group_reconciliation_run_request.py +75 -0
  31. lusid/models/group_reconciliation_run_response.py +77 -0
  32. lusid/models/group_reconciliation_summary.py +121 -0
  33. lusid/models/informational_error_event.py +3 -3
  34. lusid/models/informational_event.py +3 -3
  35. lusid/models/instrument_event.py +6 -5
  36. lusid/models/instrument_event_type.py +1 -0
  37. lusid/models/intermediate_securities_distribution_event.py +140 -0
  38. lusid/models/maturity_event.py +3 -3
  39. lusid/models/mbs_coupon_event.py +3 -3
  40. lusid/models/mbs_interest_deferral_event.py +3 -3
  41. lusid/models/mbs_interest_shortfall_event.py +3 -3
  42. lusid/models/mbs_principal_event.py +3 -3
  43. lusid/models/mbs_principal_write_off_event.py +3 -3
  44. lusid/models/merger_event.py +3 -3
  45. lusid/models/new_instrument.py +1 -1
  46. lusid/models/open_event.py +3 -3
  47. lusid/models/raw_vendor_event.py +3 -3
  48. lusid/models/reset_event.py +3 -3
  49. lusid/models/resource_list_of_output_transaction.py +113 -0
  50. lusid/models/reverse_stock_split_event.py +3 -3
  51. lusid/models/scrip_dividend_event.py +3 -3
  52. lusid/models/spin_off_event.py +3 -3
  53. lusid/models/stock_dividend_event.py +3 -3
  54. lusid/models/stock_split_event.py +3 -3
  55. lusid/models/swap_cash_flow_event.py +3 -3
  56. lusid/models/swap_principal_event.py +3 -3
  57. lusid/models/tender_event.py +3 -3
  58. lusid/models/transition_event.py +3 -3
  59. lusid/models/trigger_event.py +3 -3
  60. {lusid_sdk-2.1.479.dist-info → lusid_sdk-2.1.492.dist-info}/METADATA +12 -1
  61. {lusid_sdk-2.1.479.dist-info → lusid_sdk-2.1.492.dist-info}/RECORD +62 -53
  62. {lusid_sdk-2.1.479.dist-info → lusid_sdk-2.1.492.dist-info}/WHEEL +0 -0
lusid/__init__.py CHANGED
@@ -528,6 +528,13 @@ from lusid.models.group_reconciliation_definition_currencies import GroupReconci
528
528
  from lusid.models.group_reconciliation_definition_portfolio_entity_ids import GroupReconciliationDefinitionPortfolioEntityIds
529
529
  from lusid.models.group_reconciliation_definition_recipe_ids import GroupReconciliationDefinitionRecipeIds
530
530
  from lusid.models.group_reconciliation_instance_id import GroupReconciliationInstanceId
531
+ from lusid.models.group_reconciliation_result_statuses import GroupReconciliationResultStatuses
532
+ from lusid.models.group_reconciliation_result_types import GroupReconciliationResultTypes
533
+ from lusid.models.group_reconciliation_review_statuses import GroupReconciliationReviewStatuses
534
+ from lusid.models.group_reconciliation_run_details import GroupReconciliationRunDetails
535
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
536
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
537
+ from lusid.models.group_reconciliation_summary import GroupReconciliationSummary
531
538
  from lusid.models.group_reconciliation_user_review import GroupReconciliationUserReview
532
539
  from lusid.models.group_reconciliation_user_review_break_code import GroupReconciliationUserReviewBreakCode
533
540
  from lusid.models.group_reconciliation_user_review_comment import GroupReconciliationUserReviewComment
@@ -590,6 +597,7 @@ from lusid.models.interest_rate_swap import InterestRateSwap
590
597
  from lusid.models.interest_rate_swaption import InterestRateSwaption
591
598
  from lusid.models.intermediate_compliance_step import IntermediateComplianceStep
592
599
  from lusid.models.intermediate_compliance_step_request import IntermediateComplianceStepRequest
600
+ from lusid.models.intermediate_securities_distribution_event import IntermediateSecuritiesDistributionEvent
593
601
  from lusid.models.ir_vol_cube_data import IrVolCubeData
594
602
  from lusid.models.ir_vol_dependency import IrVolDependency
595
603
  from lusid.models.is_business_day_response import IsBusinessDayResponse
@@ -932,6 +940,7 @@ from lusid.models.resource_list_of_mapping import ResourceListOfMapping
932
940
  from lusid.models.resource_list_of_moved_order_to_different_block_response import ResourceListOfMovedOrderToDifferentBlockResponse
933
941
  from lusid.models.resource_list_of_order import ResourceListOfOrder
934
942
  from lusid.models.resource_list_of_order_instruction import ResourceListOfOrderInstruction
943
+ from lusid.models.resource_list_of_output_transaction import ResourceListOfOutputTransaction
935
944
  from lusid.models.resource_list_of_package import ResourceListOfPackage
936
945
  from lusid.models.resource_list_of_participation import ResourceListOfParticipation
937
946
  from lusid.models.resource_list_of_performance_return import ResourceListOfPerformanceReturn
@@ -1728,6 +1737,13 @@ __all__ = [
1728
1737
  "GroupReconciliationDefinitionPortfolioEntityIds",
1729
1738
  "GroupReconciliationDefinitionRecipeIds",
1730
1739
  "GroupReconciliationInstanceId",
1740
+ "GroupReconciliationResultStatuses",
1741
+ "GroupReconciliationResultTypes",
1742
+ "GroupReconciliationReviewStatuses",
1743
+ "GroupReconciliationRunDetails",
1744
+ "GroupReconciliationRunRequest",
1745
+ "GroupReconciliationRunResponse",
1746
+ "GroupReconciliationSummary",
1731
1747
  "GroupReconciliationUserReview",
1732
1748
  "GroupReconciliationUserReviewBreakCode",
1733
1749
  "GroupReconciliationUserReviewComment",
@@ -1790,6 +1806,7 @@ __all__ = [
1790
1806
  "InterestRateSwaption",
1791
1807
  "IntermediateComplianceStep",
1792
1808
  "IntermediateComplianceStepRequest",
1809
+ "IntermediateSecuritiesDistributionEvent",
1793
1810
  "IrVolCubeData",
1794
1811
  "IrVolDependency",
1795
1812
  "IsBusinessDayResponse",
@@ -2132,6 +2149,7 @@ __all__ = [
2132
2149
  "ResourceListOfMovedOrderToDifferentBlockResponse",
2133
2150
  "ResourceListOfOrder",
2134
2151
  "ResourceListOfOrderInstruction",
2152
+ "ResourceListOfOutputTransaction",
2135
2153
  "ResourceListOfPackage",
2136
2154
  "ResourceListOfParticipation",
2137
2155
  "ResourceListOfPerformanceReturn",
@@ -32,6 +32,8 @@ from lusid.models.deleted_entity_response import DeletedEntityResponse
32
32
  from lusid.models.group_reconciliation_comparison_result import GroupReconciliationComparisonResult
33
33
  from lusid.models.group_reconciliation_comparison_ruleset import GroupReconciliationComparisonRuleset
34
34
  from lusid.models.group_reconciliation_definition import GroupReconciliationDefinition
35
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
36
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
35
37
  from lusid.models.paged_resource_list_of_group_reconciliation_comparison_result import PagedResourceListOfGroupReconciliationComparisonResult
36
38
  from lusid.models.paged_resource_list_of_group_reconciliation_comparison_ruleset import PagedResourceListOfGroupReconciliationComparisonRuleset
37
39
  from lusid.models.paged_resource_list_of_group_reconciliation_definition import PagedResourceListOfGroupReconciliationDefinition
@@ -1788,6 +1790,180 @@ class GroupReconciliationsApi:
1788
1790
  collection_formats=_collection_formats,
1789
1791
  _request_auth=_params.get('_request_auth'))
1790
1792
 
1793
+ @overload
1794
+ 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
1795
+ ...
1796
+
1797
+ @overload
1798
+ 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
1799
+ ...
1800
+
1801
+ @validate_arguments
1802
+ 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
1803
+ """[EXPERIMENTAL] RunReconciliation: Runs a Group Reconciliation # noqa: E501
1804
+
1805
+ Runs a Group Reconciliation using the definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code Supports pagination. # noqa: E501
1806
+ This method makes a synchronous HTTP request by default. To make an
1807
+ asynchronous HTTP request, please pass async_req=True
1808
+
1809
+ >>> thread = api.run_reconciliation(scope, code, group_reconciliation_run_request, async_req=True)
1810
+ >>> result = thread.get()
1811
+
1812
+ :param scope: The scope of the group reconciliation definition to use for the reconciliation. (required)
1813
+ :type scope: str
1814
+ :param code: The code of the group reconciliation definition to use for the reconciliation. (required)
1815
+ :type code: str
1816
+ :param group_reconciliation_run_request:
1817
+ :type group_reconciliation_run_request: GroupReconciliationRunRequest
1818
+ :param async_req: Whether to execute the request asynchronously.
1819
+ :type async_req: bool, optional
1820
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1821
+ :param opts: Configuration options for this request
1822
+ :type opts: ConfigurationOptions, optional
1823
+ :return: Returns the result object.
1824
+ If the method is called asynchronously,
1825
+ returns the request thread.
1826
+ :rtype: GroupReconciliationRunResponse
1827
+ """
1828
+ kwargs['_return_http_data_only'] = True
1829
+ if '_preload_content' in kwargs:
1830
+ 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
1831
+ raise ValueError(message)
1832
+ if async_req is not None:
1833
+ kwargs['async_req'] = async_req
1834
+ return self.run_reconciliation_with_http_info(scope, code, group_reconciliation_run_request, **kwargs) # noqa: E501
1835
+
1836
+ @validate_arguments
1837
+ 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
1838
+ """[EXPERIMENTAL] RunReconciliation: Runs a Group Reconciliation # noqa: E501
1839
+
1840
+ Runs a Group Reconciliation using the definition specified by the Finbourne.Identifiers.Abstractions.Scope and Finbourne.Identifiers.Abstractions.Code Supports pagination. # noqa: E501
1841
+ This method makes a synchronous HTTP request by default. To make an
1842
+ asynchronous HTTP request, please pass async_req=True
1843
+
1844
+ >>> thread = api.run_reconciliation_with_http_info(scope, code, group_reconciliation_run_request, async_req=True)
1845
+ >>> result = thread.get()
1846
+
1847
+ :param scope: The scope of the group reconciliation definition to use for the reconciliation. (required)
1848
+ :type scope: str
1849
+ :param code: The code of the group reconciliation definition to use for the reconciliation. (required)
1850
+ :type code: str
1851
+ :param group_reconciliation_run_request:
1852
+ :type group_reconciliation_run_request: GroupReconciliationRunRequest
1853
+ :param async_req: Whether to execute the request asynchronously.
1854
+ :type async_req: bool, optional
1855
+ :param _preload_content: if False, the ApiResponse.data will
1856
+ be set to none and raw_data will store the
1857
+ HTTP response body without reading/decoding.
1858
+ Default is True.
1859
+ :type _preload_content: bool, optional
1860
+ :param _return_http_data_only: response data instead of ApiResponse
1861
+ object with status code, headers, etc
1862
+ :type _return_http_data_only: bool, optional
1863
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1864
+ :param opts: Configuration options for this request
1865
+ :type opts: ConfigurationOptions, optional
1866
+ :param _request_auth: set to override the auth_settings for an a single
1867
+ request; this effectively ignores the authentication
1868
+ in the spec for a single request.
1869
+ :type _request_auth: dict, optional
1870
+ :type _content_type: string, optional: force content-type for the request
1871
+ :return: Returns the result object.
1872
+ If the method is called asynchronously,
1873
+ returns the request thread.
1874
+ :rtype: tuple(GroupReconciliationRunResponse, status_code(int), headers(HTTPHeaderDict))
1875
+ """
1876
+
1877
+ _params = locals()
1878
+
1879
+ _all_params = [
1880
+ 'scope',
1881
+ 'code',
1882
+ 'group_reconciliation_run_request'
1883
+ ]
1884
+ _all_params.extend(
1885
+ [
1886
+ 'async_req',
1887
+ '_return_http_data_only',
1888
+ '_preload_content',
1889
+ '_request_timeout',
1890
+ '_request_auth',
1891
+ '_content_type',
1892
+ '_headers',
1893
+ 'opts'
1894
+ ]
1895
+ )
1896
+
1897
+ # validate the arguments
1898
+ for _key, _val in _params['kwargs'].items():
1899
+ if _key not in _all_params:
1900
+ raise ApiTypeError(
1901
+ "Got an unexpected keyword argument '%s'"
1902
+ " to method run_reconciliation" % _key
1903
+ )
1904
+ _params[_key] = _val
1905
+ del _params['kwargs']
1906
+
1907
+ _collection_formats = {}
1908
+
1909
+ # process the path parameters
1910
+ _path_params = {}
1911
+ if _params['scope']:
1912
+ _path_params['scope'] = _params['scope']
1913
+
1914
+ if _params['code']:
1915
+ _path_params['code'] = _params['code']
1916
+
1917
+
1918
+ # process the query parameters
1919
+ _query_params = []
1920
+ # process the header parameters
1921
+ _header_params = dict(_params.get('_headers', {}))
1922
+ # process the form parameters
1923
+ _form_params = []
1924
+ _files = {}
1925
+ # process the body parameter
1926
+ _body_params = None
1927
+ if _params['group_reconciliation_run_request'] is not None:
1928
+ _body_params = _params['group_reconciliation_run_request']
1929
+
1930
+ # set the HTTP header `Accept`
1931
+ _header_params['Accept'] = self.api_client.select_header_accept(
1932
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
1933
+
1934
+ # set the HTTP header `Content-Type`
1935
+ _content_types_list = _params.get('_content_type',
1936
+ self.api_client.select_header_content_type(
1937
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
1938
+ if _content_types_list:
1939
+ _header_params['Content-Type'] = _content_types_list
1940
+
1941
+ # authentication setting
1942
+ _auth_settings = ['oauth2'] # noqa: E501
1943
+
1944
+ _response_types_map = {
1945
+ '200': "GroupReconciliationRunResponse",
1946
+ '400': "LusidValidationProblemDetails",
1947
+ }
1948
+
1949
+ return self.api_client.call_api(
1950
+ '/api/reconciliations/groupreconciliationdefinitions/{scope}/{code}/$run', 'POST',
1951
+ _path_params,
1952
+ _query_params,
1953
+ _header_params,
1954
+ body=_body_params,
1955
+ post_params=_form_params,
1956
+ files=_files,
1957
+ response_types_map=_response_types_map,
1958
+ auth_settings=_auth_settings,
1959
+ async_req=_params.get('async_req'),
1960
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
1961
+ _preload_content=_params.get('_preload_content', True),
1962
+ _request_timeout=_params.get('_request_timeout'),
1963
+ opts=_params.get('opts'),
1964
+ collection_formats=_collection_formats,
1965
+ _request_auth=_params.get('_request_auth'))
1966
+
1791
1967
  @overload
1792
1968
  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
1969
  ...
@@ -55,6 +55,7 @@ from lusid.models.resource_id import ResourceId
55
55
  from lusid.models.resource_list_of_change_history import ResourceListOfChangeHistory
56
56
  from lusid.models.resource_list_of_holdings_adjustment_header import ResourceListOfHoldingsAdjustmentHeader
57
57
  from lusid.models.resource_list_of_instrument_cash_flow import ResourceListOfInstrumentCashFlow
58
+ from lusid.models.resource_list_of_output_transaction import ResourceListOfOutputTransaction
58
59
  from lusid.models.resource_list_of_portfolio_cash_flow import ResourceListOfPortfolioCashFlow
59
60
  from lusid.models.resource_list_of_portfolio_cash_ladder import ResourceListOfPortfolioCashLadder
60
61
  from lusid.models.resource_list_of_transaction import ResourceListOfTransaction
@@ -6062,6 +6063,205 @@ class TransactionPortfoliosApi:
6062
6063
  collection_formats=_collection_formats,
6063
6064
  _request_auth=_params.get('_request_auth'))
6064
6065
 
6066
+ @overload
6067
+ async def preview_transaction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], transaction_request : Annotated[TransactionRequest, Field(..., description="The transaction to be previewed.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\" or \"Transaction\" domain to decorate onto the transactions. These take the format {domain}/{scope}/{code} e.g. \"Instrument/system/Name\" or \"Transaction/strategy/quantsignal\".")] = None, show_cancelled_transactions : Annotated[Optional[StrictBool], Field(description="Option to specify whether to include previous versions of an amended transaction in the response. Defaults to False if not specified.")] = None, preserve_properties : Annotated[Optional[StrictBool], Field(description="If the preview transaction is an amendment to an existing transaction, then setting this to true will carry forward any unmodified properties from the earlier version.")] = None, **kwargs) -> ResourceListOfOutputTransaction: # noqa: E501
6068
+ ...
6069
+
6070
+ @overload
6071
+ def preview_transaction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], transaction_request : Annotated[TransactionRequest, Field(..., description="The transaction to be previewed.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\" or \"Transaction\" domain to decorate onto the transactions. These take the format {domain}/{scope}/{code} e.g. \"Instrument/system/Name\" or \"Transaction/strategy/quantsignal\".")] = None, show_cancelled_transactions : Annotated[Optional[StrictBool], Field(description="Option to specify whether to include previous versions of an amended transaction in the response. Defaults to False if not specified.")] = None, preserve_properties : Annotated[Optional[StrictBool], Field(description="If the preview transaction is an amendment to an existing transaction, then setting this to true will carry forward any unmodified properties from the earlier version.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfOutputTransaction: # noqa: E501
6072
+ ...
6073
+
6074
+ @validate_arguments
6075
+ def preview_transaction(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], transaction_request : Annotated[TransactionRequest, Field(..., description="The transaction to be previewed.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\" or \"Transaction\" domain to decorate onto the transactions. These take the format {domain}/{scope}/{code} e.g. \"Instrument/system/Name\" or \"Transaction/strategy/quantsignal\".")] = None, show_cancelled_transactions : Annotated[Optional[StrictBool], Field(description="Option to specify whether to include previous versions of an amended transaction in the response. Defaults to False if not specified.")] = None, preserve_properties : Annotated[Optional[StrictBool], Field(description="If the preview transaction is an amendment to an existing transaction, then setting this to true will carry forward any unmodified properties from the earlier version.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfOutputTransaction, Awaitable[ResourceListOfOutputTransaction]]: # noqa: E501
6076
+ """[EARLY ACCESS] PreviewTransaction: Preview a transaction # noqa: E501
6077
+
6078
+ Returns the output-transaction(s) - e.g. as returned by BuildTransactions that would come out of LUSID if the provided TransactionRequest was booked. # noqa: E501
6079
+ This method makes a synchronous HTTP request by default. To make an
6080
+ asynchronous HTTP request, please pass async_req=True
6081
+
6082
+ >>> thread = api.preview_transaction(scope, code, transaction_request, property_keys, show_cancelled_transactions, preserve_properties, async_req=True)
6083
+ >>> result = thread.get()
6084
+
6085
+ :param scope: The scope of the transaction portfolio. (required)
6086
+ :type scope: str
6087
+ :param code: The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio. (required)
6088
+ :type code: str
6089
+ :param transaction_request: The transaction to be previewed. (required)
6090
+ :type transaction_request: TransactionRequest
6091
+ :param property_keys: A list of property keys from the \"Instrument\" or \"Transaction\" domain to decorate onto the transactions. These take the format {domain}/{scope}/{code} e.g. \"Instrument/system/Name\" or \"Transaction/strategy/quantsignal\".
6092
+ :type property_keys: List[str]
6093
+ :param show_cancelled_transactions: Option to specify whether to include previous versions of an amended transaction in the response. Defaults to False if not specified.
6094
+ :type show_cancelled_transactions: bool
6095
+ :param preserve_properties: If the preview transaction is an amendment to an existing transaction, then setting this to true will carry forward any unmodified properties from the earlier version.
6096
+ :type preserve_properties: bool
6097
+ :param async_req: Whether to execute the request asynchronously.
6098
+ :type async_req: bool, optional
6099
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
6100
+ :param opts: Configuration options for this request
6101
+ :type opts: ConfigurationOptions, optional
6102
+ :return: Returns the result object.
6103
+ If the method is called asynchronously,
6104
+ returns the request thread.
6105
+ :rtype: ResourceListOfOutputTransaction
6106
+ """
6107
+ kwargs['_return_http_data_only'] = True
6108
+ if '_preload_content' in kwargs:
6109
+ message = "Error! Please call the preview_transaction_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
6110
+ raise ValueError(message)
6111
+ if async_req is not None:
6112
+ kwargs['async_req'] = async_req
6113
+ return self.preview_transaction_with_http_info(scope, code, transaction_request, property_keys, show_cancelled_transactions, preserve_properties, **kwargs) # noqa: E501
6114
+
6115
+ @validate_arguments
6116
+ def preview_transaction_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], transaction_request : Annotated[TransactionRequest, Field(..., description="The transaction to be previewed.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the \"Instrument\" or \"Transaction\" domain to decorate onto the transactions. These take the format {domain}/{scope}/{code} e.g. \"Instrument/system/Name\" or \"Transaction/strategy/quantsignal\".")] = None, show_cancelled_transactions : Annotated[Optional[StrictBool], Field(description="Option to specify whether to include previous versions of an amended transaction in the response. Defaults to False if not specified.")] = None, preserve_properties : Annotated[Optional[StrictBool], Field(description="If the preview transaction is an amendment to an existing transaction, then setting this to true will carry forward any unmodified properties from the earlier version.")] = None, **kwargs) -> ApiResponse: # noqa: E501
6117
+ """[EARLY ACCESS] PreviewTransaction: Preview a transaction # noqa: E501
6118
+
6119
+ Returns the output-transaction(s) - e.g. as returned by BuildTransactions that would come out of LUSID if the provided TransactionRequest was booked. # noqa: E501
6120
+ This method makes a synchronous HTTP request by default. To make an
6121
+ asynchronous HTTP request, please pass async_req=True
6122
+
6123
+ >>> thread = api.preview_transaction_with_http_info(scope, code, transaction_request, property_keys, show_cancelled_transactions, preserve_properties, async_req=True)
6124
+ >>> result = thread.get()
6125
+
6126
+ :param scope: The scope of the transaction portfolio. (required)
6127
+ :type scope: str
6128
+ :param code: The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio. (required)
6129
+ :type code: str
6130
+ :param transaction_request: The transaction to be previewed. (required)
6131
+ :type transaction_request: TransactionRequest
6132
+ :param property_keys: A list of property keys from the \"Instrument\" or \"Transaction\" domain to decorate onto the transactions. These take the format {domain}/{scope}/{code} e.g. \"Instrument/system/Name\" or \"Transaction/strategy/quantsignal\".
6133
+ :type property_keys: List[str]
6134
+ :param show_cancelled_transactions: Option to specify whether to include previous versions of an amended transaction in the response. Defaults to False if not specified.
6135
+ :type show_cancelled_transactions: bool
6136
+ :param preserve_properties: If the preview transaction is an amendment to an existing transaction, then setting this to true will carry forward any unmodified properties from the earlier version.
6137
+ :type preserve_properties: bool
6138
+ :param async_req: Whether to execute the request asynchronously.
6139
+ :type async_req: bool, optional
6140
+ :param _preload_content: if False, the ApiResponse.data will
6141
+ be set to none and raw_data will store the
6142
+ HTTP response body without reading/decoding.
6143
+ Default is True.
6144
+ :type _preload_content: bool, optional
6145
+ :param _return_http_data_only: response data instead of ApiResponse
6146
+ object with status code, headers, etc
6147
+ :type _return_http_data_only: bool, optional
6148
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
6149
+ :param opts: Configuration options for this request
6150
+ :type opts: ConfigurationOptions, optional
6151
+ :param _request_auth: set to override the auth_settings for an a single
6152
+ request; this effectively ignores the authentication
6153
+ in the spec for a single request.
6154
+ :type _request_auth: dict, optional
6155
+ :type _content_type: string, optional: force content-type for the request
6156
+ :return: Returns the result object.
6157
+ If the method is called asynchronously,
6158
+ returns the request thread.
6159
+ :rtype: tuple(ResourceListOfOutputTransaction, status_code(int), headers(HTTPHeaderDict))
6160
+ """
6161
+
6162
+ _params = locals()
6163
+
6164
+ _all_params = [
6165
+ 'scope',
6166
+ 'code',
6167
+ 'transaction_request',
6168
+ 'property_keys',
6169
+ 'show_cancelled_transactions',
6170
+ 'preserve_properties'
6171
+ ]
6172
+ _all_params.extend(
6173
+ [
6174
+ 'async_req',
6175
+ '_return_http_data_only',
6176
+ '_preload_content',
6177
+ '_request_timeout',
6178
+ '_request_auth',
6179
+ '_content_type',
6180
+ '_headers',
6181
+ 'opts'
6182
+ ]
6183
+ )
6184
+
6185
+ # validate the arguments
6186
+ for _key, _val in _params['kwargs'].items():
6187
+ if _key not in _all_params:
6188
+ raise ApiTypeError(
6189
+ "Got an unexpected keyword argument '%s'"
6190
+ " to method preview_transaction" % _key
6191
+ )
6192
+ _params[_key] = _val
6193
+ del _params['kwargs']
6194
+
6195
+ _collection_formats = {}
6196
+
6197
+ # process the path parameters
6198
+ _path_params = {}
6199
+ if _params['scope']:
6200
+ _path_params['scope'] = _params['scope']
6201
+
6202
+ if _params['code']:
6203
+ _path_params['code'] = _params['code']
6204
+
6205
+
6206
+ # process the query parameters
6207
+ _query_params = []
6208
+ if _params.get('property_keys') is not None: # noqa: E501
6209
+ _query_params.append(('propertyKeys', _params['property_keys']))
6210
+ _collection_formats['propertyKeys'] = 'multi'
6211
+
6212
+ if _params.get('show_cancelled_transactions') is not None: # noqa: E501
6213
+ _query_params.append(('showCancelledTransactions', _params['show_cancelled_transactions']))
6214
+
6215
+ if _params.get('preserve_properties') is not None: # noqa: E501
6216
+ _query_params.append(('preserveProperties', _params['preserve_properties']))
6217
+
6218
+ # process the header parameters
6219
+ _header_params = dict(_params.get('_headers', {}))
6220
+ # process the form parameters
6221
+ _form_params = []
6222
+ _files = {}
6223
+ # process the body parameter
6224
+ _body_params = None
6225
+ if _params['transaction_request'] is not None:
6226
+ _body_params = _params['transaction_request']
6227
+
6228
+ # set the HTTP header `Accept`
6229
+ _header_params['Accept'] = self.api_client.select_header_accept(
6230
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
6231
+
6232
+ # set the HTTP header `Content-Type`
6233
+ _content_types_list = _params.get('_content_type',
6234
+ self.api_client.select_header_content_type(
6235
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
6236
+ if _content_types_list:
6237
+ _header_params['Content-Type'] = _content_types_list
6238
+
6239
+ # authentication setting
6240
+ _auth_settings = ['oauth2'] # noqa: E501
6241
+
6242
+ _response_types_map = {
6243
+ '200': "ResourceListOfOutputTransaction",
6244
+ '400': "LusidValidationProblemDetails",
6245
+ }
6246
+
6247
+ return self.api_client.call_api(
6248
+ '/api/transactionportfolios/{scope}/{code}/previewTransaction', 'POST',
6249
+ _path_params,
6250
+ _query_params,
6251
+ _header_params,
6252
+ body=_body_params,
6253
+ post_params=_form_params,
6254
+ files=_files,
6255
+ response_types_map=_response_types_map,
6256
+ auth_settings=_auth_settings,
6257
+ async_req=_params.get('async_req'),
6258
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
6259
+ _preload_content=_params.get('_preload_content', True),
6260
+ _request_timeout=_params.get('_request_timeout'),
6261
+ opts=_params.get('opts'),
6262
+ collection_formats=_collection_formats,
6263
+ _request_auth=_params.get('_request_auth'))
6264
+
6065
6265
  @overload
6066
6266
  async def resolve_instrument(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], instrument_identifier_type : Annotated[StrictStr, Field(..., description="The instrument identifier type.")], instrument_identifier_value : Annotated[StrictStr, Field(..., description="The value for the given instrument identifier.")], from_effective_at : Annotated[Optional[StrictStr], Field(description="The lower bound effective datetime or cut label (inclusive) from which to retrieve the data. There is no lower bound if this is not specified.")] = None, re_resolve : Annotated[Optional[StrictBool], Field(description="When set to true, instrument resolution will be attempted for all transactions and holdings for the given identifier and date range. When set to false (default behaviour), instrument resolution will only be attempted for those transactions and holdings that were previously unresolved.")] = None, request_body : Annotated[Optional[Dict[str, StrictStr]], Field(description="The dictionary with the instrument identifiers to be updated on the transaction and holdings.")] = None, **kwargs) -> UpsertPortfolioTransactionsResponse: # noqa: E501
6067
6267
  ...
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.6908\n"\
448
+ "Version of the API: 0.11.6921\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
@@ -447,6 +447,13 @@ from lusid.models.group_reconciliation_definition_currencies import GroupReconci
447
447
  from lusid.models.group_reconciliation_definition_portfolio_entity_ids import GroupReconciliationDefinitionPortfolioEntityIds
448
448
  from lusid.models.group_reconciliation_definition_recipe_ids import GroupReconciliationDefinitionRecipeIds
449
449
  from lusid.models.group_reconciliation_instance_id import GroupReconciliationInstanceId
450
+ from lusid.models.group_reconciliation_result_statuses import GroupReconciliationResultStatuses
451
+ from lusid.models.group_reconciliation_result_types import GroupReconciliationResultTypes
452
+ from lusid.models.group_reconciliation_review_statuses import GroupReconciliationReviewStatuses
453
+ from lusid.models.group_reconciliation_run_details import GroupReconciliationRunDetails
454
+ from lusid.models.group_reconciliation_run_request import GroupReconciliationRunRequest
455
+ from lusid.models.group_reconciliation_run_response import GroupReconciliationRunResponse
456
+ from lusid.models.group_reconciliation_summary import GroupReconciliationSummary
450
457
  from lusid.models.group_reconciliation_user_review import GroupReconciliationUserReview
451
458
  from lusid.models.group_reconciliation_user_review_break_code import GroupReconciliationUserReviewBreakCode
452
459
  from lusid.models.group_reconciliation_user_review_comment import GroupReconciliationUserReviewComment
@@ -509,6 +516,7 @@ from lusid.models.interest_rate_swap import InterestRateSwap
509
516
  from lusid.models.interest_rate_swaption import InterestRateSwaption
510
517
  from lusid.models.intermediate_compliance_step import IntermediateComplianceStep
511
518
  from lusid.models.intermediate_compliance_step_request import IntermediateComplianceStepRequest
519
+ from lusid.models.intermediate_securities_distribution_event import IntermediateSecuritiesDistributionEvent
512
520
  from lusid.models.ir_vol_cube_data import IrVolCubeData
513
521
  from lusid.models.ir_vol_dependency import IrVolDependency
514
522
  from lusid.models.is_business_day_response import IsBusinessDayResponse
@@ -851,6 +859,7 @@ from lusid.models.resource_list_of_mapping import ResourceListOfMapping
851
859
  from lusid.models.resource_list_of_moved_order_to_different_block_response import ResourceListOfMovedOrderToDifferentBlockResponse
852
860
  from lusid.models.resource_list_of_order import ResourceListOfOrder
853
861
  from lusid.models.resource_list_of_order_instruction import ResourceListOfOrderInstruction
862
+ from lusid.models.resource_list_of_output_transaction import ResourceListOfOutputTransaction
854
863
  from lusid.models.resource_list_of_package import ResourceListOfPackage
855
864
  from lusid.models.resource_list_of_participation import ResourceListOfParticipation
856
865
  from lusid.models.resource_list_of_performance_return import ResourceListOfPerformanceReturn
@@ -1567,6 +1576,13 @@ __all__ = [
1567
1576
  "GroupReconciliationDefinitionPortfolioEntityIds",
1568
1577
  "GroupReconciliationDefinitionRecipeIds",
1569
1578
  "GroupReconciliationInstanceId",
1579
+ "GroupReconciliationResultStatuses",
1580
+ "GroupReconciliationResultTypes",
1581
+ "GroupReconciliationReviewStatuses",
1582
+ "GroupReconciliationRunDetails",
1583
+ "GroupReconciliationRunRequest",
1584
+ "GroupReconciliationRunResponse",
1585
+ "GroupReconciliationSummary",
1570
1586
  "GroupReconciliationUserReview",
1571
1587
  "GroupReconciliationUserReviewBreakCode",
1572
1588
  "GroupReconciliationUserReviewComment",
@@ -1629,6 +1645,7 @@ __all__ = [
1629
1645
  "InterestRateSwaption",
1630
1646
  "IntermediateComplianceStep",
1631
1647
  "IntermediateComplianceStepRequest",
1648
+ "IntermediateSecuritiesDistributionEvent",
1632
1649
  "IrVolCubeData",
1633
1650
  "IrVolDependency",
1634
1651
  "IsBusinessDayResponse",
@@ -1971,6 +1988,7 @@ __all__ = [
1971
1988
  "ResourceListOfMovedOrderToDifferentBlockResponse",
1972
1989
  "ResourceListOfOrder",
1973
1990
  "ResourceListOfOrderInstruction",
1991
+ "ResourceListOfOutputTransaction",
1974
1992
  "ResourceListOfPackage",
1975
1993
  "ResourceListOfParticipation",
1976
1994
  "ResourceListOfPerformanceReturn",
@@ -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")
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'):
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')")
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, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent")
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, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent")
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', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent'):
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', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent')")
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', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent'):
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', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent')")
42
42
  return value
43
43
 
44
44
  class Config: