lusid-sdk 2.1.586__py3-none-any.whl → 2.1.588__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 (73) hide show
  1. lusid/__init__.py +6 -0
  2. lusid/api/allocations_api.py +30 -11
  3. lusid/api/funds_api.py +227 -0
  4. lusid/configuration.py +1 -1
  5. lusid/models/__init__.py +6 -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/cap_floor.py +13 -3
  14. lusid/models/capital_distribution_event.py +3 -3
  15. lusid/models/cash_dividend_event.py +3 -3
  16. lusid/models/cash_flow_event.py +3 -3
  17. lusid/models/cds_credit_event.py +3 -3
  18. lusid/models/cdx_credit_event.py +3 -3
  19. lusid/models/close_event.py +3 -3
  20. lusid/models/create_derived_property_definition_request.py +3 -3
  21. lusid/models/create_property_definition_request.py +3 -3
  22. lusid/models/credit_premium_cash_flow_event.py +3 -3
  23. lusid/models/dividend_option_event.py +3 -3
  24. lusid/models/dividend_reinvestment_event.py +3 -3
  25. lusid/models/early_redemption_election.py +73 -0
  26. lusid/models/early_redemption_event.py +124 -0
  27. lusid/models/exercise_event.py +3 -3
  28. lusid/models/expiry_event.py +3 -3
  29. lusid/models/future_expiry_event.py +3 -3
  30. lusid/models/fx_forward_settlement_event.py +3 -3
  31. lusid/models/informational_error_event.py +3 -3
  32. lusid/models/informational_event.py +3 -3
  33. lusid/models/instrument_event.py +6 -5
  34. lusid/models/instrument_event_type.py +1 -0
  35. lusid/models/intermediate_securities_distribution_event.py +3 -3
  36. lusid/models/maturity_event.py +3 -3
  37. lusid/models/mbs_coupon_event.py +3 -3
  38. lusid/models/mbs_interest_deferral_event.py +3 -3
  39. lusid/models/mbs_interest_shortfall_event.py +3 -3
  40. lusid/models/mbs_principal_event.py +3 -3
  41. lusid/models/mbs_principal_write_off_event.py +3 -3
  42. lusid/models/merger_event.py +3 -3
  43. lusid/models/movement_type.py +2 -0
  44. lusid/models/open_event.py +3 -3
  45. lusid/models/option_entry.py +10 -3
  46. lusid/models/option_exercise_cash_event.py +3 -3
  47. lusid/models/option_exercise_physical_event.py +3 -3
  48. lusid/models/output_transaction.py +8 -2
  49. lusid/models/property_definition.py +3 -3
  50. lusid/models/property_definition_search_result.py +3 -3
  51. lusid/models/property_domain.py +1 -0
  52. lusid/models/protection_payout_cash_flow_event.py +3 -3
  53. lusid/models/raw_vendor_event.py +3 -3
  54. lusid/models/reset_event.py +3 -3
  55. lusid/models/reverse_stock_split_event.py +3 -3
  56. lusid/models/scrip_dividend_event.py +3 -3
  57. lusid/models/spin_off_event.py +3 -3
  58. lusid/models/stock_dividend_event.py +3 -3
  59. lusid/models/stock_split_event.py +3 -3
  60. lusid/models/swap_cash_flow_event.py +3 -3
  61. lusid/models/swap_principal_event.py +3 -3
  62. lusid/models/tender_event.py +3 -3
  63. lusid/models/term_deposit_interest_event.py +3 -3
  64. lusid/models/term_deposit_principal_event.py +3 -3
  65. lusid/models/transaction_configuration_movement_data.py +3 -3
  66. lusid/models/transaction_configuration_movement_data_request.py +3 -3
  67. lusid/models/transaction_type_details.py +5 -20
  68. lusid/models/transition_event.py +3 -3
  69. lusid/models/trigger_event.py +3 -3
  70. lusid/models/valuation_point_resource_list_of_journal_entry_line.py +125 -0
  71. {lusid_sdk-2.1.586.dist-info → lusid_sdk-2.1.588.dist-info}/METADATA +5 -1
  72. {lusid_sdk-2.1.586.dist-info → lusid_sdk-2.1.588.dist-info}/RECORD +73 -70
  73. {lusid_sdk-2.1.586.dist-info → lusid_sdk-2.1.588.dist-info}/WHEEL +0 -0
lusid/__init__.py CHANGED
@@ -394,6 +394,8 @@ from lusid.models.discounting_dependency import DiscountingDependency
394
394
  from lusid.models.discounting_method import DiscountingMethod
395
395
  from lusid.models.dividend_option_event import DividendOptionEvent
396
396
  from lusid.models.dividend_reinvestment_event import DividendReinvestmentEvent
397
+ from lusid.models.early_redemption_election import EarlyRedemptionElection
398
+ from lusid.models.early_redemption_event import EarlyRedemptionEvent
397
399
  from lusid.models.economic_dependency import EconomicDependency
398
400
  from lusid.models.economic_dependency_type import EconomicDependencyType
399
401
  from lusid.models.economic_dependency_with_complex_market_data import EconomicDependencyWithComplexMarketData
@@ -1202,6 +1204,7 @@ from lusid.models.valuation_point_data_query_parameters import ValuationPointDat
1202
1204
  from lusid.models.valuation_point_data_request import ValuationPointDataRequest
1203
1205
  from lusid.models.valuation_point_data_response import ValuationPointDataResponse
1204
1206
  from lusid.models.valuation_point_overview import ValuationPointOverview
1207
+ from lusid.models.valuation_point_resource_list_of_journal_entry_line import ValuationPointResourceListOfJournalEntryLine
1205
1208
  from lusid.models.valuation_request import ValuationRequest
1206
1209
  from lusid.models.valuation_schedule import ValuationSchedule
1207
1210
  from lusid.models.valuations_reconciliation_request import ValuationsReconciliationRequest
@@ -1617,6 +1620,8 @@ __all__ = [
1617
1620
  "DiscountingMethod",
1618
1621
  "DividendOptionEvent",
1619
1622
  "DividendReinvestmentEvent",
1623
+ "EarlyRedemptionElection",
1624
+ "EarlyRedemptionEvent",
1620
1625
  "EconomicDependency",
1621
1626
  "EconomicDependencyType",
1622
1627
  "EconomicDependencyWithComplexMarketData",
@@ -2425,6 +2430,7 @@ __all__ = [
2425
2430
  "ValuationPointDataRequest",
2426
2431
  "ValuationPointDataResponse",
2427
2432
  "ValuationPointOverview",
2433
+ "ValuationPointResourceListOfJournalEntryLine",
2428
2434
  "ValuationRequest",
2429
2435
  "ValuationSchedule",
2430
2436
  "ValuationsReconciliationRequest",
@@ -22,7 +22,7 @@ from typing import overload, Optional, Union, Awaitable
22
22
  from typing_extensions import Annotated
23
23
  from datetime import datetime
24
24
 
25
- from pydantic.v1 import Field, StrictStr, conint, conlist, constr, validator
25
+ from pydantic.v1 import Field, StrictBool, StrictStr, conint, conlist, constr, validator
26
26
 
27
27
  from typing import Optional
28
28
 
@@ -588,26 +588,30 @@ class AllocationsApi:
588
588
  _request_auth=_params.get('_request_auth'))
589
589
 
590
590
  @overload
591
- async def upsert_allocations(self, allocation_set_request : Annotated[Optional[AllocationSetRequest], Field(description="The collection of allocation requests.")] = None, **kwargs) -> ResourceListOfAllocation: # noqa: E501
591
+ async def upsert_allocations(self, allocation_set_request : Annotated[AllocationSetRequest, Field(..., description="The collection of allocation requests.")], verification_as_at : Annotated[Optional[datetime], Field(description="An optional verification asAt; individual upserts will fail if an existing entity has been updated between the verification asAt and time of upsert.")] = None, retry_without_changed_entities : Annotated[Optional[StrictBool], Field(description="Optionally choose to keep retrying upsert for remaining entities if some are being updated concurrently. If set to true, any entities that have changed since the verificationAsAt will be dropped from the set of allocations to upsert and the upsert will be retried. The response will only contain the allocations in the original request that have been successfully upserted.")] = None, **kwargs) -> ResourceListOfAllocation: # noqa: E501
592
592
  ...
593
593
 
594
594
  @overload
595
- def upsert_allocations(self, allocation_set_request : Annotated[Optional[AllocationSetRequest], Field(description="The collection of allocation requests.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfAllocation: # noqa: E501
595
+ def upsert_allocations(self, allocation_set_request : Annotated[AllocationSetRequest, Field(..., description="The collection of allocation requests.")], verification_as_at : Annotated[Optional[datetime], Field(description="An optional verification asAt; individual upserts will fail if an existing entity has been updated between the verification asAt and time of upsert.")] = None, retry_without_changed_entities : Annotated[Optional[StrictBool], Field(description="Optionally choose to keep retrying upsert for remaining entities if some are being updated concurrently. If set to true, any entities that have changed since the verificationAsAt will be dropped from the set of allocations to upsert and the upsert will be retried. The response will only contain the allocations in the original request that have been successfully upserted.")] = None, async_req: Optional[bool]=True, **kwargs) -> ResourceListOfAllocation: # noqa: E501
596
596
  ...
597
597
 
598
598
  @validate_arguments
599
- def upsert_allocations(self, allocation_set_request : Annotated[Optional[AllocationSetRequest], Field(description="The collection of allocation requests.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfAllocation, Awaitable[ResourceListOfAllocation]]: # noqa: E501
599
+ def upsert_allocations(self, allocation_set_request : Annotated[AllocationSetRequest, Field(..., description="The collection of allocation requests.")], verification_as_at : Annotated[Optional[datetime], Field(description="An optional verification asAt; individual upserts will fail if an existing entity has been updated between the verification asAt and time of upsert.")] = None, retry_without_changed_entities : Annotated[Optional[StrictBool], Field(description="Optionally choose to keep retrying upsert for remaining entities if some are being updated concurrently. If set to true, any entities that have changed since the verificationAsAt will be dropped from the set of allocations to upsert and the upsert will be retried. The response will only contain the allocations in the original request that have been successfully upserted.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ResourceListOfAllocation, Awaitable[ResourceListOfAllocation]]: # noqa: E501
600
600
  """UpsertAllocations: Upsert Allocations # noqa: E501
601
601
 
602
602
  Upsert; update existing allocations with given ids, or create new allocations otherwise. # noqa: E501
603
603
  This method makes a synchronous HTTP request by default. To make an
604
604
  asynchronous HTTP request, please pass async_req=True
605
605
 
606
- >>> thread = api.upsert_allocations(allocation_set_request, async_req=True)
606
+ >>> thread = api.upsert_allocations(allocation_set_request, verification_as_at, retry_without_changed_entities, async_req=True)
607
607
  >>> result = thread.get()
608
608
 
609
- :param allocation_set_request: The collection of allocation requests.
609
+ :param allocation_set_request: The collection of allocation requests. (required)
610
610
  :type allocation_set_request: AllocationSetRequest
611
+ :param verification_as_at: An optional verification asAt; individual upserts will fail if an existing entity has been updated between the verification asAt and time of upsert.
612
+ :type verification_as_at: datetime
613
+ :param retry_without_changed_entities: Optionally choose to keep retrying upsert for remaining entities if some are being updated concurrently. If set to true, any entities that have changed since the verificationAsAt will be dropped from the set of allocations to upsert and the upsert will be retried. The response will only contain the allocations in the original request that have been successfully upserted.
614
+ :type retry_without_changed_entities: bool
611
615
  :param async_req: Whether to execute the request asynchronously.
612
616
  :type async_req: bool, optional
613
617
  :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
@@ -624,21 +628,25 @@ class AllocationsApi:
624
628
  raise ValueError(message)
625
629
  if async_req is not None:
626
630
  kwargs['async_req'] = async_req
627
- return self.upsert_allocations_with_http_info(allocation_set_request, **kwargs) # noqa: E501
631
+ return self.upsert_allocations_with_http_info(allocation_set_request, verification_as_at, retry_without_changed_entities, **kwargs) # noqa: E501
628
632
 
629
633
  @validate_arguments
630
- def upsert_allocations_with_http_info(self, allocation_set_request : Annotated[Optional[AllocationSetRequest], Field(description="The collection of allocation requests.")] = None, **kwargs) -> ApiResponse: # noqa: E501
634
+ def upsert_allocations_with_http_info(self, allocation_set_request : Annotated[AllocationSetRequest, Field(..., description="The collection of allocation requests.")], verification_as_at : Annotated[Optional[datetime], Field(description="An optional verification asAt; individual upserts will fail if an existing entity has been updated between the verification asAt and time of upsert.")] = None, retry_without_changed_entities : Annotated[Optional[StrictBool], Field(description="Optionally choose to keep retrying upsert for remaining entities if some are being updated concurrently. If set to true, any entities that have changed since the verificationAsAt will be dropped from the set of allocations to upsert and the upsert will be retried. The response will only contain the allocations in the original request that have been successfully upserted.")] = None, **kwargs) -> ApiResponse: # noqa: E501
631
635
  """UpsertAllocations: Upsert Allocations # noqa: E501
632
636
 
633
637
  Upsert; update existing allocations with given ids, or create new allocations otherwise. # noqa: E501
634
638
  This method makes a synchronous HTTP request by default. To make an
635
639
  asynchronous HTTP request, please pass async_req=True
636
640
 
637
- >>> thread = api.upsert_allocations_with_http_info(allocation_set_request, async_req=True)
641
+ >>> thread = api.upsert_allocations_with_http_info(allocation_set_request, verification_as_at, retry_without_changed_entities, async_req=True)
638
642
  >>> result = thread.get()
639
643
 
640
- :param allocation_set_request: The collection of allocation requests.
644
+ :param allocation_set_request: The collection of allocation requests. (required)
641
645
  :type allocation_set_request: AllocationSetRequest
646
+ :param verification_as_at: An optional verification asAt; individual upserts will fail if an existing entity has been updated between the verification asAt and time of upsert.
647
+ :type verification_as_at: datetime
648
+ :param retry_without_changed_entities: Optionally choose to keep retrying upsert for remaining entities if some are being updated concurrently. If set to true, any entities that have changed since the verificationAsAt will be dropped from the set of allocations to upsert and the upsert will be retried. The response will only contain the allocations in the original request that have been successfully upserted.
649
+ :type retry_without_changed_entities: bool
642
650
  :param async_req: Whether to execute the request asynchronously.
643
651
  :type async_req: bool, optional
644
652
  :param _preload_content: if False, the ApiResponse.data will
@@ -666,7 +674,9 @@ class AllocationsApi:
666
674
  _params = locals()
667
675
 
668
676
  _all_params = [
669
- 'allocation_set_request'
677
+ 'allocation_set_request',
678
+ 'verification_as_at',
679
+ 'retry_without_changed_entities'
670
680
  ]
671
681
  _all_params.extend(
672
682
  [
@@ -698,6 +708,15 @@ class AllocationsApi:
698
708
 
699
709
  # process the query parameters
700
710
  _query_params = []
711
+ if _params.get('verification_as_at') is not None: # noqa: E501
712
+ if isinstance(_params['verification_as_at'], datetime):
713
+ _query_params.append(('verificationAsAt', _params['verification_as_at'].strftime(self.api_client.configuration.datetime_format)))
714
+ else:
715
+ _query_params.append(('verificationAsAt', _params['verification_as_at']))
716
+
717
+ if _params.get('retry_without_changed_entities') is not None: # noqa: E501
718
+ _query_params.append(('retryWithoutChangedEntities', _params['retry_without_changed_entities']))
719
+
701
720
  # process the header parameters
702
721
  _header_params = dict(_params.get('_headers', {}))
703
722
  # process the form parameters
lusid/api/funds_api.py CHANGED
@@ -45,6 +45,7 @@ from lusid.models.upsert_valuation_point_request import UpsertValuationPointRequ
45
45
  from lusid.models.valuation_point_data_query_parameters import ValuationPointDataQueryParameters
46
46
  from lusid.models.valuation_point_data_request import ValuationPointDataRequest
47
47
  from lusid.models.valuation_point_data_response import ValuationPointDataResponse
48
+ from lusid.models.valuation_point_resource_list_of_journal_entry_line import ValuationPointResourceListOfJournalEntryLine
48
49
 
49
50
  from lusid.api_client import ApiClient
50
51
  from lusid.api_response import ApiResponse
@@ -1815,6 +1816,232 @@ class FundsApi:
1815
1816
  collection_formats=_collection_formats,
1816
1817
  _request_auth=_params.get('_request_auth'))
1817
1818
 
1819
+ @overload
1820
+ async def get_valuation_point_journal_entry_lines(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund. Together with the scope is creating the unique identifier for the given Fund.")], valuation_point_data_query_parameters : Annotated[ValuationPointDataQueryParameters, Field(..., description="The arguments to use for querying the Journal Entry lines.")], general_ledger_profile_code : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The optional code of a general ledger profile used to decorate journal entry lines with levels.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version of each transaction if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to 100 if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Instrument', 'Transaction', 'Portfolio', 'Account', 'LegalEntity' or 'CustodianAccount' domain to decorate onto the journal entry lines.")] = None, **kwargs) -> ValuationPointResourceListOfJournalEntryLine: # noqa: E501
1821
+ ...
1822
+
1823
+ @overload
1824
+ def get_valuation_point_journal_entry_lines(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund. Together with the scope is creating the unique identifier for the given Fund.")], valuation_point_data_query_parameters : Annotated[ValuationPointDataQueryParameters, Field(..., description="The arguments to use for querying the Journal Entry lines.")], general_ledger_profile_code : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The optional code of a general ledger profile used to decorate journal entry lines with levels.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version of each transaction if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to 100 if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Instrument', 'Transaction', 'Portfolio', 'Account', 'LegalEntity' or 'CustodianAccount' domain to decorate onto the journal entry lines.")] = None, async_req: Optional[bool]=True, **kwargs) -> ValuationPointResourceListOfJournalEntryLine: # noqa: E501
1825
+ ...
1826
+
1827
+ @validate_arguments
1828
+ def get_valuation_point_journal_entry_lines(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund. Together with the scope is creating the unique identifier for the given Fund.")], valuation_point_data_query_parameters : Annotated[ValuationPointDataQueryParameters, Field(..., description="The arguments to use for querying the Journal Entry lines.")], general_ledger_profile_code : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The optional code of a general ledger profile used to decorate journal entry lines with levels.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version of each transaction if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to 100 if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Instrument', 'Transaction', 'Portfolio', 'Account', 'LegalEntity' or 'CustodianAccount' domain to decorate onto the journal entry lines.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[ValuationPointResourceListOfJournalEntryLine, Awaitable[ValuationPointResourceListOfJournalEntryLine]]: # noqa: E501
1829
+ """[EXPERIMENTAL] GetValuationPointJournalEntryLines: Get the Journal Entry lines for the given Fund. # noqa: E501
1830
+
1831
+ Gets the Journal Entry lines for the given Valuation Point for a Fund The Journal Entry lines have been generated from transactions, translated via posting rules and used in the valuation point # noqa: E501
1832
+ This method makes a synchronous HTTP request by default. To make an
1833
+ asynchronous HTTP request, please pass async_req=True
1834
+
1835
+ >>> thread = api.get_valuation_point_journal_entry_lines(scope, code, valuation_point_data_query_parameters, general_ledger_profile_code, as_at, filter, limit, page, property_keys, async_req=True)
1836
+ >>> result = thread.get()
1837
+
1838
+ :param scope: The scope of the Fund. (required)
1839
+ :type scope: str
1840
+ :param code: The code of the Fund. Together with the scope is creating the unique identifier for the given Fund. (required)
1841
+ :type code: str
1842
+ :param valuation_point_data_query_parameters: The arguments to use for querying the Journal Entry lines. (required)
1843
+ :type valuation_point_data_query_parameters: ValuationPointDataQueryParameters
1844
+ :param general_ledger_profile_code: The optional code of a general ledger profile used to decorate journal entry lines with levels.
1845
+ :type general_ledger_profile_code: str
1846
+ :param as_at: The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version of each transaction if not specified.
1847
+ :type as_at: datetime
1848
+ :param filter: Expression to filter the result set.
1849
+ :type filter: str
1850
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to 100 if not specified.
1851
+ :type limit: int
1852
+ :param page: The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines.
1853
+ :type page: str
1854
+ :param property_keys: A list of property keys from the 'Instrument', 'Transaction', 'Portfolio', 'Account', 'LegalEntity' or 'CustodianAccount' domain to decorate onto the journal entry lines.
1855
+ :type property_keys: List[str]
1856
+ :param async_req: Whether to execute the request asynchronously.
1857
+ :type async_req: bool, optional
1858
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1859
+ :param opts: Configuration options for this request
1860
+ :type opts: ConfigurationOptions, optional
1861
+ :return: Returns the result object.
1862
+ If the method is called asynchronously,
1863
+ returns the request thread.
1864
+ :rtype: ValuationPointResourceListOfJournalEntryLine
1865
+ """
1866
+ kwargs['_return_http_data_only'] = True
1867
+ if '_preload_content' in kwargs:
1868
+ message = "Error! Please call the get_valuation_point_journal_entry_lines_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
1869
+ raise ValueError(message)
1870
+ if async_req is not None:
1871
+ kwargs['async_req'] = async_req
1872
+ return self.get_valuation_point_journal_entry_lines_with_http_info(scope, code, valuation_point_data_query_parameters, general_ledger_profile_code, as_at, filter, limit, page, property_keys, **kwargs) # noqa: E501
1873
+
1874
+ @validate_arguments
1875
+ def get_valuation_point_journal_entry_lines_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund. Together with the scope is creating the unique identifier for the given Fund.")], valuation_point_data_query_parameters : Annotated[ValuationPointDataQueryParameters, Field(..., description="The arguments to use for querying the Journal Entry lines.")], general_ledger_profile_code : Annotated[Optional[constr(strict=True, max_length=64, min_length=1)], Field(description="The optional code of a general ledger profile used to decorate journal entry lines with levels.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version of each transaction if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the result set.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the number of returned results to this many. Defaults to 100 if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines.")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Instrument', 'Transaction', 'Portfolio', 'Account', 'LegalEntity' or 'CustodianAccount' domain to decorate onto the journal entry lines.")] = None, **kwargs) -> ApiResponse: # noqa: E501
1876
+ """[EXPERIMENTAL] GetValuationPointJournalEntryLines: Get the Journal Entry lines for the given Fund. # noqa: E501
1877
+
1878
+ Gets the Journal Entry lines for the given Valuation Point for a Fund The Journal Entry lines have been generated from transactions, translated via posting rules and used in the valuation point # noqa: E501
1879
+ This method makes a synchronous HTTP request by default. To make an
1880
+ asynchronous HTTP request, please pass async_req=True
1881
+
1882
+ >>> thread = api.get_valuation_point_journal_entry_lines_with_http_info(scope, code, valuation_point_data_query_parameters, general_ledger_profile_code, as_at, filter, limit, page, property_keys, async_req=True)
1883
+ >>> result = thread.get()
1884
+
1885
+ :param scope: The scope of the Fund. (required)
1886
+ :type scope: str
1887
+ :param code: The code of the Fund. Together with the scope is creating the unique identifier for the given Fund. (required)
1888
+ :type code: str
1889
+ :param valuation_point_data_query_parameters: The arguments to use for querying the Journal Entry lines. (required)
1890
+ :type valuation_point_data_query_parameters: ValuationPointDataQueryParameters
1891
+ :param general_ledger_profile_code: The optional code of a general ledger profile used to decorate journal entry lines with levels.
1892
+ :type general_ledger_profile_code: str
1893
+ :param as_at: The asAt datetime at which to retrieve Journal Entry lines. Defaults to returning the latest version of each transaction if not specified.
1894
+ :type as_at: datetime
1895
+ :param filter: Expression to filter the result set.
1896
+ :type filter: str
1897
+ :param limit: When paginating, limit the number of returned results to this many. Defaults to 100 if not specified.
1898
+ :type limit: int
1899
+ :param page: The pagination token to use to continue listing Journal Entry lines from a previous call to GetValuationPointJournalEntryLines.
1900
+ :type page: str
1901
+ :param property_keys: A list of property keys from the 'Instrument', 'Transaction', 'Portfolio', 'Account', 'LegalEntity' or 'CustodianAccount' domain to decorate onto the journal entry lines.
1902
+ :type property_keys: List[str]
1903
+ :param async_req: Whether to execute the request asynchronously.
1904
+ :type async_req: bool, optional
1905
+ :param _preload_content: if False, the ApiResponse.data will
1906
+ be set to none and raw_data will store the
1907
+ HTTP response body without reading/decoding.
1908
+ Default is True.
1909
+ :type _preload_content: bool, optional
1910
+ :param _return_http_data_only: response data instead of ApiResponse
1911
+ object with status code, headers, etc
1912
+ :type _return_http_data_only: bool, optional
1913
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
1914
+ :param opts: Configuration options for this request
1915
+ :type opts: ConfigurationOptions, optional
1916
+ :param _request_auth: set to override the auth_settings for an a single
1917
+ request; this effectively ignores the authentication
1918
+ in the spec for a single request.
1919
+ :type _request_auth: dict, optional
1920
+ :type _content_type: string, optional: force content-type for the request
1921
+ :return: Returns the result object.
1922
+ If the method is called asynchronously,
1923
+ returns the request thread.
1924
+ :rtype: tuple(ValuationPointResourceListOfJournalEntryLine, status_code(int), headers(HTTPHeaderDict))
1925
+ """
1926
+
1927
+ _params = locals()
1928
+
1929
+ _all_params = [
1930
+ 'scope',
1931
+ 'code',
1932
+ 'valuation_point_data_query_parameters',
1933
+ 'general_ledger_profile_code',
1934
+ 'as_at',
1935
+ 'filter',
1936
+ 'limit',
1937
+ 'page',
1938
+ 'property_keys'
1939
+ ]
1940
+ _all_params.extend(
1941
+ [
1942
+ 'async_req',
1943
+ '_return_http_data_only',
1944
+ '_preload_content',
1945
+ '_request_timeout',
1946
+ '_request_auth',
1947
+ '_content_type',
1948
+ '_headers',
1949
+ 'opts'
1950
+ ]
1951
+ )
1952
+
1953
+ # validate the arguments
1954
+ for _key, _val in _params['kwargs'].items():
1955
+ if _key not in _all_params:
1956
+ raise ApiTypeError(
1957
+ "Got an unexpected keyword argument '%s'"
1958
+ " to method get_valuation_point_journal_entry_lines" % _key
1959
+ )
1960
+ _params[_key] = _val
1961
+ del _params['kwargs']
1962
+
1963
+ _collection_formats = {}
1964
+
1965
+ # process the path parameters
1966
+ _path_params = {}
1967
+ if _params['scope']:
1968
+ _path_params['scope'] = _params['scope']
1969
+
1970
+ if _params['code']:
1971
+ _path_params['code'] = _params['code']
1972
+
1973
+
1974
+ # process the query parameters
1975
+ _query_params = []
1976
+ if _params.get('general_ledger_profile_code') is not None: # noqa: E501
1977
+ _query_params.append(('generalLedgerProfileCode', _params['general_ledger_profile_code']))
1978
+
1979
+ if _params.get('as_at') is not None: # noqa: E501
1980
+ if isinstance(_params['as_at'], datetime):
1981
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
1982
+ else:
1983
+ _query_params.append(('asAt', _params['as_at']))
1984
+
1985
+ if _params.get('filter') is not None: # noqa: E501
1986
+ _query_params.append(('filter', _params['filter']))
1987
+
1988
+ if _params.get('limit') is not None: # noqa: E501
1989
+ _query_params.append(('limit', _params['limit']))
1990
+
1991
+ if _params.get('page') is not None: # noqa: E501
1992
+ _query_params.append(('page', _params['page']))
1993
+
1994
+ if _params.get('property_keys') is not None: # noqa: E501
1995
+ _query_params.append(('propertyKeys', _params['property_keys']))
1996
+ _collection_formats['propertyKeys'] = 'multi'
1997
+
1998
+ # process the header parameters
1999
+ _header_params = dict(_params.get('_headers', {}))
2000
+ # process the form parameters
2001
+ _form_params = []
2002
+ _files = {}
2003
+ # process the body parameter
2004
+ _body_params = None
2005
+ if _params['valuation_point_data_query_parameters'] is not None:
2006
+ _body_params = _params['valuation_point_data_query_parameters']
2007
+
2008
+ # set the HTTP header `Accept`
2009
+ _header_params['Accept'] = self.api_client.select_header_accept(
2010
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
2011
+
2012
+ # set the HTTP header `Content-Type`
2013
+ _content_types_list = _params.get('_content_type',
2014
+ self.api_client.select_header_content_type(
2015
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
2016
+ if _content_types_list:
2017
+ _header_params['Content-Type'] = _content_types_list
2018
+
2019
+ # authentication setting
2020
+ _auth_settings = ['oauth2'] # noqa: E501
2021
+
2022
+ _response_types_map = {
2023
+ '200': "ValuationPointResourceListOfJournalEntryLine",
2024
+ '400': "LusidValidationProblemDetails",
2025
+ }
2026
+
2027
+ return self.api_client.call_api(
2028
+ '/api/funds/{scope}/{code}/valuationpoints/journalentrylines/$query', 'POST',
2029
+ _path_params,
2030
+ _query_params,
2031
+ _header_params,
2032
+ body=_body_params,
2033
+ post_params=_form_params,
2034
+ files=_files,
2035
+ response_types_map=_response_types_map,
2036
+ auth_settings=_auth_settings,
2037
+ async_req=_params.get('async_req'),
2038
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
2039
+ _preload_content=_params.get('_preload_content', True),
2040
+ _request_timeout=_params.get('_request_timeout'),
2041
+ opts=_params.get('opts'),
2042
+ collection_formats=_collection_formats,
2043
+ _request_auth=_params.get('_request_auth'))
2044
+
1818
2045
  @overload
1819
2046
  async def list_fees(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund.")], effective_at : Annotated[Optional[StrictStr], Field(description="The effective datetime or cut label at which to list the TimeVariant properties for the Fees. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the Fees. Defaults to returning the latest version of each Fee if not specified.")] = None, page : Annotated[Optional[constr(strict=True, max_length=500, min_length=1)], Field(description="The pagination token to use to continue listing fees; this value is returned from the previous call. If a pagination token is provided, the filter, effectiveAt and asAt fields must not have changed since the original request.")] = None, limit : Annotated[Optional[conint(strict=True, le=5000, ge=1)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[constr(strict=True, max_length=16384, min_length=0)], Field(description="Expression to filter the results. For example, to filter on the treatment, specify \"treatment eq 'Monthly'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.")] = None, sort_by : Annotated[Optional[conlist(StrictStr)], Field(description="A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"")] = None, property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys from the 'Fee' domain to decorate onto each Fee. These must take the format {domain}/{scope}/{code}, for example 'Fee/Account/Id'.")] = None, **kwargs) -> PagedResourceListOfFee: # noqa: E501
1820
2047
  ...
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.7059\n"\
448
+ "Version of the API: 0.11.7071\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
@@ -313,6 +313,8 @@ from lusid.models.discounting_dependency import DiscountingDependency
313
313
  from lusid.models.discounting_method import DiscountingMethod
314
314
  from lusid.models.dividend_option_event import DividendOptionEvent
315
315
  from lusid.models.dividend_reinvestment_event import DividendReinvestmentEvent
316
+ from lusid.models.early_redemption_election import EarlyRedemptionElection
317
+ from lusid.models.early_redemption_event import EarlyRedemptionEvent
316
318
  from lusid.models.economic_dependency import EconomicDependency
317
319
  from lusid.models.economic_dependency_type import EconomicDependencyType
318
320
  from lusid.models.economic_dependency_with_complex_market_data import EconomicDependencyWithComplexMarketData
@@ -1121,6 +1123,7 @@ from lusid.models.valuation_point_data_query_parameters import ValuationPointDat
1121
1123
  from lusid.models.valuation_point_data_request import ValuationPointDataRequest
1122
1124
  from lusid.models.valuation_point_data_response import ValuationPointDataResponse
1123
1125
  from lusid.models.valuation_point_overview import ValuationPointOverview
1126
+ from lusid.models.valuation_point_resource_list_of_journal_entry_line import ValuationPointResourceListOfJournalEntryLine
1124
1127
  from lusid.models.valuation_request import ValuationRequest
1125
1128
  from lusid.models.valuation_schedule import ValuationSchedule
1126
1129
  from lusid.models.valuations_reconciliation_request import ValuationsReconciliationRequest
@@ -1456,6 +1459,8 @@ __all__ = [
1456
1459
  "DiscountingMethod",
1457
1460
  "DividendOptionEvent",
1458
1461
  "DividendReinvestmentEvent",
1462
+ "EarlyRedemptionElection",
1463
+ "EarlyRedemptionEvent",
1459
1464
  "EconomicDependency",
1460
1465
  "EconomicDependencyType",
1461
1466
  "EconomicDependencyWithComplexMarketData",
@@ -2264,6 +2269,7 @@ __all__ = [
2264
2269
  "ValuationPointDataRequest",
2265
2270
  "ValuationPointDataResponse",
2266
2271
  "ValuationPointOverview",
2272
+ "ValuationPointResourceListOfJournalEntryLine",
2267
2273
  "ValuationRequest",
2268
2274
  "ValuationSchedule",
2269
2275
  "ValuationsReconciliationRequest",
@@ -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, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent")
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, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent")
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', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent'):
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', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent')")
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', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent'):
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', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent')")
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, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent")
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, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent")
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', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent'):
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', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent')")
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', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent'):
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', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -30,15 +30,15 @@ class BondCouponEvent(InstrumentEvent):
30
30
  payment_date: datetime = Field(..., alias="paymentDate", description="Payment date of the coupon payment")
31
31
  currency: StrictStr = Field(..., description="Currency of the coupon payment")
32
32
  coupon_per_unit: Optional[Union[StrictFloat, StrictInt]] = Field(None, alias="couponPerUnit", description="CouponRate*Principal")
33
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent")
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, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "exDate", "paymentDate", "currency", "couponPerUnit"]
36
36
 
37
37
  @validator('instrument_event_type')
38
38
  def instrument_event_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent'):
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', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent')")
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', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent'):
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', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -27,15 +27,15 @@ class BondDefaultEvent(InstrumentEvent):
27
27
  Indicates when an issuer has defaulted on an obligation due to technical default, missed payments, or bankruptcy filing. # noqa: E501
28
28
  """
29
29
  effective_date: datetime = Field(..., alias="effectiveDate", description="The date the bond default occurred.")
30
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent")
30
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent, SwapCashFlowEvent, SwapPrincipalEvent, CreditPremiumCashFlowEvent, CdsCreditEvent, CdxCreditEvent, MbsCouponEvent, MbsPrincipalEvent, BonusIssueEvent, MbsPrincipalWriteOffEvent, MbsInterestDeferralEvent, MbsInterestShortfallEvent, TenderEvent, CallOnIntermediateSecuritiesEvent, IntermediateSecuritiesDistributionEvent, OptionExercisePhysicalEvent, OptionExerciseCashEvent, ProtectionPayoutCashFlowEvent, TermDepositInterestEvent, TermDepositPrincipalEvent, EarlyRedemptionEvent")
31
31
  additional_properties: Dict[str, Any] = {}
32
32
  __properties = ["instrumentEventType", "effectiveDate"]
33
33
 
34
34
  @validator('instrument_event_type')
35
35
  def instrument_event_type_validate_enum(cls, value):
36
36
  """Validates the enum"""
37
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent'):
38
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent')")
37
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent'):
38
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent', 'SwapCashFlowEvent', 'SwapPrincipalEvent', 'CreditPremiumCashFlowEvent', 'CdsCreditEvent', 'CdxCreditEvent', 'MbsCouponEvent', 'MbsPrincipalEvent', 'BonusIssueEvent', 'MbsPrincipalWriteOffEvent', 'MbsInterestDeferralEvent', 'MbsInterestShortfallEvent', 'TenderEvent', 'CallOnIntermediateSecuritiesEvent', 'IntermediateSecuritiesDistributionEvent', 'OptionExercisePhysicalEvent', 'OptionExerciseCashEvent', 'ProtectionPayoutCashFlowEvent', 'TermDepositInterestEvent', 'TermDepositPrincipalEvent', 'EarlyRedemptionEvent')")
39
39
  return value
40
40
 
41
41
  class Config: