lusid-sdk 2.1.726__py3-none-any.whl → 2.1.728__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.
@@ -76,22 +76,22 @@ class InstrumentsApi:
76
76
 
77
77
 
78
78
  @overload
79
- async def batch_upsert_instrument_properties(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, **kwargs) -> BatchUpsertInstrumentPropertiesResponse: # noqa: E501
79
+ async def batch_upsert_instrument_properties(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> BatchUpsertInstrumentPropertiesResponse: # noqa: E501
80
80
  ...
81
81
 
82
82
  @overload
83
- def batch_upsert_instrument_properties(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchUpsertInstrumentPropertiesResponse: # noqa: E501
83
+ def batch_upsert_instrument_properties(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchUpsertInstrumentPropertiesResponse: # noqa: E501
84
84
  ...
85
85
 
86
86
  @validate_arguments
87
- def batch_upsert_instrument_properties(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchUpsertInstrumentPropertiesResponse, Awaitable[BatchUpsertInstrumentPropertiesResponse]]: # noqa: E501
87
+ def batch_upsert_instrument_properties(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchUpsertInstrumentPropertiesResponse, Awaitable[BatchUpsertInstrumentPropertiesResponse]]: # noqa: E501
88
88
  """BatchUpsertInstrumentProperties: Batch upsert instruments properties # noqa: E501
89
89
 
90
90
  Create or update one or more properties for particular instruments. Each instrument property is updated if it exists and created if it does not. For any failures, a reason is provided. Properties have an <i>effectiveFrom</i> datetime from which the property is valid, and an <i>effectiveUntil</i> datetime until which the property is valid. Not supplying an <i>effectiveUntil</i> datetime results in the property being valid indefinitely, or until the next <i>effectiveFrom</i> datetime of the property. # noqa: E501
91
91
  This method makes a synchronous HTTP request by default. To make an
92
92
  asynchronous HTTP request, please pass async_req=True
93
93
 
94
- >>> thread = api.batch_upsert_instrument_properties(request_body, scope, identifier_effective_at, success_mode, async_req=True)
94
+ >>> thread = api.batch_upsert_instrument_properties(request_body, scope, identifier_effective_at, success_mode, data_model_scope, data_model_code, async_req=True)
95
95
  >>> result = thread.get()
96
96
 
97
97
  :param request_body: A list of instruments and associated instrument properties to create or update. (required)
@@ -102,6 +102,10 @@ class InstrumentsApi:
102
102
  :type identifier_effective_at: str
103
103
  :param success_mode: Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.
104
104
  :type success_mode: str
105
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
106
+ :type data_model_scope: str
107
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
108
+ :type data_model_code: str
105
109
  :param async_req: Whether to execute the request asynchronously.
106
110
  :type async_req: bool, optional
107
111
  :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
@@ -118,17 +122,17 @@ class InstrumentsApi:
118
122
  raise ValueError(message)
119
123
  if async_req is not None:
120
124
  kwargs['async_req'] = async_req
121
- return self.batch_upsert_instrument_properties_with_http_info(request_body, scope, identifier_effective_at, success_mode, **kwargs) # noqa: E501
125
+ return self.batch_upsert_instrument_properties_with_http_info(request_body, scope, identifier_effective_at, success_mode, data_model_scope, data_model_code, **kwargs) # noqa: E501
122
126
 
123
127
  @validate_arguments
124
- def batch_upsert_instrument_properties_with_http_info(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, **kwargs) -> ApiResponse: # noqa: E501
128
+ def batch_upsert_instrument_properties_with_http_info(self, request_body : Annotated[Dict[str, UpsertInstrumentPropertyRequest], Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, identifier_effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.")] = None, success_mode : Annotated[Optional[StrictStr], Field( description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> ApiResponse: # noqa: E501
125
129
  """BatchUpsertInstrumentProperties: Batch upsert instruments properties # noqa: E501
126
130
 
127
131
  Create or update one or more properties for particular instruments. Each instrument property is updated if it exists and created if it does not. For any failures, a reason is provided. Properties have an <i>effectiveFrom</i> datetime from which the property is valid, and an <i>effectiveUntil</i> datetime until which the property is valid. Not supplying an <i>effectiveUntil</i> datetime results in the property being valid indefinitely, or until the next <i>effectiveFrom</i> datetime of the property. # noqa: E501
128
132
  This method makes a synchronous HTTP request by default. To make an
129
133
  asynchronous HTTP request, please pass async_req=True
130
134
 
131
- >>> thread = api.batch_upsert_instrument_properties_with_http_info(request_body, scope, identifier_effective_at, success_mode, async_req=True)
135
+ >>> thread = api.batch_upsert_instrument_properties_with_http_info(request_body, scope, identifier_effective_at, success_mode, data_model_scope, data_model_code, async_req=True)
132
136
  >>> result = thread.get()
133
137
 
134
138
  :param request_body: A list of instruments and associated instrument properties to create or update. (required)
@@ -139,6 +143,10 @@ class InstrumentsApi:
139
143
  :type identifier_effective_at: str
140
144
  :param success_mode: Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.
141
145
  :type success_mode: str
146
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
147
+ :type data_model_scope: str
148
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
149
+ :type data_model_code: str
142
150
  :param async_req: Whether to execute the request asynchronously.
143
151
  :type async_req: bool, optional
144
152
  :param _preload_content: if False, the ApiResponse.data will
@@ -169,7 +177,9 @@ class InstrumentsApi:
169
177
  'request_body',
170
178
  'scope',
171
179
  'identifier_effective_at',
172
- 'success_mode'
180
+ 'success_mode',
181
+ 'data_model_scope',
182
+ 'data_model_code'
173
183
  ]
174
184
  _all_params.extend(
175
185
  [
@@ -210,6 +220,12 @@ class InstrumentsApi:
210
220
  if _params.get('success_mode') is not None: # noqa: E501
211
221
  _query_params.append(('successMode', _params['success_mode']))
212
222
 
223
+ if _params.get('data_model_scope') is not None: # noqa: E501
224
+ _query_params.append(('dataModelScope', _params['data_model_scope']))
225
+
226
+ if _params.get('data_model_code') is not None: # noqa: E501
227
+ _query_params.append(('dataModelCode', _params['data_model_code']))
228
+
213
229
  # process the header parameters
214
230
  _header_params = dict(_params.get('_headers', {}))
215
231
  # process the form parameters
@@ -614,22 +630,22 @@ class InstrumentsApi:
614
630
 
615
631
 
616
632
  @overload
617
- async def delete_instrument_properties(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, **kwargs) -> DeleteInstrumentPropertiesResponse: # noqa: E501
633
+ async def delete_instrument_properties(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> DeleteInstrumentPropertiesResponse: # noqa: E501
618
634
  ...
619
635
 
620
636
  @overload
621
- def delete_instrument_properties(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, async_req: Optional[bool]=True, **kwargs) -> DeleteInstrumentPropertiesResponse: # noqa: E501
637
+ def delete_instrument_properties(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=True, **kwargs) -> DeleteInstrumentPropertiesResponse: # noqa: E501
622
638
  ...
623
639
 
624
640
  @validate_arguments
625
- def delete_instrument_properties(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[DeleteInstrumentPropertiesResponse, Awaitable[DeleteInstrumentPropertiesResponse]]: # noqa: E501
641
+ def delete_instrument_properties(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[DeleteInstrumentPropertiesResponse, Awaitable[DeleteInstrumentPropertiesResponse]]: # noqa: E501
626
642
  """[EARLY ACCESS] DeleteInstrumentProperties: Delete instrument properties # noqa: E501
627
643
 
628
644
  Delete one or more properties from a particular instrument. If the properties are time-variant then an effective datetime from which to delete properties must be specified. If the properties are perpetual then it is invalid to specify an effective datetime for deletion. # noqa: E501
629
645
  This method makes a synchronous HTTP request by default. To make an
630
646
  asynchronous HTTP request, please pass async_req=True
631
647
 
632
- >>> thread = api.delete_instrument_properties(identifier_type, identifier, request_body, effective_at, scope, async_req=True)
648
+ >>> thread = api.delete_instrument_properties(identifier_type, identifier, request_body, effective_at, scope, data_model_scope, data_model_code, async_req=True)
633
649
  >>> result = thread.get()
634
650
 
635
651
  :param identifier_type: The unique identifier type to search, for example 'Figi'. (required)
@@ -642,6 +658,10 @@ class InstrumentsApi:
642
658
  :type effective_at: str
643
659
  :param scope: The scope in which the instrument lies. When not supplied the scope is 'default'.
644
660
  :type scope: str
661
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
662
+ :type data_model_scope: str
663
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
664
+ :type data_model_code: str
645
665
  :param async_req: Whether to execute the request asynchronously.
646
666
  :type async_req: bool, optional
647
667
  :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
@@ -658,17 +678,17 @@ class InstrumentsApi:
658
678
  raise ValueError(message)
659
679
  if async_req is not None:
660
680
  kwargs['async_req'] = async_req
661
- return self.delete_instrument_properties_with_http_info(identifier_type, identifier, request_body, effective_at, scope, **kwargs) # noqa: E501
681
+ return self.delete_instrument_properties_with_http_info(identifier_type, identifier, request_body, effective_at, scope, data_model_scope, data_model_code, **kwargs) # noqa: E501
662
682
 
663
683
  @validate_arguments
664
- def delete_instrument_properties_with_http_info(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
684
+ def delete_instrument_properties_with_http_info(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], request_body : Annotated[conlist(StrictStr), Field(..., description="A list of property keys from the 'Instruments' domain whose properties to delete.")], effective_at : Annotated[Optional[StrictStr], Field( description="The effective datetime or cut label at which to delete time-variant properties from. The property must exist at the specified 'effectiveAt' datetime. If the 'effectiveAt' is not provided or is before the time-variant property exists then a failure is returned. Do not specify this parameter if any of the properties to delete are perpetual.")] = None, scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> ApiResponse: # noqa: E501
665
685
  """[EARLY ACCESS] DeleteInstrumentProperties: Delete instrument properties # noqa: E501
666
686
 
667
687
  Delete one or more properties from a particular instrument. If the properties are time-variant then an effective datetime from which to delete properties must be specified. If the properties are perpetual then it is invalid to specify an effective datetime for deletion. # noqa: E501
668
688
  This method makes a synchronous HTTP request by default. To make an
669
689
  asynchronous HTTP request, please pass async_req=True
670
690
 
671
- >>> thread = api.delete_instrument_properties_with_http_info(identifier_type, identifier, request_body, effective_at, scope, async_req=True)
691
+ >>> thread = api.delete_instrument_properties_with_http_info(identifier_type, identifier, request_body, effective_at, scope, data_model_scope, data_model_code, async_req=True)
672
692
  >>> result = thread.get()
673
693
 
674
694
  :param identifier_type: The unique identifier type to search, for example 'Figi'. (required)
@@ -681,6 +701,10 @@ class InstrumentsApi:
681
701
  :type effective_at: str
682
702
  :param scope: The scope in which the instrument lies. When not supplied the scope is 'default'.
683
703
  :type scope: str
704
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
705
+ :type data_model_scope: str
706
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
707
+ :type data_model_code: str
684
708
  :param async_req: Whether to execute the request asynchronously.
685
709
  :type async_req: bool, optional
686
710
  :param _preload_content: if False, the ApiResponse.data will
@@ -712,7 +736,9 @@ class InstrumentsApi:
712
736
  'identifier',
713
737
  'request_body',
714
738
  'effective_at',
715
- 'scope'
739
+ 'scope',
740
+ 'data_model_scope',
741
+ 'data_model_code'
716
742
  ]
717
743
  _all_params.extend(
718
744
  [
@@ -756,6 +782,12 @@ class InstrumentsApi:
756
782
  if _params.get('scope') is not None: # noqa: E501
757
783
  _query_params.append(('scope', _params['scope']))
758
784
 
785
+ if _params.get('data_model_scope') is not None: # noqa: E501
786
+ _query_params.append(('dataModelScope', _params['data_model_scope']))
787
+
788
+ if _params.get('data_model_code') is not None: # noqa: E501
789
+ _query_params.append(('dataModelCode', _params['data_model_code']))
790
+
759
791
  # process the header parameters
760
792
  _header_params = dict(_params.get('_headers', {}))
761
793
  # process the form parameters
@@ -3511,22 +3543,22 @@ class InstrumentsApi:
3511
3543
 
3512
3544
 
3513
3545
  @overload
3514
- async def update_instrument_identifier(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, **kwargs) -> Instrument: # noqa: E501
3546
+ async def update_instrument_identifier(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> Instrument: # noqa: E501
3515
3547
  ...
3516
3548
 
3517
3549
  @overload
3518
- def update_instrument_identifier(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, async_req: Optional[bool]=True, **kwargs) -> Instrument: # noqa: E501
3550
+ def update_instrument_identifier(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=True, **kwargs) -> Instrument: # noqa: E501
3519
3551
  ...
3520
3552
 
3521
3553
  @validate_arguments
3522
- def update_instrument_identifier(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Instrument, Awaitable[Instrument]]: # noqa: E501
3554
+ def update_instrument_identifier(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[Instrument, Awaitable[Instrument]]: # noqa: E501
3523
3555
  """UpdateInstrumentIdentifier: Update instrument identifier # noqa: E501
3524
3556
 
3525
3557
  Create, update or delete a particular instrument identifier for an instrument. To delete the identifier, leave the value unspecified in the request. If not being deleted, the identifier is updated if it exists and created if it does not. # noqa: E501
3526
3558
  This method makes a synchronous HTTP request by default. To make an
3527
3559
  asynchronous HTTP request, please pass async_req=True
3528
3560
 
3529
- >>> thread = api.update_instrument_identifier(identifier_type, identifier, update_instrument_identifier_request, scope, async_req=True)
3561
+ >>> thread = api.update_instrument_identifier(identifier_type, identifier, update_instrument_identifier_request, scope, data_model_scope, data_model_code, async_req=True)
3530
3562
  >>> result = thread.get()
3531
3563
 
3532
3564
  :param identifier_type: The unique identifier type to search, for example 'Figi'. (required)
@@ -3537,6 +3569,10 @@ class InstrumentsApi:
3537
3569
  :type update_instrument_identifier_request: UpdateInstrumentIdentifierRequest
3538
3570
  :param scope: The scope in which the instrument lies. When not supplied the scope is 'default'.
3539
3571
  :type scope: str
3572
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
3573
+ :type data_model_scope: str
3574
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
3575
+ :type data_model_code: str
3540
3576
  :param async_req: Whether to execute the request asynchronously.
3541
3577
  :type async_req: bool, optional
3542
3578
  :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
@@ -3553,17 +3589,17 @@ class InstrumentsApi:
3553
3589
  raise ValueError(message)
3554
3590
  if async_req is not None:
3555
3591
  kwargs['async_req'] = async_req
3556
- return self.update_instrument_identifier_with_http_info(identifier_type, identifier, update_instrument_identifier_request, scope, **kwargs) # noqa: E501
3592
+ return self.update_instrument_identifier_with_http_info(identifier_type, identifier, update_instrument_identifier_request, scope, data_model_scope, data_model_code, **kwargs) # noqa: E501
3557
3593
 
3558
3594
  @validate_arguments
3559
- def update_instrument_identifier_with_http_info(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3595
+ def update_instrument_identifier_with_http_info(self, identifier_type : Annotated[StrictStr, Field(..., description="The unique identifier type to search, for example 'Figi'.")], identifier : Annotated[StrictStr, Field(..., description="An <i>identifierType</i> value to use to identify the instrument, for example 'BBG000BLNNV0'.")], update_instrument_identifier_request : Annotated[UpdateInstrumentIdentifierRequest, Field(..., description="The identifier to update or delete. This need not be the same value as the 'identifier' parameter used to retrieve the instrument.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> ApiResponse: # noqa: E501
3560
3596
  """UpdateInstrumentIdentifier: Update instrument identifier # noqa: E501
3561
3597
 
3562
3598
  Create, update or delete a particular instrument identifier for an instrument. To delete the identifier, leave the value unspecified in the request. If not being deleted, the identifier is updated if it exists and created if it does not. # noqa: E501
3563
3599
  This method makes a synchronous HTTP request by default. To make an
3564
3600
  asynchronous HTTP request, please pass async_req=True
3565
3601
 
3566
- >>> thread = api.update_instrument_identifier_with_http_info(identifier_type, identifier, update_instrument_identifier_request, scope, async_req=True)
3602
+ >>> thread = api.update_instrument_identifier_with_http_info(identifier_type, identifier, update_instrument_identifier_request, scope, data_model_scope, data_model_code, async_req=True)
3567
3603
  >>> result = thread.get()
3568
3604
 
3569
3605
  :param identifier_type: The unique identifier type to search, for example 'Figi'. (required)
@@ -3574,6 +3610,10 @@ class InstrumentsApi:
3574
3610
  :type update_instrument_identifier_request: UpdateInstrumentIdentifierRequest
3575
3611
  :param scope: The scope in which the instrument lies. When not supplied the scope is 'default'.
3576
3612
  :type scope: str
3613
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
3614
+ :type data_model_scope: str
3615
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
3616
+ :type data_model_code: str
3577
3617
  :param async_req: Whether to execute the request asynchronously.
3578
3618
  :type async_req: bool, optional
3579
3619
  :param _preload_content: if False, the ApiResponse.data will
@@ -3604,7 +3644,9 @@ class InstrumentsApi:
3604
3644
  'identifier_type',
3605
3645
  'identifier',
3606
3646
  'update_instrument_identifier_request',
3607
- 'scope'
3647
+ 'scope',
3648
+ 'data_model_scope',
3649
+ 'data_model_code'
3608
3650
  ]
3609
3651
  _all_params.extend(
3610
3652
  [
@@ -3645,6 +3687,12 @@ class InstrumentsApi:
3645
3687
  if _params.get('scope') is not None: # noqa: E501
3646
3688
  _query_params.append(('scope', _params['scope']))
3647
3689
 
3690
+ if _params.get('data_model_scope') is not None: # noqa: E501
3691
+ _query_params.append(('dataModelScope', _params['data_model_scope']))
3692
+
3693
+ if _params.get('data_model_code') is not None: # noqa: E501
3694
+ _query_params.append(('dataModelCode', _params['data_model_code']))
3695
+
3648
3696
  # process the header parameters
3649
3697
  _header_params = dict(_params.get('_headers', {}))
3650
3698
  # process the form parameters
@@ -3877,28 +3925,32 @@ class InstrumentsApi:
3877
3925
 
3878
3926
 
3879
3927
  @overload
3880
- async def upsert_instruments_properties(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, **kwargs) -> UpsertInstrumentPropertiesResponse: # noqa: E501
3928
+ async def upsert_instruments_properties(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> UpsertInstrumentPropertiesResponse: # noqa: E501
3881
3929
  ...
3882
3930
 
3883
3931
  @overload
3884
- def upsert_instruments_properties(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, async_req: Optional[bool]=True, **kwargs) -> UpsertInstrumentPropertiesResponse: # noqa: E501
3932
+ def upsert_instruments_properties(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=True, **kwargs) -> UpsertInstrumentPropertiesResponse: # noqa: E501
3885
3933
  ...
3886
3934
 
3887
3935
  @validate_arguments
3888
- def upsert_instruments_properties(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[UpsertInstrumentPropertiesResponse, Awaitable[UpsertInstrumentPropertiesResponse]]: # noqa: E501
3936
+ def upsert_instruments_properties(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[UpsertInstrumentPropertiesResponse, Awaitable[UpsertInstrumentPropertiesResponse]]: # noqa: E501
3889
3937
  """UpsertInstrumentsProperties: Upsert instruments properties # noqa: E501
3890
3938
 
3891
3939
  Create or update one or more properties for particular instruments. Each instrument property is updated if it exists and created if it does not. For any failures, a reason is provided. Properties have an <i>effectiveFrom</i> datetime from which the property is valid, and an <i>effectiveUntil</i> datetime until which the property is valid. Not supplying an <i>effectiveUntil</i> datetime results in the property being valid indefinitely, or until the next <i>effectiveFrom</i> datetime of the property. # noqa: E501
3892
3940
  This method makes a synchronous HTTP request by default. To make an
3893
3941
  asynchronous HTTP request, please pass async_req=True
3894
3942
 
3895
- >>> thread = api.upsert_instruments_properties(upsert_instrument_property_request, scope, async_req=True)
3943
+ >>> thread = api.upsert_instruments_properties(upsert_instrument_property_request, scope, data_model_scope, data_model_code, async_req=True)
3896
3944
  >>> result = thread.get()
3897
3945
 
3898
3946
  :param upsert_instrument_property_request: A list of instruments and associated instrument properties to create or update. (required)
3899
3947
  :type upsert_instrument_property_request: List[UpsertInstrumentPropertyRequest]
3900
3948
  :param scope: The scope in which the instrument lies. When not supplied the scope is 'default'.
3901
3949
  :type scope: str
3950
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
3951
+ :type data_model_scope: str
3952
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
3953
+ :type data_model_code: str
3902
3954
  :param async_req: Whether to execute the request asynchronously.
3903
3955
  :type async_req: bool, optional
3904
3956
  :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
@@ -3915,23 +3967,27 @@ class InstrumentsApi:
3915
3967
  raise ValueError(message)
3916
3968
  if async_req is not None:
3917
3969
  kwargs['async_req'] = async_req
3918
- return self.upsert_instruments_properties_with_http_info(upsert_instrument_property_request, scope, **kwargs) # noqa: E501
3970
+ return self.upsert_instruments_properties_with_http_info(upsert_instrument_property_request, scope, data_model_scope, data_model_code, **kwargs) # noqa: E501
3919
3971
 
3920
3972
  @validate_arguments
3921
- def upsert_instruments_properties_with_http_info(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, **kwargs) -> ApiResponse: # noqa: E501
3973
+ def upsert_instruments_properties_with_http_info(self, upsert_instrument_property_request : Annotated[conlist(UpsertInstrumentPropertyRequest), Field(..., description="A list of instruments and associated instrument properties to create or update.")], scope : Annotated[Optional[StrictStr], Field( description="The scope in which the instrument lies. When not supplied the scope is 'default'.")] = None, data_model_scope : Annotated[Optional[StrictStr], Field( description="The optional scope of a Hierarchical Data Model to use")] = None, data_model_code : Annotated[Optional[StrictStr], Field( description="The optional code of a Hierarchical Data Model to use")] = None, **kwargs) -> ApiResponse: # noqa: E501
3922
3974
  """UpsertInstrumentsProperties: Upsert instruments properties # noqa: E501
3923
3975
 
3924
3976
  Create or update one or more properties for particular instruments. Each instrument property is updated if it exists and created if it does not. For any failures, a reason is provided. Properties have an <i>effectiveFrom</i> datetime from which the property is valid, and an <i>effectiveUntil</i> datetime until which the property is valid. Not supplying an <i>effectiveUntil</i> datetime results in the property being valid indefinitely, or until the next <i>effectiveFrom</i> datetime of the property. # noqa: E501
3925
3977
  This method makes a synchronous HTTP request by default. To make an
3926
3978
  asynchronous HTTP request, please pass async_req=True
3927
3979
 
3928
- >>> thread = api.upsert_instruments_properties_with_http_info(upsert_instrument_property_request, scope, async_req=True)
3980
+ >>> thread = api.upsert_instruments_properties_with_http_info(upsert_instrument_property_request, scope, data_model_scope, data_model_code, async_req=True)
3929
3981
  >>> result = thread.get()
3930
3982
 
3931
3983
  :param upsert_instrument_property_request: A list of instruments and associated instrument properties to create or update. (required)
3932
3984
  :type upsert_instrument_property_request: List[UpsertInstrumentPropertyRequest]
3933
3985
  :param scope: The scope in which the instrument lies. When not supplied the scope is 'default'.
3934
3986
  :type scope: str
3987
+ :param data_model_scope: The optional scope of a Hierarchical Data Model to use
3988
+ :type data_model_scope: str
3989
+ :param data_model_code: The optional code of a Hierarchical Data Model to use
3990
+ :type data_model_code: str
3935
3991
  :param async_req: Whether to execute the request asynchronously.
3936
3992
  :type async_req: bool, optional
3937
3993
  :param _preload_content: if False, the ApiResponse.data will
@@ -3960,7 +4016,9 @@ class InstrumentsApi:
3960
4016
 
3961
4017
  _all_params = [
3962
4018
  'upsert_instrument_property_request',
3963
- 'scope'
4019
+ 'scope',
4020
+ 'data_model_scope',
4021
+ 'data_model_code'
3964
4022
  ]
3965
4023
  _all_params.extend(
3966
4024
  [
@@ -3995,6 +4053,12 @@ class InstrumentsApi:
3995
4053
  if _params.get('scope') is not None: # noqa: E501
3996
4054
  _query_params.append(('scope', _params['scope']))
3997
4055
 
4056
+ if _params.get('data_model_scope') is not None: # noqa: E501
4057
+ _query_params.append(('dataModelScope', _params['data_model_scope']))
4058
+
4059
+ if _params.get('data_model_code') is not None: # noqa: E501
4060
+ _query_params.append(('dataModelCode', _params['data_model_code']))
4061
+
3998
4062
  # process the header parameters
3999
4063
  _header_params = dict(_params.get('_headers', {}))
4000
4064
  # process the form parameters
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.7478\n"\
448
+ "Version of the API: 0.11.7484\n"\
449
449
  "SDK Package Version: {package_version}".\
450
450
  format(env=sys.platform, pyversion=sys.version, package_version=package_version)
451
451
 
@@ -37,9 +37,10 @@ class PricingOptions(BaseModel):
37
37
  remove_contingent_cashflows_in_payment_diary: Optional[StrictBool] = Field(None, alias="removeContingentCashflowsInPaymentDiary", description="When creating a payment diary, should contingent cash payments (e.g. from exercise of a swaption into a swap) be included or not. i.e. Is exercise or default being assumed to happen or not.")
38
38
  use_child_sub_holding_keys_for_portfolio_expansion: Optional[StrictBool] = Field(None, alias="useChildSubHoldingKeysForPortfolioExpansion", description="Should fund constituents inherit subholding keys from the parent subholding keyb")
39
39
  validate_domestic_and_quote_currencies_are_consistent: Optional[StrictBool] = Field(None, alias="validateDomesticAndQuoteCurrenciesAreConsistent", description="Do we validate that the instrument domestic currency matches the quote currency (unless unknown/zzz) when using lookup pricing.")
40
+ mbs_valuation_using_holding_current_face: Optional[StrictBool] = Field(None, alias="mbsValuationUsingHoldingCurrentFace")
40
41
  conserved_quantity_for_lookthrough_expansion: Optional[StrictStr] = Field(None,alias="conservedQuantityForLookthroughExpansion", description="When performing lookthrough portfolio expansion with ScalingMethodology set to \"Sum\" or \"AbsoluteSum\", the quantity specified here will be conserved and apportioned to lookthrough constituents. For example, an equal-weighting index with 100 constituents can be modelled as a reference portfolio with 1% weights on each equity. When expanding a $9000 holding of that index into its constituents while conserving PV, we end up with $90 of each equity. The number of units of each equity held is then implied. Note that conservation of one quantity may imply non-conservation of others, especially when some constituents are OTCs. Allowed values are: \"PV\" (default), \"Exposure\".")
41
42
  return_zero_pv: Optional[ReturnZeroPvOptions] = Field(None, alias="returnZeroPv")
42
- __properties = ["modelSelection", "useInstrumentTypeToDeterminePricer", "allowAnyInstrumentsWithSecUidToPriceOffLookup", "allowPartiallySuccessfulEvaluation", "produceSeparateResultForLinearOtcLegs", "enableUseOfCachedUnitResults", "windowValuationOnInstrumentStartEnd", "removeContingentCashflowsInPaymentDiary", "useChildSubHoldingKeysForPortfolioExpansion", "validateDomesticAndQuoteCurrenciesAreConsistent", "conservedQuantityForLookthroughExpansion", "returnZeroPv"]
43
+ __properties = ["modelSelection", "useInstrumentTypeToDeterminePricer", "allowAnyInstrumentsWithSecUidToPriceOffLookup", "allowPartiallySuccessfulEvaluation", "produceSeparateResultForLinearOtcLegs", "enableUseOfCachedUnitResults", "windowValuationOnInstrumentStartEnd", "removeContingentCashflowsInPaymentDiary", "useChildSubHoldingKeysForPortfolioExpansion", "validateDomesticAndQuoteCurrenciesAreConsistent", "mbsValuationUsingHoldingCurrentFace", "conservedQuantityForLookthroughExpansion", "returnZeroPv"]
43
44
 
44
45
  class Config:
45
46
  """Pydantic configuration"""
@@ -106,6 +107,7 @@ class PricingOptions(BaseModel):
106
107
  "remove_contingent_cashflows_in_payment_diary": obj.get("removeContingentCashflowsInPaymentDiary"),
107
108
  "use_child_sub_holding_keys_for_portfolio_expansion": obj.get("useChildSubHoldingKeysForPortfolioExpansion"),
108
109
  "validate_domestic_and_quote_currencies_are_consistent": obj.get("validateDomesticAndQuoteCurrenciesAreConsistent"),
110
+ "mbs_valuation_using_holding_current_face": obj.get("mbsValuationUsingHoldingCurrentFace"),
109
111
  "conserved_quantity_for_lookthrough_expansion": obj.get("conservedQuantityForLookthroughExpansion"),
110
112
  "return_zero_pv": ReturnZeroPvOptions.from_dict(obj.get("returnZeroPv")) if obj.get("returnZeroPv") is not None else None
111
113
  })
@@ -22,6 +22,7 @@ from typing import Any, Dict, List, Optional, Union
22
22
  from pydantic.v1 import StrictStr, Field, BaseModel, Field, StrictFloat, StrictInt, StrictStr, conlist, constr, validator
23
23
  from lusid.models.currency_and_amount import CurrencyAndAmount
24
24
  from lusid.models.custodian_account import CustodianAccount
25
+ from lusid.models.data_model_membership import DataModelMembership
25
26
  from lusid.models.otc_confirmation import OtcConfirmation
26
27
  from lusid.models.perpetual_property import PerpetualProperty
27
28
  from lusid.models.resource_id import ResourceId
@@ -58,7 +59,8 @@ class Transaction(BaseModel):
58
59
  transaction_group_id: Optional[StrictStr] = Field(None,alias="transactionGroupId", description="The identifier for grouping economic events across multiple transactions")
59
60
  strategy_tag: Optional[conlist(Strategy)] = Field(None, alias="strategyTag", description="A list of strategies representing the allocation of units across multiple sub-holding keys")
60
61
  resolved_transaction_type_details: Optional[TransactionTypeDetails] = Field(None, alias="resolvedTransactionTypeDetails")
61
- __properties = ["transactionId", "type", "instrumentIdentifiers", "instrumentScope", "instrumentUid", "transactionDate", "settlementDate", "units", "transactionPrice", "totalConsideration", "exchangeRate", "transactionCurrency", "properties", "counterpartyId", "source", "entryDateTime", "otcConfirmation", "transactionStatus", "cancelDateTime", "orderId", "allocationId", "custodianAccount", "transactionGroupId", "strategyTag", "resolvedTransactionTypeDetails"]
62
+ data_model_membership: Optional[DataModelMembership] = Field(None, alias="dataModelMembership")
63
+ __properties = ["transactionId", "type", "instrumentIdentifiers", "instrumentScope", "instrumentUid", "transactionDate", "settlementDate", "units", "transactionPrice", "totalConsideration", "exchangeRate", "transactionCurrency", "properties", "counterpartyId", "source", "entryDateTime", "otcConfirmation", "transactionStatus", "cancelDateTime", "orderId", "allocationId", "custodianAccount", "transactionGroupId", "strategyTag", "resolvedTransactionTypeDetails", "dataModelMembership"]
62
64
 
63
65
  @validator('transaction_status')
64
66
  def transaction_status_validate_enum(cls, value):
@@ -137,6 +139,9 @@ class Transaction(BaseModel):
137
139
  # override the default output from pydantic by calling `to_dict()` of resolved_transaction_type_details
138
140
  if self.resolved_transaction_type_details:
139
141
  _dict['resolvedTransactionTypeDetails'] = self.resolved_transaction_type_details.to_dict()
142
+ # override the default output from pydantic by calling `to_dict()` of data_model_membership
143
+ if self.data_model_membership:
144
+ _dict['dataModelMembership'] = self.data_model_membership.to_dict()
140
145
  # set to None if instrument_identifiers (nullable) is None
141
146
  # and __fields_set__ contains the field
142
147
  if self.instrument_identifiers is None and "instrument_identifiers" in self.__fields_set__:
@@ -228,6 +233,7 @@ class Transaction(BaseModel):
228
233
  "custodian_account": CustodianAccount.from_dict(obj.get("custodianAccount")) if obj.get("custodianAccount") is not None else None,
229
234
  "transaction_group_id": obj.get("transactionGroupId"),
230
235
  "strategy_tag": [Strategy.from_dict(_item) for _item in obj.get("strategyTag")] if obj.get("strategyTag") is not None else None,
231
- "resolved_transaction_type_details": TransactionTypeDetails.from_dict(obj.get("resolvedTransactionTypeDetails")) if obj.get("resolvedTransactionTypeDetails") is not None else None
236
+ "resolved_transaction_type_details": TransactionTypeDetails.from_dict(obj.get("resolvedTransactionTypeDetails")) if obj.get("resolvedTransactionTypeDetails") is not None else None,
237
+ "data_model_membership": DataModelMembership.from_dict(obj.get("dataModelMembership")) if obj.get("dataModelMembership") is not None else None
232
238
  })
233
239
  return _obj
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lusid-sdk
3
- Version: 2.1.726
3
+ Version: 2.1.728
4
4
  Summary: LUSID API
5
5
  Home-page: https://github.com/finbourne/lusid-sdk-python
6
6
  License: MIT
@@ -32,7 +32,7 @@ lusid/api/group_reconciliations_api.py,sha256=WdD_ZZI4ApdqkwG8FUiRzNawy3_-Oxsqcu
32
32
  lusid/api/identifier_definitions_api.py,sha256=Pr2umgLtmI4KzagyTPAvOa4-IZFnm9fqDVSA71zXEGo,64275
33
33
  lusid/api/instrument_event_types_api.py,sha256=3PpHxwJGVi--9-qjAAl_zzCh56jEPcmiEja29z1gKu4,80192
34
34
  lusid/api/instrument_events_api.py,sha256=bAGa16QgzUEXhu_A7yxQLMJ9ec2Cy-pSbo114e8zaA8,57884
35
- lusid/api/instruments_api.py,sha256=oclYKJZR6oaQ0f3u7Mu1Jx-2GJmYSibY3qysWrVnYcw,290789
35
+ lusid/api/instruments_api.py,sha256=bJL1aCy4i0CjT_ZH4YNFca-77zBiwwWB-cNXuKSvezc,298953
36
36
  lusid/api/legacy_compliance_api.py,sha256=ismZoIrheOad5aMqFhmxcsMGkNVhO3HW_44s_oq0i7o,94059
37
37
  lusid/api/legal_entities_api.py,sha256=XpwZUhCr8h1tDDrC3yqbc9zizd4lWcQW32y-46flidk,257829
38
38
  lusid/api/order_graph_api.py,sha256=4eEfNfSNFJezD7WIHo9TXh-bCTt5w8rlaYIWKPVu8p0,44202
@@ -74,7 +74,7 @@ lusid/api/translation_api.py,sha256=xpRuTfwQvYBlWe6r_L2EI_uVpXqHFnEOim-i-kVQ85E,
74
74
  lusid/api/workspace_api.py,sha256=iVbWv-6OsouHkjUayyGnQAHXX0PKuxDUrarBo1bD94I,191226
75
75
  lusid/api_client.py,sha256=ewMTmf9SRurY8pYnUx9jy24RdldPCOa4US38pnrVxjA,31140
76
76
  lusid/api_response.py,sha256=6-gnhty6lu8MMAERt3_kTVD7UxQgWFfcjgpcq6iN5IU,855
77
- lusid/configuration.py,sha256=ZRNa0xjmYpy-rhB0s9kxoQ8dl3K_s_R4PiMFX6GCAAE,17972
77
+ lusid/configuration.py,sha256=nc3ZFGC-HJ-KFa7fkVMD39THxdVoUgmcRe-cfBQn8lc,17972
78
78
  lusid/exceptions.py,sha256=HIQwgmQrszLlcVCLaqex8dO0laVuejUyOMz7U2ZWJ6s,5326
79
79
  lusid/extensions/__init__.py,sha256=dzDHEzpn-9smd2-_UMWQzeyX6Ha4jGf6fnqx7qxKxNI,630
80
80
  lusid/extensions/api_client.py,sha256=GzygWg_h603QK1QS2HvAijuE2R1TnvoF6-Yg0CeM3ug,30943
@@ -866,7 +866,7 @@ lusid/models/previous_nav.py,sha256=kZZrYY44Q0K03DQX7GX5HBdLJfIWBQ1nLaK7jR6pzwc,
866
866
  lusid/models/previous_share_class_breakdown.py,sha256=Q1szW58a2B5Awnj4jgjmflvlWE-zhzXuF3fXWH4SGks,3223
867
867
  lusid/models/pricing_context.py,sha256=cQRPDqxE5q3MB2ahV4zOpT3fIx8_MXRmkqjCb27He1o,8580
868
868
  lusid/models/pricing_model.py,sha256=HB-BQzn3dUQ5yJt7PqFTlYfTC9acenElFKNzwSBPjtk,1533
869
- lusid/models/pricing_options.py,sha256=vUlt17E7hIhp3mkxRWIDBbNSznYPsDBgXIqp8lc9Ysw,8690
869
+ lusid/models/pricing_options.py,sha256=IR87Gr2wQ5m2M9wZqGEODmpygZhEW4045vsIJgc_8SA,8959
870
870
  lusid/models/processed_command.py,sha256=CqEkDhCprMS8DxwYCcTDdOx0ivoewyAipM-ThRllFyY,3215
871
871
  lusid/models/property_definition.py,sha256=NhH180p-EeMX3AY1WrB46CSKp-qPBEEuzQRdYG72bjw,18157
872
872
  lusid/models/property_definition_entity.py,sha256=IVNodIOY6oqK66eb9m1Qd5lT1XlYqdLTgsPM6iCUFMo,8072
@@ -1110,7 +1110,7 @@ lusid/models/touch.py,sha256=989spNJsiwn74GJE3GPr8GNaP0MPnkMsFIWO67Wd6FQ,2966
1110
1110
  lusid/models/trade_ticket.py,sha256=otvnj1o3UFYv2nAwcnz8W1BX1ld1gIPkOKLVciMCVaw,2553
1111
1111
  lusid/models/trade_ticket_type.py,sha256=j7f2bfiA_cxaFtjZpT3Natl4BoaGAaEXF6E0ltEzTWE,706
1112
1112
  lusid/models/trading_conventions.py,sha256=w_oFIB8faBhd6lPqbUwPbUhdLZuaIVgoZryKuUxRyBM,3211
1113
- lusid/models/transaction.py,sha256=hydsR5vopwwuyH6DK_fMSuVWoQiEyBE5jzbn2xjn32Y,13941
1113
+ lusid/models/transaction.py,sha256=FyiVrss4HeTsC8tHys8HrWYylSHqs5ApwYI4t1mq-tE,14506
1114
1114
  lusid/models/transaction_configuration_data.py,sha256=0Gm-MXYMpoS_wz_td3U4gkP8CMjnY5E38JGQVdwjsqc,4550
1115
1115
  lusid/models/transaction_configuration_data_request.py,sha256=8fzgpawxQN4C07McluIUImNMqnB25YZBDGuCRgikqQw,4630
1116
1116
  lusid/models/transaction_configuration_movement_data.py,sha256=nL0Vcs6Su6Dc-16yUKX0N9DSAZCPUPykyTNMEMFyV14,7773
@@ -1283,6 +1283,6 @@ lusid/models/workspace_update_request.py,sha256=ihKnBY685hfgs9uoyAXQNt1w7iOF-6Jc
1283
1283
  lusid/models/yield_curve_data.py,sha256=eDxj1qjChju3anFaQzywjFOuchX5i0pOTh5N-zcvJzg,6540
1284
1284
  lusid/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1285
1285
  lusid/rest.py,sha256=HQT__5LQEMu6_1sLKvYj-DI4FH1DJXBIPYfZCTTyrY4,13431
1286
- lusid_sdk-2.1.726.dist-info/METADATA,sha256=CCCx7D1IrRxAiDtsjbEgFv-2YSOlWdXZjYHEAhB9OJk,219947
1287
- lusid_sdk-2.1.726.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
1288
- lusid_sdk-2.1.726.dist-info/RECORD,,
1286
+ lusid_sdk-2.1.728.dist-info/METADATA,sha256=mDbuCpmMv7yW4ySdkHKVFA2bZXgW-oQg_w1xuqVdA18,219947
1287
+ lusid_sdk-2.1.728.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
1288
+ lusid_sdk-2.1.728.dist-info/RECORD,,