lusid-sdk 2.1.557__py3-none-any.whl → 2.1.560__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.
@@ -104,7 +104,7 @@ class TransactionPortfoliosApi:
104
104
  def adjust_holdings(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[StrictStr, Field(..., description="The effective datetime or cut label at which the holdings should be set to the provided targets.")], adjust_holding_request : Annotated[conlist(AdjustHoldingRequest), Field(..., description="The selected set of holdings to adjust to the provided targets for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[AdjustHolding, Awaitable[AdjustHolding]]: # noqa: E501
105
105
  """AdjustHoldings: Adjust holdings # noqa: E501
106
106
 
107
- Adjust one or more holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the holdings which have been adjusted are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/how-do-i-adjust-my-holdings. # noqa: E501
107
+ Adjust one or more holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the holdings which have been adjusted are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/docs/how-do-i-manually-adjust-or-set-holdings. # noqa: E501
108
108
  This method makes a synchronous HTTP request by default. To make an
109
109
  asynchronous HTTP request, please pass async_req=True
110
110
 
@@ -143,7 +143,7 @@ class TransactionPortfoliosApi:
143
143
  def adjust_holdings_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[StrictStr, Field(..., description="The effective datetime or cut label at which the holdings should be set to the provided targets.")], adjust_holding_request : Annotated[conlist(AdjustHoldingRequest), Field(..., description="The selected set of holdings to adjust to the provided targets for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, **kwargs) -> ApiResponse: # noqa: E501
144
144
  """AdjustHoldings: Adjust holdings # noqa: E501
145
145
 
146
- Adjust one or more holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the holdings which have been adjusted are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/how-do-i-adjust-my-holdings. # noqa: E501
146
+ Adjust one or more holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the holdings which have been adjusted are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/docs/how-do-i-manually-adjust-or-set-holdings. # noqa: E501
147
147
  This method makes a synchronous HTTP request by default. To make an
148
148
  asynchronous HTTP request, please pass async_req=True
149
149
 
@@ -648,6 +648,197 @@ class TransactionPortfoliosApi:
648
648
  collection_formats=_collection_formats,
649
649
  _request_auth=_params.get('_request_auth'))
650
650
 
651
+ @overload
652
+ async def batch_set_holdings(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, AdjustHoldingForDateRequest], Field(..., description="The selected set of holdings to adjust to the provided targets for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, **kwargs) -> BatchAdjustHoldingsResponse: # noqa: E501
653
+ ...
654
+
655
+ @overload
656
+ def batch_set_holdings(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, AdjustHoldingForDateRequest], Field(..., description="The selected set of holdings to adjust to the provided targets for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, async_req: Optional[bool]=True, **kwargs) -> BatchAdjustHoldingsResponse: # noqa: E501
657
+ ...
658
+
659
+ @validate_arguments
660
+ def batch_set_holdings(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, AdjustHoldingForDateRequest], Field(..., description="The selected set of holdings to adjust to the provided targets for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[BatchAdjustHoldingsResponse, Awaitable[BatchAdjustHoldingsResponse]]: # noqa: E501
661
+ """[EARLY ACCESS] BatchSetHoldings: Batch set holdings # noqa: E501
662
+
663
+ Set the holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the entire set of holdings for the transaction portfolio are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/docs/how-do-i-manually-adjust-or-set-holdings. Each request must be keyed by a unique correlation id. This id is ephemeral and is not stored by LUSID. It serves only as a way to easily identify each adjustment in the response. Note: If using partial failure modes, then it is important to check the response body for failures as any failures will still return a 200 status code # noqa: E501
664
+ This method makes a synchronous HTTP request by default. To make an
665
+ asynchronous HTTP request, please pass async_req=True
666
+
667
+ >>> thread = api.batch_set_holdings(scope, code, success_mode, request_body, reconciliation_methods, async_req=True)
668
+ >>> result = thread.get()
669
+
670
+ :param scope: The scope of the transaction portfolio. (required)
671
+ :type scope: str
672
+ :param code: The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio. (required)
673
+ :type code: str
674
+ :param success_mode: Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial (required)
675
+ :type success_mode: str
676
+ :param request_body: The selected set of holdings to adjust to the provided targets for the transaction portfolio. (required)
677
+ :type request_body: Dict[str, AdjustHoldingForDateRequest]
678
+ :param reconciliation_methods: Optional parameter for specifying a reconciliation method: e.g. FxForward.
679
+ :type reconciliation_methods: List[str]
680
+ :param async_req: Whether to execute the request asynchronously.
681
+ :type async_req: bool, optional
682
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
683
+ :param opts: Configuration options for this request
684
+ :type opts: ConfigurationOptions, optional
685
+ :return: Returns the result object.
686
+ If the method is called asynchronously,
687
+ returns the request thread.
688
+ :rtype: BatchAdjustHoldingsResponse
689
+ """
690
+ kwargs['_return_http_data_only'] = True
691
+ if '_preload_content' in kwargs:
692
+ message = "Error! Please call the batch_set_holdings_with_http_info method with `_preload_content` instead and obtain raw data from ApiResponse.raw_data" # noqa: E501
693
+ raise ValueError(message)
694
+ if async_req is not None:
695
+ kwargs['async_req'] = async_req
696
+ return self.batch_set_holdings_with_http_info(scope, code, success_mode, request_body, reconciliation_methods, **kwargs) # noqa: E501
697
+
698
+ @validate_arguments
699
+ def batch_set_holdings_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial")], request_body : Annotated[Dict[str, AdjustHoldingForDateRequest], Field(..., description="The selected set of holdings to adjust to the provided targets for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, **kwargs) -> ApiResponse: # noqa: E501
700
+ """[EARLY ACCESS] BatchSetHoldings: Batch set holdings # noqa: E501
701
+
702
+ Set the holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the entire set of holdings for the transaction portfolio are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/docs/how-do-i-manually-adjust-or-set-holdings. Each request must be keyed by a unique correlation id. This id is ephemeral and is not stored by LUSID. It serves only as a way to easily identify each adjustment in the response. Note: If using partial failure modes, then it is important to check the response body for failures as any failures will still return a 200 status code # noqa: E501
703
+ This method makes a synchronous HTTP request by default. To make an
704
+ asynchronous HTTP request, please pass async_req=True
705
+
706
+ >>> thread = api.batch_set_holdings_with_http_info(scope, code, success_mode, request_body, reconciliation_methods, async_req=True)
707
+ >>> result = thread.get()
708
+
709
+ :param scope: The scope of the transaction portfolio. (required)
710
+ :type scope: str
711
+ :param code: The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio. (required)
712
+ :type code: str
713
+ :param success_mode: Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial (required)
714
+ :type success_mode: str
715
+ :param request_body: The selected set of holdings to adjust to the provided targets for the transaction portfolio. (required)
716
+ :type request_body: Dict[str, AdjustHoldingForDateRequest]
717
+ :param reconciliation_methods: Optional parameter for specifying a reconciliation method: e.g. FxForward.
718
+ :type reconciliation_methods: List[str]
719
+ :param async_req: Whether to execute the request asynchronously.
720
+ :type async_req: bool, optional
721
+ :param _preload_content: if False, the ApiResponse.data will
722
+ be set to none and raw_data will store the
723
+ HTTP response body without reading/decoding.
724
+ Default is True.
725
+ :type _preload_content: bool, optional
726
+ :param _return_http_data_only: response data instead of ApiResponse
727
+ object with status code, headers, etc
728
+ :type _return_http_data_only: bool, optional
729
+ :param _request_timeout: Timeout setting. Do not use - use the opts parameter instead
730
+ :param opts: Configuration options for this request
731
+ :type opts: ConfigurationOptions, optional
732
+ :param _request_auth: set to override the auth_settings for an a single
733
+ request; this effectively ignores the authentication
734
+ in the spec for a single request.
735
+ :type _request_auth: dict, optional
736
+ :type _content_type: string, optional: force content-type for the request
737
+ :return: Returns the result object.
738
+ If the method is called asynchronously,
739
+ returns the request thread.
740
+ :rtype: tuple(BatchAdjustHoldingsResponse, status_code(int), headers(HTTPHeaderDict))
741
+ """
742
+
743
+ _params = locals()
744
+
745
+ _all_params = [
746
+ 'scope',
747
+ 'code',
748
+ 'success_mode',
749
+ 'request_body',
750
+ 'reconciliation_methods'
751
+ ]
752
+ _all_params.extend(
753
+ [
754
+ 'async_req',
755
+ '_return_http_data_only',
756
+ '_preload_content',
757
+ '_request_timeout',
758
+ '_request_auth',
759
+ '_content_type',
760
+ '_headers',
761
+ 'opts'
762
+ ]
763
+ )
764
+
765
+ # validate the arguments
766
+ for _key, _val in _params['kwargs'].items():
767
+ if _key not in _all_params:
768
+ raise ApiTypeError(
769
+ "Got an unexpected keyword argument '%s'"
770
+ " to method batch_set_holdings" % _key
771
+ )
772
+ _params[_key] = _val
773
+ del _params['kwargs']
774
+
775
+ _collection_formats = {}
776
+
777
+ # process the path parameters
778
+ _path_params = {}
779
+ if _params['scope']:
780
+ _path_params['scope'] = _params['scope']
781
+
782
+ if _params['code']:
783
+ _path_params['code'] = _params['code']
784
+
785
+
786
+ # process the query parameters
787
+ _query_params = []
788
+ if _params.get('success_mode') is not None: # noqa: E501
789
+ _query_params.append(('successMode', _params['success_mode']))
790
+
791
+ if _params.get('reconciliation_methods') is not None: # noqa: E501
792
+ _query_params.append(('reconciliationMethods', _params['reconciliation_methods']))
793
+ _collection_formats['reconciliationMethods'] = 'multi'
794
+
795
+ # process the header parameters
796
+ _header_params = dict(_params.get('_headers', {}))
797
+ # process the form parameters
798
+ _form_params = []
799
+ _files = {}
800
+ # process the body parameter
801
+ _body_params = None
802
+ if _params['request_body'] is not None:
803
+ _body_params = _params['request_body']
804
+
805
+ # set the HTTP header `Accept`
806
+ _header_params['Accept'] = self.api_client.select_header_accept(
807
+ ['text/plain', 'application/json', 'text/json']) # noqa: E501
808
+
809
+ # set the HTTP header `Content-Type`
810
+ _content_types_list = _params.get('_content_type',
811
+ self.api_client.select_header_content_type(
812
+ ['application/json-patch+json', 'application/json', 'text/json', 'application/*+json']))
813
+ if _content_types_list:
814
+ _header_params['Content-Type'] = _content_types_list
815
+
816
+ # authentication setting
817
+ _auth_settings = ['oauth2'] # noqa: E501
818
+
819
+ _response_types_map = {
820
+ '200': "BatchAdjustHoldingsResponse",
821
+ '400': "LusidValidationProblemDetails",
822
+ }
823
+
824
+ return self.api_client.call_api(
825
+ '/api/transactionportfolios/{scope}/{code}/holdings/$batchSet', 'POST',
826
+ _path_params,
827
+ _query_params,
828
+ _header_params,
829
+ body=_body_params,
830
+ post_params=_form_params,
831
+ files=_files,
832
+ response_types_map=_response_types_map,
833
+ auth_settings=_auth_settings,
834
+ async_req=_params.get('async_req'),
835
+ _return_http_data_only=_params.get('_return_http_data_only'), # noqa: E501
836
+ _preload_content=_params.get('_preload_content', True),
837
+ _request_timeout=_params.get('_request_timeout'),
838
+ opts=_params.get('opts'),
839
+ collection_formats=_collection_formats,
840
+ _request_auth=_params.get('_request_auth'))
841
+
651
842
  @overload
652
843
  async def batch_upsert_transactions(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], success_mode : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.")], request_body : Annotated[Dict[str, TransactionRequest], Field(..., description="The payload describing the transactions to be created or updated.")], preserve_properties : Annotated[Optional[StrictBool], Field(description="If set to false, the entire property set will be overwritten by the provided properties. If not specified or set to true, only the properties provided will be updated.")] = None, **kwargs) -> BatchUpsertPortfolioTransactionsResponse: # noqa: E501
653
844
  ...
@@ -6480,7 +6671,7 @@ class TransactionPortfoliosApi:
6480
6671
  def set_holdings(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[StrictStr, Field(..., description="The effective datetime or cut label at which the holdings should be set to the provided targets.")], adjust_holding_request : Annotated[conlist(AdjustHoldingRequest), Field(..., description="The complete set of target holdings for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, async_req: Optional[bool]=None, **kwargs) -> Union[AdjustHolding, Awaitable[AdjustHolding]]: # noqa: E501
6481
6672
  """SetHoldings: Set holdings # noqa: E501
6482
6673
 
6483
- Set the holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the entire set of holdings for the transaction portfolio are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/how-do-i-adjust-my-holdings. # noqa: E501
6674
+ Set the holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the entire set of holdings for the transaction portfolio are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/docs/how-do-i-manually-adjust-or-set-holdings. # noqa: E501
6484
6675
  This method makes a synchronous HTTP request by default. To make an
6485
6676
  asynchronous HTTP request, please pass async_req=True
6486
6677
 
@@ -6519,7 +6710,7 @@ class TransactionPortfoliosApi:
6519
6710
  def set_holdings_with_http_info(self, scope : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The scope of the transaction portfolio.")], code : Annotated[constr(strict=True, max_length=64, min_length=1), Field(..., description="The code of the transaction portfolio. Together with the scope this uniquely identifies the transaction portfolio.")], effective_at : Annotated[StrictStr, Field(..., description="The effective datetime or cut label at which the holdings should be set to the provided targets.")], adjust_holding_request : Annotated[conlist(AdjustHoldingRequest), Field(..., description="The complete set of target holdings for the transaction portfolio.")], reconciliation_methods : Annotated[Optional[conlist(StrictStr)], Field(description="Optional parameter for specifying a reconciliation method: e.g. FxForward.")] = None, **kwargs) -> ApiResponse: # noqa: E501
6520
6711
  """SetHoldings: Set holdings # noqa: E501
6521
6712
 
6522
- Set the holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the entire set of holdings for the transaction portfolio are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/how-do-i-adjust-my-holdings. # noqa: E501
6713
+ Set the holdings of the specified transaction portfolio to the provided targets. LUSID will automatically construct adjustment transactions to ensure that the entire set of holdings for the transaction portfolio are always set to the provided targets for the specified effective datetime. Read more about the difference between adjusting and setting holdings here https://support.lusid.com/docs/how-do-i-manually-adjust-or-set-holdings. # noqa: E501
6523
6714
  This method makes a synchronous HTTP request by default. To make an
6524
6715
  asynchronous HTTP request, please pass async_req=True
6525
6716
 
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.6987\n"\
448
+ "Version of the API: 0.11.6990\n"\
449
449
  "SDK Package Version: {package_version}".\
450
450
  format(env=sys.platform, pyversion=sys.version, package_version=package_version)
451
451
 
@@ -18,8 +18,8 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
 
21
- from typing import Any, Dict, Optional
22
- from pydantic.v1 import BaseModel, StrictInt
21
+ from typing import Any, Dict, Optional, Union
22
+ from pydantic.v1 import BaseModel, StrictFloat, StrictInt
23
23
 
24
24
  class CutLocalTime(BaseModel):
25
25
  """
@@ -27,7 +27,8 @@ class CutLocalTime(BaseModel):
27
27
  """
28
28
  hours: Optional[StrictInt] = None
29
29
  minutes: Optional[StrictInt] = None
30
- __properties = ["hours", "minutes"]
30
+ seconds: Optional[Union[StrictFloat, StrictInt]] = None
31
+ __properties = ["hours", "minutes", "seconds"]
31
32
 
32
33
  class Config:
33
34
  """Pydantic configuration"""
@@ -66,6 +67,7 @@ class CutLocalTime(BaseModel):
66
67
 
67
68
  _obj = CutLocalTime.parse_obj({
68
69
  "hours": obj.get("hours"),
69
- "minutes": obj.get("minutes")
70
+ "minutes": obj.get("minutes"),
71
+ "seconds": obj.get("seconds")
70
72
  })
71
73
  return _obj
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lusid-sdk
3
- Version: 2.1.557
3
+ Version: 2.1.560
4
4
  Summary: LUSID API
5
5
  Home-page: https://github.com/finbourne/lusid-sdk-python
6
6
  License: MIT
@@ -565,6 +565,7 @@ Class | Method | HTTP request | Description
565
565
  *TransactionPortfoliosApi* | [**adjust_holdings**](docs/TransactionPortfoliosApi.md#adjust_holdings) | **POST** /api/transactionportfolios/{scope}/{code}/holdings | AdjustHoldings: Adjust holdings
566
566
  *TransactionPortfoliosApi* | [**batch_adjust_holdings**](docs/TransactionPortfoliosApi.md#batch_adjust_holdings) | **POST** /api/transactionportfolios/{scope}/{code}/holdings/$batchAdjust | [EARLY ACCESS] BatchAdjustHoldings: Batch adjust holdings
567
567
  *TransactionPortfoliosApi* | [**batch_create_trade_tickets**](docs/TransactionPortfoliosApi.md#batch_create_trade_tickets) | **POST** /api/transactionportfolios/{scope}/{code}/$batchtradetickets | [EARLY ACCESS] BatchCreateTradeTickets: Batch Create Trade Tickets
568
+ *TransactionPortfoliosApi* | [**batch_set_holdings**](docs/TransactionPortfoliosApi.md#batch_set_holdings) | **POST** /api/transactionportfolios/{scope}/{code}/holdings/$batchSet | [EARLY ACCESS] BatchSetHoldings: Batch set holdings
568
569
  *TransactionPortfoliosApi* | [**batch_upsert_transactions**](docs/TransactionPortfoliosApi.md#batch_upsert_transactions) | **POST** /api/transactionportfolios/{scope}/{code}/transactions/$batchUpsert | [EARLY ACCESS] BatchUpsertTransactions: Batch upsert transactions
569
570
  *TransactionPortfoliosApi* | [**build_transactions**](docs/TransactionPortfoliosApi.md#build_transactions) | **POST** /api/transactionportfolios/{scope}/{code}/transactions/$build | BuildTransactions: Build transactions
570
571
  *TransactionPortfoliosApi* | [**cancel_adjust_holdings**](docs/TransactionPortfoliosApi.md#cancel_adjust_holdings) | **DELETE** /api/transactionportfolios/{scope}/{code}/holdings | CancelAdjustHoldings: Cancel adjust holdings
@@ -65,12 +65,12 @@ lusid/api/system_configuration_api.py,sha256=6udGEWQzI2t3NDgUdp8MR5X0zWRrTJpXxlZ
65
65
  lusid/api/tax_rule_sets_api.py,sha256=Up74buqFZfgM8oxMObgVvMIJrrKY_fBJLwDBemXEr4M,49866
66
66
  lusid/api/transaction_configuration_api.py,sha256=5wDGhFV3UYG61OPE45Xv0wsDSnNuKkk7F_o7oZzYqN0,107192
67
67
  lusid/api/transaction_fees_api.py,sha256=nJ6Fd_AfguoHdXIm7aXWRL2D_KJa5Vbp6_IpNIitYLc,64354
68
- lusid/api/transaction_portfolios_api.py,sha256=AkWPL8MnjCPGBi8UwpNih1XQvKIdAOo5vdiemtEKVR8,593611
68
+ lusid/api/transaction_portfolios_api.py,sha256=mJs74ZSK1BVSomBNx-WR20CnwW-EsUI3E-kbVeMBx1w,608128
69
69
  lusid/api/translation_api.py,sha256=nIyuLncCvVC5k2d7Nm32zR8AQ1dkrVm1OThkmELY_OM,20072
70
70
  lusid/api/workspace_api.py,sha256=mYQPqFUVf1VKYeWQUV5VkcdSqwejSmPDGd66Az86-_E,191319
71
71
  lusid/api_client.py,sha256=ewMTmf9SRurY8pYnUx9jy24RdldPCOa4US38pnrVxjA,31140
72
72
  lusid/api_response.py,sha256=6-gnhty6lu8MMAERt3_kTVD7UxQgWFfcjgpcq6iN5IU,855
73
- lusid/configuration.py,sha256=jbRXx-DymOgRV5QoLivsRHa4Fee9B9EeQrQWqJAGQGc,17972
73
+ lusid/configuration.py,sha256=uA1ufMQQLN0B3yUEBY4GK951tX2jVEwBX42S4EJ7Qk0,17972
74
74
  lusid/exceptions.py,sha256=HIQwgmQrszLlcVCLaqex8dO0laVuejUyOMz7U2ZWJ6s,5326
75
75
  lusid/extensions/__init__.py,sha256=dzDHEzpn-9smd2-_UMWQzeyX6Ha4jGf6fnqx7qxKxNI,630
76
76
  lusid/extensions/api_client.py,sha256=GzygWg_h603QK1QS2HvAijuE2R1TnvoF6-Yg0CeM3ug,30943
@@ -342,7 +342,7 @@ lusid/models/custom_entity_request.py,sha256=cLM9X0a93DMbHU9mB4DuVmkM6W2d4jkL-My
342
342
  lusid/models/custom_entity_response.py,sha256=2pKAAQIgiaw1Vn3LiBZ5YA0NiCItAZ1G1lGS78SzjmY,6604
343
343
  lusid/models/custom_entity_type.py,sha256=aBRlsHz6dE5tBgrARVq30SSidEFOeHS1-yITrHLkWLU,5282
344
344
  lusid/models/cut_label_definition.py,sha256=DWPBT_v3b-cW0xHujZEZrI_RdYdeRgEZZJjQT5arzvU,4905
345
- lusid/models/cut_local_time.py,sha256=lc-e9dtiywFfz6M7u3DEiur0VFfIV6hsAffzMbTC99g,1895
345
+ lusid/models/cut_local_time.py,sha256=BOsYDGSq14lbDE5tzazlyW4OqPtByBgcLrrNPhf0NxU,2029
346
346
  lusid/models/data_definition.py,sha256=Qec5QcARQS0eU7l2ffhCKirfcPg1aQD-YRH-C0S-HcU,5164
347
347
  lusid/models/data_map_key.py,sha256=C5B8fN4pTsO1DOGwiBrzudP96Mn9FHn8OLpjA6rLfLc,3407
348
348
  lusid/models/data_mapping.py,sha256=Is0cRnq2bDOXbx6SSheCH4diqFxNcsobCpIv34B4TLc,3637
@@ -1224,6 +1224,6 @@ lusid/models/workspace_update_request.py,sha256=uUXEpX-dJ5UiL9w1wMxIFeovSBiTJ-vi
1224
1224
  lusid/models/yield_curve_data.py,sha256=SbxvdJ4-GWK9kpMdw4Fnxc7_kvIMwgsRsd_31UJn7nw,6330
1225
1225
  lusid/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1226
1226
  lusid/rest.py,sha256=HQT__5LQEMu6_1sLKvYj-DI4FH1DJXBIPYfZCTTyrY4,13431
1227
- lusid_sdk-2.1.557.dist-info/METADATA,sha256=2yQcXuyq97OUcigiGARCUmSn2y9xn4dhH5LtJOxc_Q0,208755
1228
- lusid_sdk-2.1.557.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1229
- lusid_sdk-2.1.557.dist-info/RECORD,,
1227
+ lusid_sdk-2.1.560.dist-info/METADATA,sha256=a7ETfXc7mTbLb082yRze6dQTNuSN2OW9Mc8vRYkI2-M,208988
1228
+ lusid_sdk-2.1.560.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
1229
+ lusid_sdk-2.1.560.dist-info/RECORD,,