lusid-sdk 2.1.861__py3-none-any.whl → 2.1.867__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. lusid/__init__.py +12 -0
  2. lusid/api/funds_api.py +205 -0
  3. lusid/api/investment_accounts_api.py +210 -2
  4. lusid/configuration.py +1 -1
  5. lusid/models/__init__.py +12 -0
  6. lusid/models/basket.py +3 -3
  7. lusid/models/bond.py +3 -3
  8. lusid/models/cap_floor.py +3 -3
  9. lusid/models/cash.py +3 -3
  10. lusid/models/cash_perpetual.py +3 -3
  11. lusid/models/cds_index.py +3 -3
  12. lusid/models/collateral.py +101 -0
  13. lusid/models/collateral_instrument.py +83 -0
  14. lusid/models/complex_bond.py +3 -3
  15. lusid/models/contract_for_difference.py +3 -3
  16. lusid/models/credit_default_swap.py +3 -3
  17. lusid/models/equity.py +3 -3
  18. lusid/models/equity_option.py +3 -3
  19. lusid/models/equity_swap.py +3 -3
  20. lusid/models/exchange_traded_option.py +3 -3
  21. lusid/models/exotic_instrument.py +3 -3
  22. lusid/models/fixed_leg.py +3 -3
  23. lusid/models/flexible_deposit.py +3 -3
  24. lusid/models/flexible_loan.py +3 -3
  25. lusid/models/flexible_repo.py +239 -0
  26. lusid/models/floating_leg.py +3 -3
  27. lusid/models/forward_rate_agreement.py +3 -3
  28. lusid/models/fund_calendar_entry.py +162 -0
  29. lusid/models/fund_calendar_entry_type.py +37 -0
  30. lusid/models/fund_definition_request.py +1 -6
  31. lusid/models/fund_share_class.py +3 -3
  32. lusid/models/funding_leg.py +3 -3
  33. lusid/models/future.py +3 -3
  34. lusid/models/fx_forward.py +3 -3
  35. lusid/models/fx_option.py +3 -3
  36. lusid/models/fx_swap.py +3 -3
  37. lusid/models/inflation_leg.py +3 -3
  38. lusid/models/inflation_linked_bond.py +3 -3
  39. lusid/models/inflation_swap.py +3 -3
  40. lusid/models/instrument_leg.py +3 -3
  41. lusid/models/instrument_type.py +1 -0
  42. lusid/models/interest_rate_swap.py +3 -3
  43. lusid/models/interest_rate_swaption.py +3 -3
  44. lusid/models/investment_portfolio.py +3 -3
  45. lusid/models/loan_facility.py +3 -3
  46. lusid/models/lusid_instrument.py +6 -5
  47. lusid/models/mastered_instrument.py +3 -3
  48. lusid/models/movement_type.py +0 -1
  49. lusid/models/nav_type_definition.py +21 -21
  50. lusid/models/paged_resource_list_of_fund_calendar_entry.py +121 -0
  51. lusid/models/reference_instrument.py +3 -3
  52. lusid/models/repo.py +3 -3
  53. lusid/models/simple_cash_flow_loan.py +3 -3
  54. lusid/models/simple_instrument.py +3 -3
  55. lusid/models/term_deposit.py +3 -3
  56. lusid/models/total_return_swap.py +3 -3
  57. lusid/models/transaction_configuration_movement_data.py +3 -3
  58. lusid/models/transaction_configuration_movement_data_request.py +3 -3
  59. lusid/models/transaction_type_movement.py +1 -1
  60. {lusid_sdk-2.1.861.dist-info → lusid_sdk-2.1.867.dist-info}/METADATA +9 -1
  61. {lusid_sdk-2.1.861.dist-info → lusid_sdk-2.1.867.dist-info}/RECORD +62 -56
  62. {lusid_sdk-2.1.861.dist-info → lusid_sdk-2.1.867.dist-info}/WHEEL +0 -0
lusid/__init__.py CHANGED
@@ -270,6 +270,8 @@ from lusid.models.client import Client
270
270
  from lusid.models.close_event import CloseEvent
271
271
  from lusid.models.close_period_diary_entry_request import ClosePeriodDiaryEntryRequest
272
272
  from lusid.models.closed_period import ClosedPeriod
273
+ from lusid.models.collateral import Collateral
274
+ from lusid.models.collateral_instrument import CollateralInstrument
273
275
  from lusid.models.comparison_attribute_value_pair import ComparisonAttributeValuePair
274
276
  from lusid.models.complete_portfolio import CompletePortfolio
275
277
  from lusid.models.complete_relation import CompleteRelation
@@ -495,6 +497,7 @@ from lusid.models.fixed_leg_all_of_overrides import FixedLegAllOfOverrides
495
497
  from lusid.models.fixed_schedule import FixedSchedule
496
498
  from lusid.models.flexible_deposit import FlexibleDeposit
497
499
  from lusid.models.flexible_loan import FlexibleLoan
500
+ from lusid.models.flexible_repo import FlexibleRepo
498
501
  from lusid.models.flexible_repo_cash_flow_event import FlexibleRepoCashFlowEvent
499
502
  from lusid.models.flexible_repo_collateral_event import FlexibleRepoCollateralEvent
500
503
  from lusid.models.flexible_repo_interest_payment_event import FlexibleRepoInterestPaymentEvent
@@ -506,6 +509,8 @@ from lusid.models.forward_rate_agreement import ForwardRateAgreement
506
509
  from lusid.models.from_recipe import FromRecipe
507
510
  from lusid.models.fund import Fund
508
511
  from lusid.models.fund_amount import FundAmount
512
+ from lusid.models.fund_calendar_entry import FundCalendarEntry
513
+ from lusid.models.fund_calendar_entry_type import FundCalendarEntryType
509
514
  from lusid.models.fund_configuration import FundConfiguration
510
515
  from lusid.models.fund_configuration_properties import FundConfigurationProperties
511
516
  from lusid.models.fund_configuration_request import FundConfigurationRequest
@@ -814,6 +819,7 @@ from lusid.models.paged_resource_list_of_execution import PagedResourceListOfExe
814
819
  from lusid.models.paged_resource_list_of_fee import PagedResourceListOfFee
815
820
  from lusid.models.paged_resource_list_of_fee_type import PagedResourceListOfFeeType
816
821
  from lusid.models.paged_resource_list_of_fund import PagedResourceListOfFund
822
+ from lusid.models.paged_resource_list_of_fund_calendar_entry import PagedResourceListOfFundCalendarEntry
817
823
  from lusid.models.paged_resource_list_of_fund_configuration import PagedResourceListOfFundConfiguration
818
824
  from lusid.models.paged_resource_list_of_general_ledger_profile_response import PagedResourceListOfGeneralLedgerProfileResponse
819
825
  from lusid.models.paged_resource_list_of_group_reconciliation_comparison_result import PagedResourceListOfGroupReconciliationComparisonResult
@@ -1607,6 +1613,8 @@ __all__ = [
1607
1613
  "CloseEvent",
1608
1614
  "ClosePeriodDiaryEntryRequest",
1609
1615
  "ClosedPeriod",
1616
+ "Collateral",
1617
+ "CollateralInstrument",
1610
1618
  "ComparisonAttributeValuePair",
1611
1619
  "CompletePortfolio",
1612
1620
  "CompleteRelation",
@@ -1832,6 +1840,7 @@ __all__ = [
1832
1840
  "FixedSchedule",
1833
1841
  "FlexibleDeposit",
1834
1842
  "FlexibleLoan",
1843
+ "FlexibleRepo",
1835
1844
  "FlexibleRepoCashFlowEvent",
1836
1845
  "FlexibleRepoCollateralEvent",
1837
1846
  "FlexibleRepoInterestPaymentEvent",
@@ -1843,6 +1852,8 @@ __all__ = [
1843
1852
  "FromRecipe",
1844
1853
  "Fund",
1845
1854
  "FundAmount",
1855
+ "FundCalendarEntry",
1856
+ "FundCalendarEntryType",
1846
1857
  "FundConfiguration",
1847
1858
  "FundConfigurationProperties",
1848
1859
  "FundConfigurationRequest",
@@ -2151,6 +2162,7 @@ __all__ = [
2151
2162
  "PagedResourceListOfFee",
2152
2163
  "PagedResourceListOfFeeType",
2153
2164
  "PagedResourceListOfFund",
2165
+ "PagedResourceListOfFundCalendarEntry",
2154
2166
  "PagedResourceListOfFundConfiguration",
2155
2167
  "PagedResourceListOfGeneralLedgerProfileResponse",
2156
2168
  "PagedResourceListOfGroupReconciliationComparisonResult",
lusid/api/funds_api.py CHANGED
@@ -40,6 +40,7 @@ from lusid.models.model_property import ModelProperty
40
40
  from lusid.models.operation import Operation
41
41
  from lusid.models.paged_resource_list_of_fee import PagedResourceListOfFee
42
42
  from lusid.models.paged_resource_list_of_fund import PagedResourceListOfFund
43
+ from lusid.models.paged_resource_list_of_fund_calendar_entry import PagedResourceListOfFundCalendarEntry
43
44
  from lusid.models.paged_resource_list_of_valuation_point_overview import PagedResourceListOfValuationPointOverview
44
45
  from lusid.models.set_share_class_instruments_request import SetShareClassInstrumentsRequest
45
46
  from lusid.models.upsert_valuation_point_request import UpsertValuationPointRequest
@@ -3544,6 +3545,210 @@ class FundsApi:
3544
3545
  _request_auth=_params.get('_request_auth'))
3545
3546
 
3546
3547
 
3548
+ @overload
3549
+ async def list_fund_calendar(self, scope : Annotated[StrictStr, Field(..., description="The Scope for the Fund.")], code : Annotated[StrictStr, Field(..., description="The Code for the Fund.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the Calendar. Defaults to returning the latest version of each Calendar Entry if not specified.")] = None, page : Annotated[Optional[StrictStr], Field( description="The pagination token to use to continue listing Valuation Points; 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)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the results. For example, to filter on the DisplayName, specify \"displayName eq 'VP 1'\". 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, **kwargs) -> PagedResourceListOfFundCalendarEntry: # noqa: E501
3550
+ ...
3551
+
3552
+ @overload
3553
+ def list_fund_calendar(self, scope : Annotated[StrictStr, Field(..., description="The Scope for the Fund.")], code : Annotated[StrictStr, Field(..., description="The Code for the Fund.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the Calendar. Defaults to returning the latest version of each Calendar Entry if not specified.")] = None, page : Annotated[Optional[StrictStr], Field( description="The pagination token to use to continue listing Valuation Points; 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)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the results. For example, to filter on the DisplayName, specify \"displayName eq 'VP 1'\". 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, async_req: Optional[bool]=True, **kwargs) -> PagedResourceListOfFundCalendarEntry: # noqa: E501
3554
+ ...
3555
+
3556
+ @validate_arguments
3557
+ def list_fund_calendar(self, scope : Annotated[StrictStr, Field(..., description="The Scope for the Fund.")], code : Annotated[StrictStr, Field(..., description="The Code for the Fund.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the Calendar. Defaults to returning the latest version of each Calendar Entry if not specified.")] = None, page : Annotated[Optional[StrictStr], Field( description="The pagination token to use to continue listing Valuation Points; 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)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the results. For example, to filter on the DisplayName, specify \"displayName eq 'VP 1'\". 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, async_req: Optional[bool]=None, **kwargs) -> Union[PagedResourceListOfFundCalendarEntry, Awaitable[PagedResourceListOfFundCalendarEntry]]: # noqa: E501
3558
+ """[EXPERIMENTAL] ListFundCalendar: List Fund Calendar. # noqa: E501
3559
+
3560
+ List all the Calendar Entries associated with the Fund. # noqa: E501
3561
+ This method makes a synchronous HTTP request by default. To make an
3562
+ asynchronous HTTP request, please pass async_req=True
3563
+
3564
+ >>> thread = api.list_fund_calendar(scope, code, as_at, page, limit, filter, sort_by, async_req=True)
3565
+ >>> result = thread.get()
3566
+
3567
+ :param scope: The Scope for the Fund. (required)
3568
+ :type scope: str
3569
+ :param code: The Code for the Fund. (required)
3570
+ :type code: str
3571
+ :param as_at: The asAt datetime at which to list the Calendar. Defaults to returning the latest version of each Calendar Entry if not specified.
3572
+ :type as_at: datetime
3573
+ :param page: The pagination token to use to continue listing Valuation Points; 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.
3574
+ :type page: str
3575
+ :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3576
+ :type limit: int
3577
+ :param filter: Expression to filter the results. For example, to filter on the DisplayName, specify \"displayName eq 'VP 1'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3578
+ :type filter: str
3579
+ :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"
3580
+ :type sort_by: List[str]
3581
+ :param async_req: Whether to execute the request asynchronously.
3582
+ :type async_req: bool, optional
3583
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3584
+ :param opts: Configuration options for this request
3585
+ :type opts: ConfigurationOptions, optional
3586
+ :return: Returns the result object.
3587
+ If the method is called asynchronously,
3588
+ returns the request thread.
3589
+ :rtype: PagedResourceListOfFundCalendarEntry
3590
+ """
3591
+ kwargs['_return_http_data_only'] = True
3592
+ if '_preload_content' in kwargs:
3593
+ message = "Error! Please call the list_fund_calendar_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
3594
+ raise ValueError(message)
3595
+ if async_req is not None:
3596
+ kwargs['async_req'] = async_req
3597
+ return self.list_fund_calendar_with_http_info(scope, code, as_at, page, limit, filter, sort_by, **kwargs) # noqa: E501
3598
+
3599
+ @validate_arguments
3600
+ def list_fund_calendar_with_http_info(self, scope : Annotated[StrictStr, Field(..., description="The Scope for the Fund.")], code : Annotated[StrictStr, Field(..., description="The Code for the Fund.")], as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to list the Calendar. Defaults to returning the latest version of each Calendar Entry if not specified.")] = None, page : Annotated[Optional[StrictStr], Field( description="The pagination token to use to continue listing Valuation Points; 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)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the results. For example, to filter on the DisplayName, specify \"displayName eq 'VP 1'\". 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, **kwargs) -> ApiResponse: # noqa: E501
3601
+ """[EXPERIMENTAL] ListFundCalendar: List Fund Calendar. # noqa: E501
3602
+
3603
+ List all the Calendar Entries associated with the Fund. # noqa: E501
3604
+ This method makes a synchronous HTTP request by default. To make an
3605
+ asynchronous HTTP request, please pass async_req=True
3606
+
3607
+ >>> thread = api.list_fund_calendar_with_http_info(scope, code, as_at, page, limit, filter, sort_by, async_req=True)
3608
+ >>> result = thread.get()
3609
+
3610
+ :param scope: The Scope for the Fund. (required)
3611
+ :type scope: str
3612
+ :param code: The Code for the Fund. (required)
3613
+ :type code: str
3614
+ :param as_at: The asAt datetime at which to list the Calendar. Defaults to returning the latest version of each Calendar Entry if not specified.
3615
+ :type as_at: datetime
3616
+ :param page: The pagination token to use to continue listing Valuation Points; 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.
3617
+ :type page: str
3618
+ :param limit: When paginating, limit the results to this number. Defaults to 100 if not specified.
3619
+ :type limit: int
3620
+ :param filter: Expression to filter the results. For example, to filter on the DisplayName, specify \"displayName eq 'VP 1'\". For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.
3621
+ :type filter: str
3622
+ :param sort_by: A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\"
3623
+ :type sort_by: List[str]
3624
+ :param async_req: Whether to execute the request asynchronously.
3625
+ :type async_req: bool, optional
3626
+ :param _preload_content: if False, the ApiResponse.data will
3627
+ be set to none and raw_data will store the
3628
+ HTTP response body without reading/decoding.
3629
+ Default is True.
3630
+ :type _preload_content: bool, optional
3631
+ :param _return_http_data_only: response data instead of ApiResponse
3632
+ object with status code, headers, etc
3633
+ :type _return_http_data_only: bool, optional
3634
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
3635
+ :param opts: Configuration options for this request
3636
+ :type opts: ConfigurationOptions, optional
3637
+ :param _request_auth: set to override the auth_settings for an a single
3638
+ request; this effectively ignores the authentication
3639
+ in the spec for a single request.
3640
+ :type _request_auth: dict, optional
3641
+ :type _content_type: string, optional: force content-type for the request
3642
+ :return: Returns the result object.
3643
+ If the method is called asynchronously,
3644
+ returns the request thread.
3645
+ :rtype: tuple(PagedResourceListOfFundCalendarEntry, status_code(int), headers(HTTPHeaderDict))
3646
+ """
3647
+
3648
+ _params = locals()
3649
+
3650
+ _all_params = [
3651
+ 'scope',
3652
+ 'code',
3653
+ 'as_at',
3654
+ 'page',
3655
+ 'limit',
3656
+ 'filter',
3657
+ 'sort_by'
3658
+ ]
3659
+ _all_params.extend(
3660
+ [
3661
+ 'async_req',
3662
+ '_return_http_data_only',
3663
+ '_preload_content',
3664
+ '_request_timeout',
3665
+ '_request_auth',
3666
+ '_content_type',
3667
+ '_headers',
3668
+ 'opts'
3669
+ ]
3670
+ )
3671
+
3672
+ # validate the arguments
3673
+ for _key, _val in _params['kwargs'].items():
3674
+ if _key not in _all_params:
3675
+ raise ApiTypeError(
3676
+ "Got an unexpected keyword argument '%s'"
3677
+ " to method list_fund_calendar" % _key
3678
+ )
3679
+ _params[_key] = _val
3680
+ del _params['kwargs']
3681
+
3682
+ _collection_formats = {}
3683
+
3684
+ # process the path parameters
3685
+ _path_params = {}
3686
+ if _params['scope']:
3687
+ _path_params['scope'] = _params['scope']
3688
+
3689
+ if _params['code']:
3690
+ _path_params['code'] = _params['code']
3691
+
3692
+
3693
+ # process the query parameters
3694
+ _query_params = []
3695
+ if _params.get('as_at') is not None: # noqa: E501
3696
+ if isinstance(_params['as_at'], datetime):
3697
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
3698
+ else:
3699
+ _query_params.append(('asAt', _params['as_at']))
3700
+
3701
+ if _params.get('page') is not None: # noqa: E501
3702
+ _query_params.append(('page', _params['page']))
3703
+
3704
+ if _params.get('limit') is not None: # noqa: E501
3705
+ _query_params.append(('limit', _params['limit']))
3706
+
3707
+ if _params.get('filter') is not None: # noqa: E501
3708
+ _query_params.append(('filter', _params['filter']))
3709
+
3710
+ if _params.get('sort_by') is not None: # noqa: E501
3711
+ _query_params.append(('sortBy', _params['sort_by']))
3712
+ _collection_formats['sortBy'] = 'multi'
3713
+
3714
+ # process the header parameters
3715
+ _header_params = dict(_params.get('_headers', {}))
3716
+ # process the form parameters
3717
+ _form_params = []
3718
+ _files = {}
3719
+ # process the body parameter
3720
+ _body_params = None
3721
+ # set the HTTP header `Accept`
3722
+ _header_params['Accept'] = self.api_client.select_header_accept(
3723
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
3724
+
3725
+ # authentication setting
3726
+ _auth_settings = ['oauth2'] # noqa: E501
3727
+
3728
+ _response_types_map = {
3729
+ '200': "PagedResourceListOfFundCalendarEntry",
3730
+ '400': "LusidValidationProblemDetails",
3731
+ }
3732
+
3733
+ return self.api_client.call_api(
3734
+ '/api/funds/{scope}/{code}/calendar', 'GET',
3735
+ _path_params,
3736
+ _query_params,
3737
+ _header_params,
3738
+ body=_body_params,
3739
+ post_params=_form_params,
3740
+ files=_files,
3741
+ response_types_map=_response_types_map,
3742
+ auth_settings=_auth_settings,
3743
+ async_req=_params.get('async_req'),
3744
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
3745
+ _preload_content=_params.get('_preload_content', True),
3746
+ _request_timeout=_params.get('_request_timeout'),
3747
+ opts=_params.get('opts'),
3748
+ collection_formats=_collection_formats,
3749
+ _request_auth=_params.get('_request_auth'))
3750
+
3751
+
3547
3752
  @overload
3548
3753
  async def list_funds(self, effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to list the TimeVariant properties for the Funds. 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 Funds. Defaults to returning the latest version of each Fund if not specified.")] = None, page : Annotated[Optional[StrictStr], Field( description="The pagination token to use to continue listing Funds; 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)], Field(description="When paginating, limit the results to this number. Defaults to 100 if not specified.")] = None, filter : Annotated[Optional[StrictStr], Field( description="Expression to filter the results. For example, to filter on the Fund type, specify \"id.Code eq 'Fund1'\". 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 'Fund' domain to decorate onto each Fund. These must take the format {domain}/{scope}/{code}, for example 'Fund/Manager/Id'.")] = None, **kwargs) -> PagedResourceListOfFund: # noqa: E501
3549
3754
  ...
@@ -20,10 +20,13 @@ from pydantic.v1 import validate_arguments, ValidationError
20
20
  from typing import overload, Optional, Union, Awaitable
21
21
 
22
22
  from typing_extensions import Annotated
23
- from pydantic.v1 import Field, constr
23
+ from datetime import datetime
24
24
 
25
- from typing import Dict
25
+ from pydantic.v1 import Field, StrictStr, conlist, constr, validator
26
26
 
27
+ from typing import Dict, Optional
28
+
29
+ from lusid.models.investment_account import InvestmentAccount
27
30
  from lusid.models.upsert_investment_account_request import UpsertInvestmentAccountRequest
28
31
  from lusid.models.upsert_investment_accounts_response import UpsertInvestmentAccountsResponse
29
32
 
@@ -53,6 +56,211 @@ class InvestmentAccountsApi:
53
56
  self.api_client = api_client
54
57
 
55
58
 
59
+ @overload
60
+ async def get_investment_account(self, id_type_scope : Annotated[StrictStr, Field(..., description="Scope of the investment account identifier type.")], id_type_code : Annotated[StrictStr, Field(..., description="Code of the investment account identifier type.")], code : Annotated[StrictStr, Field(..., description="Code of the investment account under specified identifier type's scope and code. This together with stated identifier type uniquely identifies the investment account.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\".")] = None, effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> InvestmentAccount: # noqa: E501
61
+ ...
62
+
63
+ @overload
64
+ def get_investment_account(self, id_type_scope : Annotated[StrictStr, Field(..., description="Scope of the investment account identifier type.")], id_type_code : Annotated[StrictStr, Field(..., description="Code of the investment account identifier type.")], code : Annotated[StrictStr, Field(..., description="Code of the investment account under specified identifier type's scope and code. This together with stated identifier type uniquely identifies the investment account.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\".")] = None, effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=True, **kwargs) -> InvestmentAccount: # noqa: E501
65
+ ...
66
+
67
+ @validate_arguments
68
+ def get_investment_account(self, id_type_scope : Annotated[StrictStr, Field(..., description="Scope of the investment account identifier type.")], id_type_code : Annotated[StrictStr, Field(..., description="Code of the investment account identifier type.")], code : Annotated[StrictStr, Field(..., description="Code of the investment account under specified identifier type's scope and code. This together with stated identifier type uniquely identifies the investment account.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\".")] = None, effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[InvestmentAccount, Awaitable[InvestmentAccount]]: # noqa: E501
69
+ """[EARLY ACCESS] GetInvestmentAccount: Get Investment Account # noqa: E501
70
+
71
+ Retrieve the definition of an investment account. # noqa: E501
72
+ This method makes a synchronous HTTP request by default. To make an
73
+ asynchronous HTTP request, please pass async_req=True
74
+
75
+ >>> thread = api.get_investment_account(id_type_scope, id_type_code, code, property_keys, effective_at, as_at, relationship_definition_ids, async_req=True)
76
+ >>> result = thread.get()
77
+
78
+ :param id_type_scope: Scope of the investment account identifier type. (required)
79
+ :type id_type_scope: str
80
+ :param id_type_code: Code of the investment account identifier type. (required)
81
+ :type id_type_code: str
82
+ :param code: Code of the investment account under specified identifier type's scope and code. This together with stated identifier type uniquely identifies the investment account. (required)
83
+ :type code: str
84
+ :param property_keys: A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\".
85
+ :type property_keys: List[str]
86
+ :param effective_at: The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified.
87
+ :type effective_at: str
88
+ :param as_at: The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified.
89
+ :type as_at: datetime
90
+ :param relationship_definition_ids: A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.
91
+ :type relationship_definition_ids: List[str]
92
+ :param async_req: Whether to execute the request asynchronously.
93
+ :type async_req: bool, optional
94
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
95
+ :param opts: Configuration options for this request
96
+ :type opts: ConfigurationOptions, optional
97
+ :return: Returns the result object.
98
+ If the method is called asynchronously,
99
+ returns the request thread.
100
+ :rtype: InvestmentAccount
101
+ """
102
+ kwargs['_return_http_data_only'] = True
103
+ if '_preload_content' in kwargs:
104
+ message = "Error! Please call the get_investment_account_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
105
+ raise ValueError(message)
106
+ if async_req is not None:
107
+ kwargs['async_req'] = async_req
108
+ return self.get_investment_account_with_http_info(id_type_scope, id_type_code, code, property_keys, effective_at, as_at, relationship_definition_ids, **kwargs) # noqa: E501
109
+
110
+ @validate_arguments
111
+ def get_investment_account_with_http_info(self, id_type_scope : Annotated[StrictStr, Field(..., description="Scope of the investment account identifier type.")], id_type_code : Annotated[StrictStr, Field(..., description="Code of the investment account identifier type.")], code : Annotated[StrictStr, Field(..., description="Code of the investment account under specified identifier type's scope and code. This together with stated identifier type uniquely identifies the investment account.")], property_keys : Annotated[Optional[conlist(StrictStr)], Field(description="A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\".")] = None, effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified.")] = None, as_at : Annotated[Optional[datetime], Field(description="The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified.")] = None, relationship_definition_ids : Annotated[Optional[conlist(StrictStr)], Field(description="A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.")] = None, **kwargs) -> ApiResponse: # noqa: E501
112
+ """[EARLY ACCESS] GetInvestmentAccount: Get Investment Account # noqa: E501
113
+
114
+ Retrieve the definition of an investment account. # noqa: E501
115
+ This method makes a synchronous HTTP request by default. To make an
116
+ asynchronous HTTP request, please pass async_req=True
117
+
118
+ >>> thread = api.get_investment_account_with_http_info(id_type_scope, id_type_code, code, property_keys, effective_at, as_at, relationship_definition_ids, async_req=True)
119
+ >>> result = thread.get()
120
+
121
+ :param id_type_scope: Scope of the investment account identifier type. (required)
122
+ :type id_type_scope: str
123
+ :param id_type_code: Code of the investment account identifier type. (required)
124
+ :type id_type_code: str
125
+ :param code: Code of the investment account under specified identifier type's scope and code. This together with stated identifier type uniquely identifies the investment account. (required)
126
+ :type code: str
127
+ :param property_keys: A list of property keys or identifier types (as property keys) from the \"InvestmentAccount\" domain to include for found investment account, or from any domain that supports relationships to decorate onto related entities. These take the format {domain}/{scope}/{code} e.g. \"InvestmentAccount/ContactDetails/Address\".
128
+ :type property_keys: List[str]
129
+ :param effective_at: The effective datetime or cut label at which to retrieve the investment account. Defaults to the current LUSID system datetime if not specified.
130
+ :type effective_at: str
131
+ :param as_at: The asAt datetime at which to retrieve the investment account. Defaults to return the latest version of the investment account if not specified.
132
+ :type as_at: datetime
133
+ :param relationship_definition_ids: A list of relationship definitions that are used to decorate related entities onto the investment account in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.
134
+ :type relationship_definition_ids: List[str]
135
+ :param async_req: Whether to execute the request asynchronously.
136
+ :type async_req: bool, optional
137
+ :param _preload_content: if False, the ApiResponse.data will
138
+ be set to none and raw_data will store the
139
+ HTTP response body without reading/decoding.
140
+ Default is True.
141
+ :type _preload_content: bool, optional
142
+ :param _return_http_data_only: response data instead of ApiResponse
143
+ object with status code, headers, etc
144
+ :type _return_http_data_only: bool, optional
145
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
146
+ :param opts: Configuration options for this request
147
+ :type opts: ConfigurationOptions, optional
148
+ :param _request_auth: set to override the auth_settings for an a single
149
+ request; this effectively ignores the authentication
150
+ in the spec for a single request.
151
+ :type _request_auth: dict, optional
152
+ :type _content_type: string, optional: force content-type for the request
153
+ :return: Returns the result object.
154
+ If the method is called asynchronously,
155
+ returns the request thread.
156
+ :rtype: tuple(InvestmentAccount, status_code(int), headers(HTTPHeaderDict))
157
+ """
158
+
159
+ _params = locals()
160
+
161
+ _all_params = [
162
+ 'id_type_scope',
163
+ 'id_type_code',
164
+ 'code',
165
+ 'property_keys',
166
+ 'effective_at',
167
+ 'as_at',
168
+ 'relationship_definition_ids'
169
+ ]
170
+ _all_params.extend(
171
+ [
172
+ 'async_req',
173
+ '_return_http_data_only',
174
+ '_preload_content',
175
+ '_request_timeout',
176
+ '_request_auth',
177
+ '_content_type',
178
+ '_headers',
179
+ 'opts'
180
+ ]
181
+ )
182
+
183
+ # validate the arguments
184
+ for _key, _val in _params['kwargs'].items():
185
+ if _key not in _all_params:
186
+ raise ApiTypeError(
187
+ "Got an unexpected keyword argument '%s'"
188
+ " to method get_investment_account" % _key
189
+ )
190
+ _params[_key] = _val
191
+ del _params['kwargs']
192
+
193
+ _collection_formats = {}
194
+
195
+ # process the path parameters
196
+ _path_params = {}
197
+ if _params['id_type_scope']:
198
+ _path_params['idTypeScope'] = _params['id_type_scope']
199
+
200
+ if _params['id_type_code']:
201
+ _path_params['idTypeCode'] = _params['id_type_code']
202
+
203
+ if _params['code']:
204
+ _path_params['code'] = _params['code']
205
+
206
+
207
+ # process the query parameters
208
+ _query_params = []
209
+ if _params.get('property_keys') is not None: # noqa: E501
210
+ _query_params.append(('propertyKeys', _params['property_keys']))
211
+ _collection_formats['propertyKeys'] = 'multi'
212
+
213
+ if _params.get('effective_at') is not None: # noqa: E501
214
+ _query_params.append(('effectiveAt', _params['effective_at']))
215
+
216
+ if _params.get('as_at') is not None: # noqa: E501
217
+ if isinstance(_params['as_at'], datetime):
218
+ _query_params.append(('asAt', _params['as_at'].strftime(self.api_client.configuration.datetime_format)))
219
+ else:
220
+ _query_params.append(('asAt', _params['as_at']))
221
+
222
+ if _params.get('relationship_definition_ids') is not None: # noqa: E501
223
+ _query_params.append(('relationshipDefinitionIds', _params['relationship_definition_ids']))
224
+ _collection_formats['relationshipDefinitionIds'] = 'multi'
225
+
226
+ # process the header parameters
227
+ _header_params = dict(_params.get('_headers', {}))
228
+ # process the form parameters
229
+ _form_params = []
230
+ _files = {}
231
+ # process the body parameter
232
+ _body_params = None
233
+ # set the HTTP header `Accept`
234
+ _header_params['Accept'] = self.api_client.select_header_accept(
235
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
236
+
237
+ # authentication setting
238
+ _auth_settings = ['oauth2'] # noqa: E501
239
+
240
+ _response_types_map = {
241
+ '200': "InvestmentAccount",
242
+ '400': "LusidValidationProblemDetails",
243
+ }
244
+
245
+ return self.api_client.call_api(
246
+ '/api/investmentaccounts/{idTypeScope}/{idTypeCode}/{code}', 'GET',
247
+ _path_params,
248
+ _query_params,
249
+ _header_params,
250
+ body=_body_params,
251
+ post_params=_form_params,
252
+ files=_files,
253
+ response_types_map=_response_types_map,
254
+ auth_settings=_auth_settings,
255
+ async_req=_params.get('async_req'),
256
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
257
+ _preload_content=_params.get('_preload_content', True),
258
+ _request_timeout=_params.get('_request_timeout'),
259
+ opts=_params.get('opts'),
260
+ collection_formats=_collection_formats,
261
+ _request_auth=_params.get('_request_auth'))
262
+
263
+
56
264
  @overload
57
265
  async def upsert_investment_accounts(self, success_mode : Annotated[StrictStr, Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, UpsertInvestmentAccountRequest], Field(..., description="A collection of requests to create or update Investment Accounts.")], **kwargs) -> UpsertInvestmentAccountsResponse: # noqa: E501
58
266
  ...
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.8022\n"\
448
+ "Version of the API: 0.11.8033\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
@@ -181,6 +181,8 @@ from lusid.models.client import Client
181
181
  from lusid.models.close_event import CloseEvent
182
182
  from lusid.models.close_period_diary_entry_request import ClosePeriodDiaryEntryRequest
183
183
  from lusid.models.closed_period import ClosedPeriod
184
+ from lusid.models.collateral import Collateral
185
+ from lusid.models.collateral_instrument import CollateralInstrument
184
186
  from lusid.models.comparison_attribute_value_pair import ComparisonAttributeValuePair
185
187
  from lusid.models.complete_portfolio import CompletePortfolio
186
188
  from lusid.models.complete_relation import CompleteRelation
@@ -406,6 +408,7 @@ from lusid.models.fixed_leg_all_of_overrides import FixedLegAllOfOverrides
406
408
  from lusid.models.fixed_schedule import FixedSchedule
407
409
  from lusid.models.flexible_deposit import FlexibleDeposit
408
410
  from lusid.models.flexible_loan import FlexibleLoan
411
+ from lusid.models.flexible_repo import FlexibleRepo
409
412
  from lusid.models.flexible_repo_cash_flow_event import FlexibleRepoCashFlowEvent
410
413
  from lusid.models.flexible_repo_collateral_event import FlexibleRepoCollateralEvent
411
414
  from lusid.models.flexible_repo_interest_payment_event import FlexibleRepoInterestPaymentEvent
@@ -417,6 +420,8 @@ from lusid.models.forward_rate_agreement import ForwardRateAgreement
417
420
  from lusid.models.from_recipe import FromRecipe
418
421
  from lusid.models.fund import Fund
419
422
  from lusid.models.fund_amount import FundAmount
423
+ from lusid.models.fund_calendar_entry import FundCalendarEntry
424
+ from lusid.models.fund_calendar_entry_type import FundCalendarEntryType
420
425
  from lusid.models.fund_configuration import FundConfiguration
421
426
  from lusid.models.fund_configuration_properties import FundConfigurationProperties
422
427
  from lusid.models.fund_configuration_request import FundConfigurationRequest
@@ -725,6 +730,7 @@ from lusid.models.paged_resource_list_of_execution import PagedResourceListOfExe
725
730
  from lusid.models.paged_resource_list_of_fee import PagedResourceListOfFee
726
731
  from lusid.models.paged_resource_list_of_fee_type import PagedResourceListOfFeeType
727
732
  from lusid.models.paged_resource_list_of_fund import PagedResourceListOfFund
733
+ from lusid.models.paged_resource_list_of_fund_calendar_entry import PagedResourceListOfFundCalendarEntry
728
734
  from lusid.models.paged_resource_list_of_fund_configuration import PagedResourceListOfFundConfiguration
729
735
  from lusid.models.paged_resource_list_of_general_ledger_profile_response import PagedResourceListOfGeneralLedgerProfileResponse
730
736
  from lusid.models.paged_resource_list_of_group_reconciliation_comparison_result import PagedResourceListOfGroupReconciliationComparisonResult
@@ -1430,6 +1436,8 @@ __all__ = [
1430
1436
  "CloseEvent",
1431
1437
  "ClosePeriodDiaryEntryRequest",
1432
1438
  "ClosedPeriod",
1439
+ "Collateral",
1440
+ "CollateralInstrument",
1433
1441
  "ComparisonAttributeValuePair",
1434
1442
  "CompletePortfolio",
1435
1443
  "CompleteRelation",
@@ -1655,6 +1663,7 @@ __all__ = [
1655
1663
  "FixedSchedule",
1656
1664
  "FlexibleDeposit",
1657
1665
  "FlexibleLoan",
1666
+ "FlexibleRepo",
1658
1667
  "FlexibleRepoCashFlowEvent",
1659
1668
  "FlexibleRepoCollateralEvent",
1660
1669
  "FlexibleRepoInterestPaymentEvent",
@@ -1666,6 +1675,8 @@ __all__ = [
1666
1675
  "FromRecipe",
1667
1676
  "Fund",
1668
1677
  "FundAmount",
1678
+ "FundCalendarEntry",
1679
+ "FundCalendarEntryType",
1669
1680
  "FundConfiguration",
1670
1681
  "FundConfigurationProperties",
1671
1682
  "FundConfigurationRequest",
@@ -1974,6 +1985,7 @@ __all__ = [
1974
1985
  "PagedResourceListOfFee",
1975
1986
  "PagedResourceListOfFeeType",
1976
1987
  "PagedResourceListOfFund",
1988
+ "PagedResourceListOfFundCalendarEntry",
1977
1989
  "PagedResourceListOfFundConfiguration",
1978
1990
  "PagedResourceListOfGeneralLedgerProfileResponse",
1979
1991
  "PagedResourceListOfGroupReconciliationComparisonResult",
lusid/models/basket.py CHANGED
@@ -31,7 +31,7 @@ class Basket(LusidInstrument):
31
31
  basket_name: BasketIdentifier = Field(..., alias="basketName")
32
32
  basket_type: StrictStr = Field(...,alias="basketType", description="What contents does the basket have. The validation will check that the instrument types contained match those expected. Supported string (enumeration) values are: [Bonds, Credits, Equities, EquitySwap].")
33
33
  weighted_instruments: WeightedInstruments = Field(..., alias="weightedInstruments")
34
- instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit")
34
+ instrument_type: StrictStr = Field(...,alias="instrumentType", description="The available values are: QuotedSecurity, InterestRateSwap, FxForward, Future, ExoticInstrument, FxOption, CreditDefaultSwap, InterestRateSwaption, Bond, EquityOption, FixedLeg, FloatingLeg, BespokeCashFlowsLeg, Unknown, TermDeposit, ContractForDifference, EquitySwap, CashPerpetual, CapFloor, CashSettled, CdsIndex, Basket, FundingLeg, FxSwap, ForwardRateAgreement, SimpleInstrument, Repo, Equity, ExchangeTradedOption, ReferenceInstrument, ComplexBond, InflationLinkedBond, InflationSwap, SimpleCashFlowLoan, TotalReturnSwap, InflationLeg, FundShareClass, FlexibleLoan, UnsettledCash, Cash, MasteredInstrument, LoanFacility, FlexibleDeposit, FlexibleRepo")
35
35
  additional_properties: Dict[str, Any] = {}
36
36
  __properties = ["instrumentType", "basketName", "basketType", "weightedInstruments"]
37
37
 
@@ -90,8 +90,8 @@ class Basket(LusidInstrument):
90
90
  if "instrument_type" != "type":
91
91
  return value
92
92
 
93
- if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit'):
94
- raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit')")
93
+ if value not in ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit', 'FlexibleRepo'):
94
+ raise ValueError("must be one of enum values ('QuotedSecurity', 'InterestRateSwap', 'FxForward', 'Future', 'ExoticInstrument', 'FxOption', 'CreditDefaultSwap', 'InterestRateSwaption', 'Bond', 'EquityOption', 'FixedLeg', 'FloatingLeg', 'BespokeCashFlowsLeg', 'Unknown', 'TermDeposit', 'ContractForDifference', 'EquitySwap', 'CashPerpetual', 'CapFloor', 'CashSettled', 'CdsIndex', 'Basket', 'FundingLeg', 'FxSwap', 'ForwardRateAgreement', 'SimpleInstrument', 'Repo', 'Equity', 'ExchangeTradedOption', 'ReferenceInstrument', 'ComplexBond', 'InflationLinkedBond', 'InflationSwap', 'SimpleCashFlowLoan', 'TotalReturnSwap', 'InflationLeg', 'FundShareClass', 'FlexibleLoan', 'UnsettledCash', 'Cash', 'MasteredInstrument', 'LoanFacility', 'FlexibleDeposit', 'FlexibleRepo')")
95
95
  return value
96
96
 
97
97
  class Config: