lusid-sdk 2.0.455__py3-none-any.whl → 2.0.470__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.

Potentially problematic release.


This version of lusid-sdk might be problematic. Click here for more details.

lusid/__init__.py CHANGED
@@ -71,6 +71,7 @@ from lusid.api.scopes_api import ScopesApi
71
71
  from lusid.api.scripted_translation_api import ScriptedTranslationApi
72
72
  from lusid.api.search_api import SearchApi
73
73
  from lusid.api.sequences_api import SequencesApi
74
+ from lusid.api.staging_rule_set_api import StagingRuleSetApi
74
75
  from lusid.api.structured_result_data_api import StructuredResultDataApi
75
76
  from lusid.api.system_configuration_api import SystemConfigurationApi
76
77
  from lusid.api.tax_rule_sets_api import TaxRuleSetsApi
@@ -273,6 +274,7 @@ from lusid.models.create_relation_request import CreateRelationRequest
273
274
  from lusid.models.create_relationship_definition_request import CreateRelationshipDefinitionRequest
274
275
  from lusid.models.create_relationship_request import CreateRelationshipRequest
275
276
  from lusid.models.create_sequence_request import CreateSequenceRequest
277
+ from lusid.models.create_staging_rule_set_request import CreateStagingRuleSetRequest
276
278
  from lusid.models.create_tax_rule_set_request import CreateTaxRuleSetRequest
277
279
  from lusid.models.create_trade_tickets_response import CreateTradeTicketsResponse
278
280
  from lusid.models.create_transaction_portfolio_request import CreateTransactionPortfolioRequest
@@ -625,6 +627,7 @@ from lusid.models.paged_resource_list_of_reconciliation import PagedResourceList
625
627
  from lusid.models.paged_resource_list_of_reference_list_response import PagedResourceListOfReferenceListResponse
626
628
  from lusid.models.paged_resource_list_of_relationship_definition import PagedResourceListOfRelationshipDefinition
627
629
  from lusid.models.paged_resource_list_of_sequence_definition import PagedResourceListOfSequenceDefinition
630
+ from lusid.models.paged_resource_list_of_staging_rule_set import PagedResourceListOfStagingRuleSet
628
631
  from lusid.models.paged_resource_list_of_transaction_template import PagedResourceListOfTransactionTemplate
629
632
  from lusid.models.paged_resource_list_of_transaction_template_specification import PagedResourceListOfTransactionTemplateSpecification
630
633
  from lusid.models.paged_resource_list_of_translation_script_id import PagedResourceListOfTranslationScriptId
@@ -837,6 +840,7 @@ from lusid.models.set_legal_entity_identifiers_request import SetLegalEntityIden
837
840
  from lusid.models.set_legal_entity_properties_request import SetLegalEntityPropertiesRequest
838
841
  from lusid.models.set_person_identifiers_request import SetPersonIdentifiersRequest
839
842
  from lusid.models.set_person_properties_request import SetPersonPropertiesRequest
843
+ from lusid.models.set_share_class_instruments_request import SetShareClassInstrumentsRequest
840
844
  from lusid.models.set_transaction_configuration_alias import SetTransactionConfigurationAlias
841
845
  from lusid.models.set_transaction_configuration_source_request import SetTransactionConfigurationSourceRequest
842
846
  from lusid.models.side_configuration_data import SideConfigurationData
@@ -847,6 +851,10 @@ from lusid.models.sides_definition_request import SidesDefinitionRequest
847
851
  from lusid.models.simple_cash_flow_loan import SimpleCashFlowLoan
848
852
  from lusid.models.simple_instrument import SimpleInstrument
849
853
  from lusid.models.sort_order import SortOrder
854
+ from lusid.models.staging_rule import StagingRule
855
+ from lusid.models.staging_rule_approval_criteria import StagingRuleApprovalCriteria
856
+ from lusid.models.staging_rule_match_criteria import StagingRuleMatchCriteria
857
+ from lusid.models.staging_rule_set import StagingRuleSet
850
858
  from lusid.models.step_schedule import StepSchedule
851
859
  from lusid.models.stock_split_event import StockSplitEvent
852
860
  from lusid.models.stream import Stream
@@ -932,6 +940,7 @@ from lusid.models.update_portfolio_request import UpdatePortfolioRequest
932
940
  from lusid.models.update_property_definition_request import UpdatePropertyDefinitionRequest
933
941
  from lusid.models.update_reconciliation_request import UpdateReconciliationRequest
934
942
  from lusid.models.update_relationship_definition_request import UpdateRelationshipDefinitionRequest
943
+ from lusid.models.update_staging_rule_set_request import UpdateStagingRuleSetRequest
935
944
  from lusid.models.update_tax_rule_set_request import UpdateTaxRuleSetRequest
936
945
  from lusid.models.update_unit_request import UpdateUnitRequest
937
946
  from lusid.models.upsert_cds_flow_conventions_request import UpsertCdsFlowConventionsRequest
@@ -1071,6 +1080,7 @@ __all__ = [
1071
1080
  "ScriptedTranslationApi",
1072
1081
  "SearchApi",
1073
1082
  "SequencesApi",
1083
+ "StagingRuleSetApi",
1074
1084
  "StructuredResultDataApi",
1075
1085
  "SystemConfigurationApi",
1076
1086
  "TaxRuleSetsApi",
@@ -1263,6 +1273,7 @@ __all__ = [
1263
1273
  "CreateRelationshipDefinitionRequest",
1264
1274
  "CreateRelationshipRequest",
1265
1275
  "CreateSequenceRequest",
1276
+ "CreateStagingRuleSetRequest",
1266
1277
  "CreateTaxRuleSetRequest",
1267
1278
  "CreateTradeTicketsResponse",
1268
1279
  "CreateTransactionPortfolioRequest",
@@ -1615,6 +1626,7 @@ __all__ = [
1615
1626
  "PagedResourceListOfReferenceListResponse",
1616
1627
  "PagedResourceListOfRelationshipDefinition",
1617
1628
  "PagedResourceListOfSequenceDefinition",
1629
+ "PagedResourceListOfStagingRuleSet",
1618
1630
  "PagedResourceListOfTransactionTemplate",
1619
1631
  "PagedResourceListOfTransactionTemplateSpecification",
1620
1632
  "PagedResourceListOfTranslationScriptId",
@@ -1827,6 +1839,7 @@ __all__ = [
1827
1839
  "SetLegalEntityPropertiesRequest",
1828
1840
  "SetPersonIdentifiersRequest",
1829
1841
  "SetPersonPropertiesRequest",
1842
+ "SetShareClassInstrumentsRequest",
1830
1843
  "SetTransactionConfigurationAlias",
1831
1844
  "SetTransactionConfigurationSourceRequest",
1832
1845
  "SideConfigurationData",
@@ -1837,6 +1850,10 @@ __all__ = [
1837
1850
  "SimpleCashFlowLoan",
1838
1851
  "SimpleInstrument",
1839
1852
  "SortOrder",
1853
+ "StagingRule",
1854
+ "StagingRuleApprovalCriteria",
1855
+ "StagingRuleMatchCriteria",
1856
+ "StagingRuleSet",
1840
1857
  "StepSchedule",
1841
1858
  "StockSplitEvent",
1842
1859
  "Stream",
@@ -1922,6 +1939,7 @@ __all__ = [
1922
1939
  "UpdatePropertyDefinitionRequest",
1923
1940
  "UpdateReconciliationRequest",
1924
1941
  "UpdateRelationshipDefinitionRequest",
1942
+ "UpdateStagingRuleSetRequest",
1925
1943
  "UpdateTaxRuleSetRequest",
1926
1944
  "UpdateUnitRequest",
1927
1945
  "UpsertCdsFlowConventionsRequest",
lusid/api/__init__.py CHANGED
@@ -55,6 +55,7 @@ from lusid.api.scopes_api import ScopesApi
55
55
  from lusid.api.scripted_translation_api import ScriptedTranslationApi
56
56
  from lusid.api.search_api import SearchApi
57
57
  from lusid.api.sequences_api import SequencesApi
58
+ from lusid.api.staging_rule_set_api import StagingRuleSetApi
58
59
  from lusid.api.structured_result_data_api import StructuredResultDataApi
59
60
  from lusid.api.system_configuration_api import SystemConfigurationApi
60
61
  from lusid.api.tax_rule_sets_api import TaxRuleSetsApi
@@ -119,6 +120,7 @@ __all__ = [
119
120
  "ScriptedTranslationApi",
120
121
  "SearchApi",
121
122
  "SequencesApi",
123
+ "StagingRuleSetApi",
122
124
  "StructuredResultDataApi",
123
125
  "SystemConfigurationApi",
124
126
  "TaxRuleSetsApi",
lusid/api/funds_api.py CHANGED
@@ -32,6 +32,7 @@ from lusid.models.fund_properties import FundProperties
32
32
  from lusid.models.fund_request import FundRequest
33
33
  from lusid.models.model_property import ModelProperty
34
34
  from lusid.models.paged_resource_list_of_fund import PagedResourceListOfFund
35
+ from lusid.models.set_share_class_instruments_request import SetShareClassInstrumentsRequest
35
36
 
36
37
  from lusid.api_client import ApiClient
37
38
  from lusid.api_response import ApiResponse
@@ -769,6 +770,180 @@ class FundsApi:
769
770
  collection_formats=_collection_formats,
770
771
  _request_auth=_params.get('_request_auth'))
771
772
 
773
+ @overload
774
+ async def set_share_class_instruments(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund.")], set_share_class_instruments_request : Annotated[SetShareClassInstrumentsRequest, Field(..., description="The scopes and instrument identifiers for the instruments to be set.")], **kwargs) -> Fund: # noqa: E501
775
+ ...
776
+
777
+ @overload
778
+ def set_share_class_instruments(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund.")], set_share_class_instruments_request : Annotated[SetShareClassInstrumentsRequest, Field(..., description="The scopes and instrument identifiers for the instruments to be set.")], async_req: Optional[bool]=True, **kwargs) -> Fund: # noqa: E501
779
+ ...
780
+
781
+ @validate_arguments
782
+ def set_share_class_instruments(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund.")], set_share_class_instruments_request : Annotated[SetShareClassInstrumentsRequest, Field(..., description="The scopes and instrument identifiers for the instruments to be set.")], async_req: Optional[bool]=None, **kwargs) -> Union[Fund, Awaitable[Fund]]: # noqa: E501
783
+ """[EXPERIMENTAL] SetShareClassInstruments: Set the ShareClass Instruments on a fund. # noqa: E501
784
+
785
+ Update the ShareClass Instruments on an existing fund with the set of instruments provided. # noqa: E501
786
+ This method makes a synchronous HTTP request by default. To make an
787
+ asynchronous HTTP request, please pass async_req=True
788
+
789
+ >>> thread = api.set_share_class_instruments(scope, code, set_share_class_instruments_request, async_req=True)
790
+ >>> result = thread.get()
791
+
792
+ :param scope: The scope of the Fund. (required)
793
+ :type scope: str
794
+ :param code: The code of the Fund. (required)
795
+ :type code: str
796
+ :param set_share_class_instruments_request: The scopes and instrument identifiers for the instruments to be set. (required)
797
+ :type set_share_class_instruments_request: SetShareClassInstrumentsRequest
798
+ :param async_req: Whether to execute the request asynchronously.
799
+ :type async_req: bool, optional
800
+ :param _request_timeout: timeout setting for this request.
801
+ If one number provided, it will be total request
802
+ timeout. It can also be a pair (tuple) of
803
+ (connection, read) timeouts.
804
+ :return: Returns the result object.
805
+ If the method is called asynchronously,
806
+ returns the request thread.
807
+ :rtype: Fund
808
+ """
809
+ kwargs['_return_http_data_only'] = True
810
+ if '_preload_content' in kwargs:
811
+ message = "Error! Please call the set_share_class_instruments_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
812
+ raise ValueError(message)
813
+ if async_req is not None:
814
+ kwargs['async_req'] = async_req
815
+ return self.set_share_class_instruments_with_http_info(scope, code, set_share_class_instruments_request, **kwargs) # noqa: E501
816
+
817
+ @validate_arguments
818
+ def set_share_class_instruments_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund.")], set_share_class_instruments_request : Annotated[SetShareClassInstrumentsRequest, Field(..., description="The scopes and instrument identifiers for the instruments to be set.")], **kwargs) -> ApiResponse: # noqa: E501
819
+ """[EXPERIMENTAL] SetShareClassInstruments: Set the ShareClass Instruments on a fund. # noqa: E501
820
+
821
+ Update the ShareClass Instruments on an existing fund with the set of instruments provided. # noqa: E501
822
+ This method makes a synchronous HTTP request by default. To make an
823
+ asynchronous HTTP request, please pass async_req=True
824
+
825
+ >>> thread = api.set_share_class_instruments_with_http_info(scope, code, set_share_class_instruments_request, async_req=True)
826
+ >>> result = thread.get()
827
+
828
+ :param scope: The scope of the Fund. (required)
829
+ :type scope: str
830
+ :param code: The code of the Fund. (required)
831
+ :type code: str
832
+ :param set_share_class_instruments_request: The scopes and instrument identifiers for the instruments to be set. (required)
833
+ :type set_share_class_instruments_request: SetShareClassInstrumentsRequest
834
+ :param async_req: Whether to execute the request asynchronously.
835
+ :type async_req: bool, optional
836
+ :param _preload_content: if False, the ApiResponse.data will
837
+ be set to none and raw_data will store the
838
+ HTTP response body without reading/decoding.
839
+ Default is True.
840
+ :type _preload_content: bool, optional
841
+ :param _return_http_data_only: response data instead of ApiResponse
842
+ object with status code, headers, etc
843
+ :type _return_http_data_only: bool, optional
844
+ :param _request_timeout: timeout setting for this request. If one
845
+ number provided, it will be total request
846
+ timeout. It can also be a pair (tuple) of
847
+ (connection, read) timeouts.
848
+ :param _request_auth: set to override the auth_settings for an a single
849
+ request; this effectively ignores the authentication
850
+ in the spec for a single request.
851
+ :type _request_auth: dict, optional
852
+ :type _content_type: string, optional: force content-type for the request
853
+ :return: Returns the result object.
854
+ If the method is called asynchronously,
855
+ returns the request thread.
856
+ :rtype: tuple(Fund, status_code(int), headers(HTTPHeaderDict))
857
+ """
858
+
859
+ _params = locals()
860
+
861
+ _all_params = [
862
+ 'scope',
863
+ 'code',
864
+ 'set_share_class_instruments_request'
865
+ ]
866
+ _all_params.extend(
867
+ [
868
+ 'async_req',
869
+ '_return_http_data_only',
870
+ '_preload_content',
871
+ '_request_timeout',
872
+ '_request_auth',
873
+ '_content_type',
874
+ '_headers'
875
+ ]
876
+ )
877
+
878
+ # validate the arguments
879
+ for _key, _val in _params['kwargs'].items():
880
+ if _key not in _all_params:
881
+ raise ApiTypeError(
882
+ "Got an unexpected keyword argument '%s'"
883
+ " to method set_share_class_instruments" % _key
884
+ )
885
+ _params[_key] = _val
886
+ del _params['kwargs']
887
+
888
+ _collection_formats = {}
889
+
890
+ # process the path parameters
891
+ _path_params = {}
892
+ if _params['scope']:
893
+ _path_params['scope'] = _params['scope']
894
+
895
+ if _params['code']:
896
+ _path_params['code'] = _params['code']
897
+
898
+
899
+ # process the query parameters
900
+ _query_params = []
901
+ # process the header parameters
902
+ _header_params = dict(_params.get('_headers', {}))
903
+ # process the form parameters
904
+ _form_params = []
905
+ _files = {}
906
+ # process the body parameter
907
+ _body_params = None
908
+ if _params['set_share_class_instruments_request'] is not None:
909
+ _body_params = _params['set_share_class_instruments_request']
910
+
911
+ # set the HTTP header `Accept`
912
+ _header_params['Accept'] = self.api_client.select_header_accept(
913
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
914
+
915
+ # set the HTTP header `Content-Type`
916
+ _content_types_list = _params.get('_content_type',
917
+ self.api_client.select_header_content_type(
918
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
919
+ if _content_types_list:
920
+ _header_params['Content-Type'] = _content_types_list
921
+
922
+ # authentication setting
923
+ _auth_settings = ['oauth2'] # noqa: E501
924
+
925
+ _response_types_map = {
926
+ '201': "Fund",
927
+ '400': "LusidValidationProblemDetails",
928
+ }
929
+
930
+ return self.api_client.call_api(
931
+ '/api/funds/{scope}/{code}/shareclasses', 'POST',
932
+ _path_params,
933
+ _query_params,
934
+ _header_params,
935
+ body=_body_params,
936
+ post_params=_form_params,
937
+ files=_files,
938
+ response_types_map=_response_types_map,
939
+ auth_settings=_auth_settings,
940
+ async_req=_params.get('async_req'),
941
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
942
+ _preload_content=_params.get('_preload_content', True),
943
+ _request_timeout=_params.get('_request_timeout'),
944
+ collection_formats=_collection_formats,
945
+ _request_auth=_params.get('_request_auth'))
946
+
772
947
  @overload
773
948
  async def upsert_fund_properties(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the Fund to update or insert the properties onto.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the Fund to update or insert the properties onto. Together with the scope this uniquely identifies the Fund.")], request_body : Annotated[Optional[Dict[str, ModelProperty]], Field(description="The properties to be updated or inserted onto the Fund. Each property in the request must be keyed by its unique property key. This has the format {domain}/{scope}/{code} e.g. \"Fund/Manager/Id\".")] = None, **kwargs) -> FundProperties: # noqa: E501
774
949
  ...