lusid-sdk 2.1.242__py3-none-any.whl → 2.1.320__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 (104) hide show
  1. lusid/__init__.py +66 -0
  2. lusid/api/__init__.py +2 -0
  3. lusid/api/compliance_api.py +191 -0
  4. lusid/api/entities_api.py +360 -0
  5. lusid/api/fee_types_api.py +143 -0
  6. lusid/api/fund_configurations_api.py +944 -0
  7. lusid/api/funds_api.py +1 -1
  8. lusid/api/order_management_api.py +479 -1
  9. lusid/api/scopes_api.py +38 -9
  10. lusid/configuration.py +1 -1
  11. lusid/extensions/configuration_loaders.py +9 -1
  12. lusid/models/__init__.py +64 -0
  13. lusid/models/accounting_method.py +3 -0
  14. lusid/models/accumulation_event.py +3 -3
  15. lusid/models/amortisation_event.py +3 -3
  16. lusid/models/bond_coupon_event.py +3 -3
  17. lusid/models/bond_default_event.py +3 -3
  18. lusid/models/bond_principal_event.py +3 -3
  19. lusid/models/cancel_orders_response.py +153 -0
  20. lusid/models/cancel_placements_response.py +153 -0
  21. lusid/models/cancelled_order_result.py +73 -0
  22. lusid/models/cancelled_placement_result.py +83 -0
  23. lusid/models/capital_distribution_event.py +3 -3
  24. lusid/models/cash.py +93 -0
  25. lusid/models/cash_dividend_event.py +3 -3
  26. lusid/models/cash_flow_event.py +3 -3
  27. lusid/models/close_event.py +3 -3
  28. lusid/models/compliance_run_configuration.py +73 -0
  29. lusid/models/component_filter.py +85 -0
  30. lusid/models/component_rule.py +77 -0
  31. lusid/models/contract_for_difference.py +4 -2
  32. lusid/models/create_derived_transaction_portfolio_request.py +3 -3
  33. lusid/models/create_transaction_portfolio_request.py +3 -3
  34. lusid/models/dependency_source_filter.py +9 -2
  35. lusid/models/dividend_option_event.py +3 -3
  36. lusid/models/dividend_reinvestment_event.py +3 -3
  37. lusid/models/exercise_event.py +3 -3
  38. lusid/models/expiry_event.py +3 -3
  39. lusid/models/fee_transaction_template_specification.py +79 -0
  40. lusid/models/fund.py +6 -1
  41. lusid/models/fund_amount.py +69 -0
  42. lusid/models/fund_configuration.py +151 -0
  43. lusid/models/fund_configuration_properties.py +115 -0
  44. lusid/models/fund_configuration_request.py +136 -0
  45. lusid/models/fund_pnl_breakdown.py +110 -0
  46. lusid/models/fund_previous_nav.py +69 -0
  47. lusid/models/fund_request.py +6 -1
  48. lusid/models/fund_valuation_point_data.py +152 -0
  49. lusid/models/future_expiry_event.py +100 -0
  50. lusid/models/futures_contract_details.py +9 -2
  51. lusid/models/fx_forward_settlement_event.py +3 -3
  52. lusid/models/informational_error_event.py +3 -3
  53. lusid/models/informational_event.py +3 -3
  54. lusid/models/instrument_entity.py +146 -0
  55. lusid/models/instrument_event.py +6 -5
  56. lusid/models/instrument_event_type.py +1 -0
  57. lusid/models/lusid_instrument.py +3 -2
  58. lusid/models/market_data_key_rule.py +3 -3
  59. lusid/models/market_data_specific_rule.py +3 -3
  60. lusid/models/market_quote.py +3 -3
  61. lusid/models/maturity_event.py +3 -3
  62. lusid/models/merger_event.py +3 -3
  63. lusid/models/model_selection.py +3 -3
  64. lusid/models/open_event.py +3 -3
  65. lusid/models/paged_resource_list_of_fund_configuration.py +113 -0
  66. lusid/models/placement_update_request.py +116 -0
  67. lusid/models/portfolio.py +3 -3
  68. lusid/models/portfolio_details.py +3 -3
  69. lusid/models/portfolio_without_href.py +3 -3
  70. lusid/models/pre_trade_configuration.py +69 -0
  71. lusid/models/previous_fund_valuation_point_data.py +79 -0
  72. lusid/models/previous_nav.py +73 -0
  73. lusid/models/previous_share_class_breakdown.py +81 -0
  74. lusid/models/pricing_model.py +1 -0
  75. lusid/models/property_definition.py +7 -1
  76. lusid/models/property_definition_entity.py +146 -0
  77. lusid/models/quote_series_id.py +4 -20
  78. lusid/models/quote_type.py +3 -0
  79. lusid/models/raw_vendor_event.py +3 -3
  80. lusid/models/reset_event.py +3 -3
  81. lusid/models/reverse_stock_split_event.py +3 -3
  82. lusid/models/scrip_dividend_event.py +3 -3
  83. lusid/models/share_class_amount.py +73 -0
  84. lusid/models/share_class_breakdown.py +163 -0
  85. lusid/models/share_class_data.py +79 -0
  86. lusid/models/share_class_details.py +108 -0
  87. lusid/models/share_class_pnl_breakdown.py +110 -0
  88. lusid/models/spin_off_event.py +3 -3
  89. lusid/models/staged_modification.py +8 -1
  90. lusid/models/stock_dividend_event.py +3 -3
  91. lusid/models/stock_split_event.py +3 -3
  92. lusid/models/template_field.py +3 -1
  93. lusid/models/transaction_configuration_movement_data.py +2 -2
  94. lusid/models/transaction_configuration_movement_data_request.py +1 -1
  95. lusid/models/transaction_field_map.py +8 -3
  96. lusid/models/transaction_type_movement.py +2 -2
  97. lusid/models/transition_event.py +3 -3
  98. lusid/models/trigger_event.py +3 -3
  99. lusid/models/unitisation_data.py +73 -0
  100. lusid/models/update_placements_response.py +153 -0
  101. lusid/models/valuation_point_data_response.py +30 -9
  102. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.320.dist-info}/METADATA +53 -215
  103. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.320.dist-info}/RECORD +104 -71
  104. {lusid_sdk-2.1.242.dist-info → lusid_sdk-2.1.320.dist-info}/WHEEL +0 -0
@@ -10,7 +10,8 @@ logger = logging.getLogger(__name__)
10
10
 
11
11
  ENVIRONMENT_CONFIG_KEYS = {
12
12
  "token_url": "FBN_TOKEN_URL",
13
- "api_url": "FBN_LUSID_API_URL",
13
+ "api_url": "FBN_LUSID_URL",
14
+ "previous_api_url": "FBN_LUSID_API_URL",
14
15
  "username": "FBN_USERNAME",
15
16
  "password": "FBN_PASSWORD",
16
17
  "client_id": "FBN_CLIENT_ID",
@@ -26,6 +27,7 @@ ENVIRONMENT_CONFIG_KEYS = {
26
27
  SECRETS_FILE_CONFIG_KEYS = {
27
28
  "token_url": "tokenUrl",
28
29
  "api_url": "lusidUrl",
30
+ "previous_api_url": "lusidUrl",
29
31
  "username": "username",
30
32
  "password": "password",
31
33
  "client_id": "clientId",
@@ -96,6 +98,9 @@ class SecretsFileConfigurationLoader:
96
98
  for key, value in SECRETS_FILE_CONFIG_KEYS.items()
97
99
  if "proxy" not in key
98
100
  }
101
+ if not populated_api_config_values["api_url"]:
102
+ populated_api_config_values["api_url"] = populated_api_config_values["previous_api_url"]
103
+ del(populated_api_config_values["previous_api_url"])
99
104
  proxy_config_section = config.get(proxy_config_key, {})
100
105
  populated_proxy_values = {
101
106
  key: proxy_config_section.get(value)
@@ -127,6 +132,9 @@ class EnvironmentVariablesConfigurationLoader:
127
132
  for key, value in ENVIRONMENT_CONFIG_KEYS.items()
128
133
  if "proxy" not in key
129
134
  }
135
+ if not populated_api_config_values["api_url"]:
136
+ populated_api_config_values["api_url"] = populated_api_config_values["previous_api_url"]
137
+ del(populated_api_config_values["previous_api_url"])
130
138
  populated_proxy_values = {
131
139
  key: os.environ.get(value)
132
140
  for key, value in ENVIRONMENT_CONFIG_KEYS.items()
lusid/models/__init__.py CHANGED
@@ -106,8 +106,13 @@ from lusid.models.calculation_info import CalculationInfo
106
106
  from lusid.models.calendar import Calendar
107
107
  from lusid.models.calendar_date import CalendarDate
108
108
  from lusid.models.calendar_dependency import CalendarDependency
109
+ from lusid.models.cancel_orders_response import CancelOrdersResponse
110
+ from lusid.models.cancel_placements_response import CancelPlacementsResponse
111
+ from lusid.models.cancelled_order_result import CancelledOrderResult
112
+ from lusid.models.cancelled_placement_result import CancelledPlacementResult
109
113
  from lusid.models.cap_floor import CapFloor
110
114
  from lusid.models.capital_distribution_event import CapitalDistributionEvent
115
+ from lusid.models.cash import Cash
111
116
  from lusid.models.cash_and_security_offer_election import CashAndSecurityOfferElection
112
117
  from lusid.models.cash_dependency import CashDependency
113
118
  from lusid.models.cash_dividend_event import CashDividendEvent
@@ -159,6 +164,7 @@ from lusid.models.compliance_rule_result_v2 import ComplianceRuleResultV2
159
164
  from lusid.models.compliance_rule_template import ComplianceRuleTemplate
160
165
  from lusid.models.compliance_rule_upsert_request import ComplianceRuleUpsertRequest
161
166
  from lusid.models.compliance_rule_upsert_response import ComplianceRuleUpsertResponse
167
+ from lusid.models.compliance_run_configuration import ComplianceRunConfiguration
162
168
  from lusid.models.compliance_run_info import ComplianceRunInfo
163
169
  from lusid.models.compliance_run_info_v2 import ComplianceRunInfoV2
164
170
  from lusid.models.compliance_step import ComplianceStep
@@ -172,6 +178,8 @@ from lusid.models.compliance_template_parameter import ComplianceTemplateParamet
172
178
  from lusid.models.compliance_template_variation import ComplianceTemplateVariation
173
179
  from lusid.models.compliance_template_variation_dto import ComplianceTemplateVariationDto
174
180
  from lusid.models.compliance_template_variation_request import ComplianceTemplateVariationRequest
181
+ from lusid.models.component_filter import ComponentFilter
182
+ from lusid.models.component_rule import ComponentRule
175
183
  from lusid.models.component_transaction import ComponentTransaction
176
184
  from lusid.models.composite_breakdown import CompositeBreakdown
177
185
  from lusid.models.composite_breakdown_request import CompositeBreakdownRequest
@@ -317,6 +325,7 @@ from lusid.models.fee_request import FeeRequest
317
325
  from lusid.models.fee_rule import FeeRule
318
326
  from lusid.models.fee_rule_upsert_request import FeeRuleUpsertRequest
319
327
  from lusid.models.fee_rule_upsert_response import FeeRuleUpsertResponse
328
+ from lusid.models.fee_transaction_template_specification import FeeTransactionTemplateSpecification
320
329
  from lusid.models.fee_type import FeeType
321
330
  from lusid.models.fee_type_request import FeeTypeRequest
322
331
  from lusid.models.field_definition import FieldDefinition
@@ -337,12 +346,20 @@ from lusid.models.flow_conventions import FlowConventions
337
346
  from lusid.models.forward_rate_agreement import ForwardRateAgreement
338
347
  from lusid.models.from_recipe import FromRecipe
339
348
  from lusid.models.fund import Fund
349
+ from lusid.models.fund_amount import FundAmount
350
+ from lusid.models.fund_configuration import FundConfiguration
351
+ from lusid.models.fund_configuration_properties import FundConfigurationProperties
352
+ from lusid.models.fund_configuration_request import FundConfigurationRequest
353
+ from lusid.models.fund_pnl_breakdown import FundPnlBreakdown
354
+ from lusid.models.fund_previous_nav import FundPreviousNAV
340
355
  from lusid.models.fund_properties import FundProperties
341
356
  from lusid.models.fund_request import FundRequest
342
357
  from lusid.models.fund_share_class import FundShareClass
358
+ from lusid.models.fund_valuation_point_data import FundValuationPointData
343
359
  from lusid.models.funding_leg import FundingLeg
344
360
  from lusid.models.funding_leg_options import FundingLegOptions
345
361
  from lusid.models.future import Future
362
+ from lusid.models.future_expiry_event import FutureExpiryEvent
346
363
  from lusid.models.futures_contract_details import FuturesContractDetails
347
364
  from lusid.models.fx_conventions import FxConventions
348
365
  from lusid.models.fx_dependency import FxDependency
@@ -417,6 +434,7 @@ from lusid.models.instrument_cash_flow import InstrumentCashFlow
417
434
  from lusid.models.instrument_definition import InstrumentDefinition
418
435
  from lusid.models.instrument_definition_format import InstrumentDefinitionFormat
419
436
  from lusid.models.instrument_delete_modes import InstrumentDeleteModes
437
+ from lusid.models.instrument_entity import InstrumentEntity
420
438
  from lusid.models.instrument_event import InstrumentEvent
421
439
  from lusid.models.instrument_event_configuration import InstrumentEventConfiguration
422
440
  from lusid.models.instrument_event_holder import InstrumentEventHolder
@@ -566,6 +584,7 @@ from lusid.models.paged_resource_list_of_execution import PagedResourceListOfExe
566
584
  from lusid.models.paged_resource_list_of_fee import PagedResourceListOfFee
567
585
  from lusid.models.paged_resource_list_of_fee_type import PagedResourceListOfFeeType
568
586
  from lusid.models.paged_resource_list_of_fund import PagedResourceListOfFund
587
+ from lusid.models.paged_resource_list_of_fund_configuration import PagedResourceListOfFundConfiguration
569
588
  from lusid.models.paged_resource_list_of_general_ledger_profile_response import PagedResourceListOfGeneralLedgerProfileResponse
570
589
  from lusid.models.paged_resource_list_of_instrument import PagedResourceListOfInstrument
571
590
  from lusid.models.paged_resource_list_of_instrument_event_holder import PagedResourceListOfInstrumentEventHolder
@@ -613,6 +632,7 @@ from lusid.models.place_blocks_request import PlaceBlocksRequest
613
632
  from lusid.models.placement import Placement
614
633
  from lusid.models.placement_request import PlacementRequest
615
634
  from lusid.models.placement_set_request import PlacementSetRequest
635
+ from lusid.models.placement_update_request import PlacementUpdateRequest
616
636
  from lusid.models.portfolio import Portfolio
617
637
  from lusid.models.portfolio_cash_flow import PortfolioCashFlow
618
638
  from lusid.models.portfolio_cash_ladder import PortfolioCashLadder
@@ -643,12 +663,17 @@ from lusid.models.posting_module_request import PostingModuleRequest
643
663
  from lusid.models.posting_module_response import PostingModuleResponse
644
664
  from lusid.models.posting_module_rule import PostingModuleRule
645
665
  from lusid.models.posting_module_rules_updated_response import PostingModuleRulesUpdatedResponse
666
+ from lusid.models.pre_trade_configuration import PreTradeConfiguration
646
667
  from lusid.models.premium import Premium
668
+ from lusid.models.previous_fund_valuation_point_data import PreviousFundValuationPointData
669
+ from lusid.models.previous_nav import PreviousNAV
670
+ from lusid.models.previous_share_class_breakdown import PreviousShareClassBreakdown
647
671
  from lusid.models.pricing_context import PricingContext
648
672
  from lusid.models.pricing_model import PricingModel
649
673
  from lusid.models.pricing_options import PricingOptions
650
674
  from lusid.models.processed_command import ProcessedCommand
651
675
  from lusid.models.property_definition import PropertyDefinition
676
+ from lusid.models.property_definition_entity import PropertyDefinitionEntity
652
677
  from lusid.models.property_definition_search_result import PropertyDefinitionSearchResult
653
678
  from lusid.models.property_definition_type import PropertyDefinitionType
654
679
  from lusid.models.property_domain import PropertyDomain
@@ -823,6 +848,11 @@ from lusid.models.set_share_class_instruments_request import SetShareClassInstru
823
848
  from lusid.models.set_transaction_configuration_alias import SetTransactionConfigurationAlias
824
849
  from lusid.models.set_transaction_configuration_source_request import SetTransactionConfigurationSourceRequest
825
850
  from lusid.models.settlement_schedule import SettlementSchedule
851
+ from lusid.models.share_class_amount import ShareClassAmount
852
+ from lusid.models.share_class_breakdown import ShareClassBreakdown
853
+ from lusid.models.share_class_data import ShareClassData
854
+ from lusid.models.share_class_details import ShareClassDetails
855
+ from lusid.models.share_class_pnl_breakdown import ShareClassPnlBreakdown
826
856
  from lusid.models.side_configuration_data import SideConfigurationData
827
857
  from lusid.models.side_configuration_data_request import SideConfigurationDataRequest
828
858
  from lusid.models.side_definition import SideDefinition
@@ -916,6 +946,7 @@ from lusid.models.trial_balance_query_parameters import TrialBalanceQueryParamet
916
946
  from lusid.models.trigger_event import TriggerEvent
917
947
  from lusid.models.typed_resource_id import TypedResourceId
918
948
  from lusid.models.unit_schema import UnitSchema
949
+ from lusid.models.unitisation_data import UnitisationData
919
950
  from lusid.models.units_ratio import UnitsRatio
920
951
  from lusid.models.unmatched_holding_method import UnmatchedHoldingMethod
921
952
  from lusid.models.update_amortisation_rule_set_details_request import UpdateAmortisationRuleSetDetailsRequest
@@ -928,6 +959,7 @@ from lusid.models.update_data_type_request import UpdateDataTypeRequest
928
959
  from lusid.models.update_derived_property_definition_request import UpdateDerivedPropertyDefinitionRequest
929
960
  from lusid.models.update_fee_type_request import UpdateFeeTypeRequest
930
961
  from lusid.models.update_instrument_identifier_request import UpdateInstrumentIdentifierRequest
962
+ from lusid.models.update_placements_response import UpdatePlacementsResponse
931
963
  from lusid.models.update_portfolio_group_request import UpdatePortfolioGroupRequest
932
964
  from lusid.models.update_portfolio_request import UpdatePortfolioRequest
933
965
  from lusid.models.update_property_definition_request import UpdatePropertyDefinitionRequest
@@ -1105,8 +1137,13 @@ __all__ = [
1105
1137
  "Calendar",
1106
1138
  "CalendarDate",
1107
1139
  "CalendarDependency",
1140
+ "CancelOrdersResponse",
1141
+ "CancelPlacementsResponse",
1142
+ "CancelledOrderResult",
1143
+ "CancelledPlacementResult",
1108
1144
  "CapFloor",
1109
1145
  "CapitalDistributionEvent",
1146
+ "Cash",
1110
1147
  "CashAndSecurityOfferElection",
1111
1148
  "CashDependency",
1112
1149
  "CashDividendEvent",
@@ -1158,6 +1195,7 @@ __all__ = [
1158
1195
  "ComplianceRuleTemplate",
1159
1196
  "ComplianceRuleUpsertRequest",
1160
1197
  "ComplianceRuleUpsertResponse",
1198
+ "ComplianceRunConfiguration",
1161
1199
  "ComplianceRunInfo",
1162
1200
  "ComplianceRunInfoV2",
1163
1201
  "ComplianceStep",
@@ -1171,6 +1209,8 @@ __all__ = [
1171
1209
  "ComplianceTemplateVariation",
1172
1210
  "ComplianceTemplateVariationDto",
1173
1211
  "ComplianceTemplateVariationRequest",
1212
+ "ComponentFilter",
1213
+ "ComponentRule",
1174
1214
  "ComponentTransaction",
1175
1215
  "CompositeBreakdown",
1176
1216
  "CompositeBreakdownRequest",
@@ -1316,6 +1356,7 @@ __all__ = [
1316
1356
  "FeeRule",
1317
1357
  "FeeRuleUpsertRequest",
1318
1358
  "FeeRuleUpsertResponse",
1359
+ "FeeTransactionTemplateSpecification",
1319
1360
  "FeeType",
1320
1361
  "FeeTypeRequest",
1321
1362
  "FieldDefinition",
@@ -1336,12 +1377,20 @@ __all__ = [
1336
1377
  "ForwardRateAgreement",
1337
1378
  "FromRecipe",
1338
1379
  "Fund",
1380
+ "FundAmount",
1381
+ "FundConfiguration",
1382
+ "FundConfigurationProperties",
1383
+ "FundConfigurationRequest",
1384
+ "FundPnlBreakdown",
1385
+ "FundPreviousNAV",
1339
1386
  "FundProperties",
1340
1387
  "FundRequest",
1341
1388
  "FundShareClass",
1389
+ "FundValuationPointData",
1342
1390
  "FundingLeg",
1343
1391
  "FundingLegOptions",
1344
1392
  "Future",
1393
+ "FutureExpiryEvent",
1345
1394
  "FuturesContractDetails",
1346
1395
  "FxConventions",
1347
1396
  "FxDependency",
@@ -1416,6 +1465,7 @@ __all__ = [
1416
1465
  "InstrumentDefinition",
1417
1466
  "InstrumentDefinitionFormat",
1418
1467
  "InstrumentDeleteModes",
1468
+ "InstrumentEntity",
1419
1469
  "InstrumentEvent",
1420
1470
  "InstrumentEventConfiguration",
1421
1471
  "InstrumentEventHolder",
@@ -1565,6 +1615,7 @@ __all__ = [
1565
1615
  "PagedResourceListOfFee",
1566
1616
  "PagedResourceListOfFeeType",
1567
1617
  "PagedResourceListOfFund",
1618
+ "PagedResourceListOfFundConfiguration",
1568
1619
  "PagedResourceListOfGeneralLedgerProfileResponse",
1569
1620
  "PagedResourceListOfInstrument",
1570
1621
  "PagedResourceListOfInstrumentEventHolder",
@@ -1612,6 +1663,7 @@ __all__ = [
1612
1663
  "Placement",
1613
1664
  "PlacementRequest",
1614
1665
  "PlacementSetRequest",
1666
+ "PlacementUpdateRequest",
1615
1667
  "Portfolio",
1616
1668
  "PortfolioCashFlow",
1617
1669
  "PortfolioCashLadder",
@@ -1642,12 +1694,17 @@ __all__ = [
1642
1694
  "PostingModuleResponse",
1643
1695
  "PostingModuleRule",
1644
1696
  "PostingModuleRulesUpdatedResponse",
1697
+ "PreTradeConfiguration",
1645
1698
  "Premium",
1699
+ "PreviousFundValuationPointData",
1700
+ "PreviousNAV",
1701
+ "PreviousShareClassBreakdown",
1646
1702
  "PricingContext",
1647
1703
  "PricingModel",
1648
1704
  "PricingOptions",
1649
1705
  "ProcessedCommand",
1650
1706
  "PropertyDefinition",
1707
+ "PropertyDefinitionEntity",
1651
1708
  "PropertyDefinitionSearchResult",
1652
1709
  "PropertyDefinitionType",
1653
1710
  "PropertyDomain",
@@ -1822,6 +1879,11 @@ __all__ = [
1822
1879
  "SetTransactionConfigurationAlias",
1823
1880
  "SetTransactionConfigurationSourceRequest",
1824
1881
  "SettlementSchedule",
1882
+ "ShareClassAmount",
1883
+ "ShareClassBreakdown",
1884
+ "ShareClassData",
1885
+ "ShareClassDetails",
1886
+ "ShareClassPnlBreakdown",
1825
1887
  "SideConfigurationData",
1826
1888
  "SideConfigurationDataRequest",
1827
1889
  "SideDefinition",
@@ -1915,6 +1977,7 @@ __all__ = [
1915
1977
  "TriggerEvent",
1916
1978
  "TypedResourceId",
1917
1979
  "UnitSchema",
1980
+ "UnitisationData",
1918
1981
  "UnitsRatio",
1919
1982
  "UnmatchedHoldingMethod",
1920
1983
  "UpdateAmortisationRuleSetDetailsRequest",
@@ -1927,6 +1990,7 @@ __all__ = [
1927
1990
  "UpdateDerivedPropertyDefinitionRequest",
1928
1991
  "UpdateFeeTypeRequest",
1929
1992
  "UpdateInstrumentIdentifierRequest",
1993
+ "UpdatePlacementsResponse",
1930
1994
  "UpdatePortfolioGroupRequest",
1931
1995
  "UpdatePortfolioRequest",
1932
1996
  "UpdatePropertyDefinitionRequest",
@@ -35,6 +35,9 @@ class AccountingMethod(str, Enum):
35
35
  LASTINFIRSTOUT = 'LastInFirstOut'
36
36
  HIGHESTCOSTFIRST = 'HighestCostFirst'
37
37
  LOWESTCOSTFIRST = 'LowestCostFirst'
38
+ PRORATEBYUNITS = 'ProRateByUnits'
39
+ PRORATEBYCOST = 'ProRateByCost'
40
+ PRORATEBYCOSTPORTFOLIOCURRENCY = 'ProRateByCostPortfolioCurrency'
38
41
 
39
42
  @classmethod
40
43
  def from_json(cls, json_str: str) -> AccountingMethod:
@@ -31,15 +31,15 @@ class AccumulationEvent(InstrumentEvent):
31
31
  dividend_rate: Union[StrictFloat, StrictInt] = Field(..., alias="dividendRate", description="Dividend rate or payment rate as a percentage. i.e. 5% is written as 0.05")
32
32
  ex_date: datetime = Field(..., alias="exDate", description="The first business day on which the dividend is not owed to the buying party. Typically this is T-1 from the RecordDate.")
33
33
  payment_date: datetime = Field(..., alias="paymentDate", description="The date the company pays out dividends to shareholders.")
34
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
34
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
35
35
  additional_properties: Dict[str, Any] = {}
36
36
  __properties = ["instrumentEventType", "announcementDate", "dividendCurrency", "dividendRate", "exDate", "paymentDate"]
37
37
 
38
38
  @validator('instrument_event_type')
39
39
  def instrument_event_type_validate_enum(cls, value):
40
40
  """Validates the enum"""
41
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
42
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
41
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
42
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
43
43
  return value
44
44
 
45
45
  class Config:
@@ -30,15 +30,15 @@ class AmortisationEvent(InstrumentEvent):
30
30
  dom_ccy: StrictStr = Field(..., alias="domCcy", description="Domestic currency of the originating instrument")
31
31
  pay_receive: constr(strict=True, min_length=1) = Field(..., alias="payReceive", description="Is this event in relation to the Pay or Receive leg")
32
32
  payment_date: datetime = Field(..., alias="paymentDate", description="The date the principal payment is to be made.")
33
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
33
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "amountReduced", "domCcy", "payReceive", "paymentDate"]
36
36
 
37
37
  @validator('instrument_event_type')
38
38
  def instrument_event_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
41
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
40
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
41
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -30,15 +30,15 @@ class BondCouponEvent(InstrumentEvent):
30
30
  payment_date: datetime = Field(..., alias="paymentDate", description="Payment date of the coupon payment")
31
31
  currency: StrictStr = Field(..., description="Currency of the coupon payment")
32
32
  coupon_per_unit: Union[StrictFloat, StrictInt] = Field(..., alias="couponPerUnit", description="CouponRate*Principal")
33
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
33
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "exDate", "paymentDate", "currency", "couponPerUnit"]
36
36
 
37
37
  @validator('instrument_event_type')
38
38
  def instrument_event_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
41
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
40
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
41
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -27,15 +27,15 @@ class BondDefaultEvent(InstrumentEvent):
27
27
  Indicates when an issuer has defaulted on an obligation due to technical default, missed payments, or bankruptcy filing. # noqa: E501
28
28
  """
29
29
  effective_date: datetime = Field(..., alias="effectiveDate", description="The date the bond default occurred.")
30
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
30
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
31
31
  additional_properties: Dict[str, Any] = {}
32
32
  __properties = ["instrumentEventType", "effectiveDate"]
33
33
 
34
34
  @validator('instrument_event_type')
35
35
  def instrument_event_type_validate_enum(cls, value):
36
36
  """Validates the enum"""
37
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
38
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
37
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
38
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
39
39
  return value
40
40
 
41
41
  class Config:
@@ -30,15 +30,15 @@ class BondPrincipalEvent(InstrumentEvent):
30
30
  ex_date: datetime = Field(..., alias="exDate", description="Ex-Dividend date of the principal payment")
31
31
  payment_date: datetime = Field(..., alias="paymentDate", description="Payment date of the principal payment")
32
32
  principal_per_unit: Union[StrictFloat, StrictInt] = Field(..., alias="principalPerUnit", description="Principal per unit")
33
- instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent")
33
+ instrument_event_type: StrictStr = Field(..., alias="instrumentEventType", description="The Type of Event. The available values are: TransitionEvent, InformationalEvent, OpenEvent, CloseEvent, StockSplitEvent, BondDefaultEvent, CashDividendEvent, AmortisationEvent, CashFlowEvent, ExerciseEvent, ResetEvent, TriggerEvent, RawVendorEvent, InformationalErrorEvent, BondCouponEvent, DividendReinvestmentEvent, AccumulationEvent, BondPrincipalEvent, DividendOptionEvent, MaturityEvent, FxForwardSettlementEvent, ExpiryEvent, ScripDividendEvent, StockDividendEvent, ReverseStockSplitEvent, CapitalDistributionEvent, SpinOffEvent, MergerEvent, FutureExpiryEvent")
34
34
  additional_properties: Dict[str, Any] = {}
35
35
  __properties = ["instrumentEventType", "currency", "exDate", "paymentDate", "principalPerUnit"]
36
36
 
37
37
  @validator('instrument_event_type')
38
38
  def instrument_event_type_validate_enum(cls, value):
39
39
  """Validates the enum"""
40
- if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent'):
41
- raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent')")
40
+ if value not in ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent'):
41
+ raise ValueError("must be one of enum values ('TransitionEvent', 'InformationalEvent', 'OpenEvent', 'CloseEvent', 'StockSplitEvent', 'BondDefaultEvent', 'CashDividendEvent', 'AmortisationEvent', 'CashFlowEvent', 'ExerciseEvent', 'ResetEvent', 'TriggerEvent', 'RawVendorEvent', 'InformationalErrorEvent', 'BondCouponEvent', 'DividendReinvestmentEvent', 'AccumulationEvent', 'BondPrincipalEvent', 'DividendOptionEvent', 'MaturityEvent', 'FxForwardSettlementEvent', 'ExpiryEvent', 'ScripDividendEvent', 'StockDividendEvent', 'ReverseStockSplitEvent', 'CapitalDistributionEvent', 'SpinOffEvent', 'MergerEvent', 'FutureExpiryEvent')")
42
42
  return value
43
43
 
44
44
  class Config:
@@ -0,0 +1,153 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ LUSID API
5
+
6
+ FINBOURNE Technology # noqa: E501
7
+
8
+ Contact: info@finbourne.com
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """
13
+
14
+
15
+ from __future__ import annotations
16
+ import pprint
17
+ import re # noqa: F401
18
+ import json
19
+
20
+
21
+ from typing import Any, Dict, List, Optional
22
+ from pydantic.v1 import BaseModel, Field, StrictStr, conlist
23
+ from lusid.models.cancelled_order_result import CancelledOrderResult
24
+ from lusid.models.error_detail import ErrorDetail
25
+ from lusid.models.link import Link
26
+ from lusid.models.response_meta_data import ResponseMetaData
27
+
28
+ class CancelOrdersResponse(BaseModel):
29
+ """
30
+ CancelOrdersResponse
31
+ """
32
+ href: Optional[StrictStr] = Field(None, description="The specific Uniform Resource Identifier (URI) for this resource at the requested effective and asAt datetime.")
33
+ values: Optional[Dict[str, CancelledOrderResult]] = Field(None, description="The orders which have been successfully cancelled.")
34
+ failed: Optional[Dict[str, ErrorDetail]] = Field(None, description="The orders that could not be cancelled, along with a reason for their failure.")
35
+ metadata: Optional[Dict[str, conlist(ResponseMetaData)]] = Field(None, description="Meta data associated with the cancellation event.")
36
+ links: Optional[conlist(Link)] = None
37
+ __properties = ["href", "values", "failed", "metadata", "links"]
38
+
39
+ class Config:
40
+ """Pydantic configuration"""
41
+ allow_population_by_field_name = True
42
+ validate_assignment = True
43
+
44
+ def to_str(self) -> str:
45
+ """Returns the string representation of the model using alias"""
46
+ return pprint.pformat(self.dict(by_alias=True))
47
+
48
+ def to_json(self) -> str:
49
+ """Returns the JSON representation of the model using alias"""
50
+ return json.dumps(self.to_dict())
51
+
52
+ @classmethod
53
+ def from_json(cls, json_str: str) -> CancelOrdersResponse:
54
+ """Create an instance of CancelOrdersResponse from a JSON string"""
55
+ return cls.from_dict(json.loads(json_str))
56
+
57
+ def to_dict(self):
58
+ """Returns the dictionary representation of the model using alias"""
59
+ _dict = self.dict(by_alias=True,
60
+ exclude={
61
+ },
62
+ exclude_none=True)
63
+ # override the default output from pydantic by calling `to_dict()` of each value in values (dict)
64
+ _field_dict = {}
65
+ if self.values:
66
+ for _key in self.values:
67
+ if self.values[_key]:
68
+ _field_dict[_key] = self.values[_key].to_dict()
69
+ _dict['values'] = _field_dict
70
+ # override the default output from pydantic by calling `to_dict()` of each value in failed (dict)
71
+ _field_dict = {}
72
+ if self.failed:
73
+ for _key in self.failed:
74
+ if self.failed[_key]:
75
+ _field_dict[_key] = self.failed[_key].to_dict()
76
+ _dict['failed'] = _field_dict
77
+ # override the default output from pydantic by calling `to_dict()` of each value in metadata (dict of array)
78
+ _field_dict_of_array = {}
79
+ if self.metadata:
80
+ for _key in self.metadata:
81
+ if self.metadata[_key]:
82
+ _field_dict_of_array[_key] = [
83
+ _item.to_dict() for _item in self.metadata[_key]
84
+ ]
85
+ _dict['metadata'] = _field_dict_of_array
86
+ # override the default output from pydantic by calling `to_dict()` of each item in links (list)
87
+ _items = []
88
+ if self.links:
89
+ for _item in self.links:
90
+ if _item:
91
+ _items.append(_item.to_dict())
92
+ _dict['links'] = _items
93
+ # set to None if href (nullable) is None
94
+ # and __fields_set__ contains the field
95
+ if self.href is None and "href" in self.__fields_set__:
96
+ _dict['href'] = None
97
+
98
+ # set to None if values (nullable) is None
99
+ # and __fields_set__ contains the field
100
+ if self.values is None and "values" in self.__fields_set__:
101
+ _dict['values'] = None
102
+
103
+ # set to None if failed (nullable) is None
104
+ # and __fields_set__ contains the field
105
+ if self.failed is None and "failed" in self.__fields_set__:
106
+ _dict['failed'] = None
107
+
108
+ # set to None if metadata (nullable) is None
109
+ # and __fields_set__ contains the field
110
+ if self.metadata is None and "metadata" in self.__fields_set__:
111
+ _dict['metadata'] = None
112
+
113
+ # set to None if links (nullable) is None
114
+ # and __fields_set__ contains the field
115
+ if self.links is None and "links" in self.__fields_set__:
116
+ _dict['links'] = None
117
+
118
+ return _dict
119
+
120
+ @classmethod
121
+ def from_dict(cls, obj: dict) -> CancelOrdersResponse:
122
+ """Create an instance of CancelOrdersResponse from a dict"""
123
+ if obj is None:
124
+ return None
125
+
126
+ if not isinstance(obj, dict):
127
+ return CancelOrdersResponse.parse_obj(obj)
128
+
129
+ _obj = CancelOrdersResponse.parse_obj({
130
+ "href": obj.get("href"),
131
+ "values": dict(
132
+ (_k, CancelledOrderResult.from_dict(_v))
133
+ for _k, _v in obj.get("values").items()
134
+ )
135
+ if obj.get("values") is not None
136
+ else None,
137
+ "failed": dict(
138
+ (_k, ErrorDetail.from_dict(_v))
139
+ for _k, _v in obj.get("failed").items()
140
+ )
141
+ if obj.get("failed") is not None
142
+ else None,
143
+ "metadata": dict(
144
+ (_k,
145
+ [ResponseMetaData.from_dict(_item) for _item in _v]
146
+ if _v is not None
147
+ else None
148
+ )
149
+ for _k, _v in obj.get("metadata").items()
150
+ ),
151
+ "links": [Link.from_dict(_item) for _item in obj.get("links")] if obj.get("links") is not None else None
152
+ })
153
+ return _obj