sdk.lusid.api.instruments_api.InstrumentsApi

class InstrumentsApi(api_client=None)[source]

NOTE: This class is auto generated by OpenAPI Generator Ref: https://openapi-generator.tech

Do not edit the class manually.

Methods

batch_upsert_instrument_properties

[EARLY ACCESS] BatchUpsertInstrumentProperties: Batch upsert instruments properties # noqa: E501

batch_upsert_instrument_properties_with_http_info

[EARLY ACCESS] BatchUpsertInstrumentProperties: Batch upsert instruments properties # noqa: E501

delete_instrument

[EARLY ACCESS] DeleteInstrument: Soft delete a single instrument # noqa: E501

delete_instrument_properties

[EARLY ACCESS] DeleteInstrumentProperties: Delete instrument properties # noqa: E501

delete_instrument_properties_with_http_info

[EARLY ACCESS] DeleteInstrumentProperties: Delete instrument properties # noqa: E501

delete_instrument_with_http_info

[EARLY ACCESS] DeleteInstrument: Soft delete a single instrument # noqa: E501

delete_instruments

[EARLY ACCESS] DeleteInstruments: Soft or hard delete multiple instruments # noqa: E501

delete_instruments_with_http_info

[EARLY ACCESS] DeleteInstruments: Soft or hard delete multiple instruments # noqa: E501

get_all_possible_features

[EXPERIMENTAL] GetAllPossibleFeatures: Provides list of all possible features for instrument type.

get_all_possible_features_with_http_info

[EXPERIMENTAL] GetAllPossibleFeatures: Provides list of all possible features for instrument type.

get_existing_instrument_capabilities

[EXPERIMENTAL] GetExistingInstrumentCapabilities: Retrieve capabilities of an existing instrument identified by LUID.

get_existing_instrument_capabilities_with_http_info

[EXPERIMENTAL] GetExistingInstrumentCapabilities: Retrieve capabilities of an existing instrument identified by LUID.

get_existing_instrument_models

GetExistingInstrumentModels: Retrieve supported pricing models for an existing instrument identified by LUID.

get_existing_instrument_models_with_http_info

GetExistingInstrumentModels: Retrieve supported pricing models for an existing instrument identified by LUID.

get_instrument

GetInstrument: Get instrument # noqa: E501

get_instrument_identifier_types

GetInstrumentIdentifierTypes: Get instrument identifier types # noqa: E501

get_instrument_identifier_types_with_http_info

GetInstrumentIdentifierTypes: Get instrument identifier types # noqa: E501

get_instrument_payment_diary

[EXPERIMENTAL] GetInstrumentPaymentDiary: Get instrument payment diary # noqa: E501

get_instrument_payment_diary_with_http_info

[EXPERIMENTAL] GetInstrumentPaymentDiary: Get instrument payment diary # noqa: E501

get_instrument_properties

[EARLY ACCESS] GetInstrumentProperties: Get instrument properties # noqa: E501

get_instrument_properties_with_http_info

[EARLY ACCESS] GetInstrumentProperties: Get instrument properties # noqa: E501

get_instrument_property_time_series

[EARLY ACCESS] GetInstrumentPropertyTimeSeries: Get instrument property time series # noqa: E501

get_instrument_property_time_series_with_http_info

[EARLY ACCESS] GetInstrumentPropertyTimeSeries: Get instrument property time series # noqa: E501

get_instrument_relationships

[EARLY ACCESS] GetInstrumentRelationships: Get Instrument relationships # noqa: E501

get_instrument_relationships_with_http_info

[EARLY ACCESS] GetInstrumentRelationships: Get Instrument relationships # noqa: E501

get_instrument_with_http_info

GetInstrument: Get instrument # noqa: E501

get_instruments

GetInstruments: Get instruments # noqa: E501

get_instruments_with_http_info

GetInstruments: Get instruments # noqa: E501

list_instrument_properties

[EARLY ACCESS] ListInstrumentProperties: Get instrument properties (with Pagination) # noqa: E501

list_instrument_properties_with_http_info

[EARLY ACCESS] ListInstrumentProperties: Get instrument properties (with Pagination) # noqa: E501

list_instruments

ListInstruments: List instruments # noqa: E501

list_instruments_with_http_info

ListInstruments: List instruments # noqa: E501

query_instrument_capabilities

[EXPERIMENTAL] QueryInstrumentCapabilities: Query capabilities of a particular instrument in advance of creating it.

query_instrument_capabilities_with_http_info

[EXPERIMENTAL] QueryInstrumentCapabilities: Query capabilities of a particular instrument in advance of creating it.

update_instrument_identifier

UpdateInstrumentIdentifier: Update instrument identifier # noqa: E501

update_instrument_identifier_with_http_info

UpdateInstrumentIdentifier: Update instrument identifier # noqa: E501

upsert_instruments

UpsertInstruments: Upsert instruments # noqa: E501

upsert_instruments_properties

UpsertInstrumentsProperties: Upsert instruments properties # noqa: E501

upsert_instruments_properties_with_http_info

UpsertInstrumentsProperties: Upsert instruments properties # noqa: E501

upsert_instruments_with_http_info

UpsertInstruments: Upsert instruments # noqa: E501

batch_upsert_instrument_properties(request_body, scope=None, identifier_effective_at=None, success_mode=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] BatchUpsertInstrumentProperties: Batch upsert instruments properties # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.batch_upsert_instrument_properties(request_body, scope, identifier_effective_at, success_mode, async_req=True)
>>> result = thread.get()
Parameters:
  • request_body (Dict[str, UpsertInstrumentPropertyRequest]) – A list of instruments and associated instrument properties to create or update. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • identifier_effective_at (str) – The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.

  • success_mode (str) – Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

BatchUpsertInstrumentPropertiesResponse

batch_upsert_instrument_properties_with_http_info(request_body, scope=None, identifier_effective_at=None, success_mode=None, **kwargs)[source]

[EARLY ACCESS] BatchUpsertInstrumentProperties: Batch upsert instruments properties # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.batch_upsert_instrument_properties_with_http_info(request_body, scope, identifier_effective_at, success_mode, async_req=True)
>>> result = thread.get()
Parameters:
  • request_body (Dict[str, UpsertInstrumentPropertyRequest]) – A list of instruments and associated instrument properties to create or update. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • identifier_effective_at (str) – The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified.

  • success_mode (str) – Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(BatchUpsertInstrumentPropertiesResponse, status_code(int), headers(HTTPHeaderDict))

delete_instrument(identifier_type, identifier, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] DeleteInstrument: Soft delete a single instrument # noqa: E501

Soft delete a particular instrument, as identified by a particular instrument identifier. Once deleted, an instrument is marked as inactive and can no longer be referenced when creating or updating transactions or holdings. You can still query existing transactions and holdings related to the deleted instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.delete_instrument(identifier_type, identifier, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

DeleteInstrumentResponse

delete_instrument_properties(identifier_type, identifier, request_body, effective_at=None, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] DeleteInstrumentProperties: Delete instrument properties # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.delete_instrument_properties(identifier_type, identifier, request_body, effective_at, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • request_body (List[str]) – A list of property keys from the ‘Instruments’ domain whose properties to delete. (required)

  • effective_at (str) – 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.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

DeleteInstrumentPropertiesResponse

delete_instrument_properties_with_http_info(identifier_type, identifier, request_body, effective_at=None, scope=None, **kwargs)[source]

[EARLY ACCESS] DeleteInstrumentProperties: Delete instrument properties # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.delete_instrument_properties_with_http_info(identifier_type, identifier, request_body, effective_at, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • request_body (List[str]) – A list of property keys from the ‘Instruments’ domain whose properties to delete. (required)

  • effective_at (str) – 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.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(DeleteInstrumentPropertiesResponse, status_code(int), headers(HTTPHeaderDict))

delete_instrument_with_http_info(identifier_type, identifier, scope=None, **kwargs)[source]

[EARLY ACCESS] DeleteInstrument: Soft delete a single instrument # noqa: E501

Soft delete a particular instrument, as identified by a particular instrument identifier. Once deleted, an instrument is marked as inactive and can no longer be referenced when creating or updating transactions or holdings. You can still query existing transactions and holdings related to the deleted instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.delete_instrument_with_http_info(identifier_type, identifier, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(DeleteInstrumentResponse, status_code(int), headers(HTTPHeaderDict))

delete_instruments(request_body, delete_mode=None, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] DeleteInstruments: Soft or hard delete multiple instruments # noqa: E501

Deletes a number of instruments identified by LusidInstrumentId. Soft deletion marks the instrument as inactive so it can no longer be referenced when creating or updating transactions or holdings. You can still query existing transactions and holdings related to the inactive instrument. In addition to the above behaviour, hard deletion: (i) completely removes all external identifiers from the instrument; (ii) marks the instrument as ‘Deleted’; (iii) prepends the instrument’s name with ‘DELETED ‘; (iv) prevents the instrument from being returned in list instruments queries. Following hard deletion, an instrument may only be retrieved by making a direct get instrument request for the LusidInstrumentId. Instrument deletion cannot be undone. Please note that currency instruments cannot currently be deleted. The maximum number of instruments that this method can delete per request is 2,000. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.delete_instruments(request_body, delete_mode, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • request_body (List[str]) – The list of lusidInstrumentId’s to delete. (required)

  • delete_mode (str) – The delete mode to use (defaults to ‘Soft’).

  • scope (str) – The scope in which the instruments lie. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

DeleteInstrumentsResponse

delete_instruments_with_http_info(request_body, delete_mode=None, scope=None, **kwargs)[source]

[EARLY ACCESS] DeleteInstruments: Soft or hard delete multiple instruments # noqa: E501

Deletes a number of instruments identified by LusidInstrumentId. Soft deletion marks the instrument as inactive so it can no longer be referenced when creating or updating transactions or holdings. You can still query existing transactions and holdings related to the inactive instrument. In addition to the above behaviour, hard deletion: (i) completely removes all external identifiers from the instrument; (ii) marks the instrument as ‘Deleted’; (iii) prepends the instrument’s name with ‘DELETED ‘; (iv) prevents the instrument from being returned in list instruments queries. Following hard deletion, an instrument may only be retrieved by making a direct get instrument request for the LusidInstrumentId. Instrument deletion cannot be undone. Please note that currency instruments cannot currently be deleted. The maximum number of instruments that this method can delete per request is 2,000. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.delete_instruments_with_http_info(request_body, delete_mode, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • request_body (List[str]) – The list of lusidInstrumentId’s to delete. (required)

  • delete_mode (str) – The delete mode to use (defaults to ‘Soft’).

  • scope (str) – The scope in which the instruments lie. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(DeleteInstrumentsResponse, status_code(int), headers(HTTPHeaderDict))

get_all_possible_features(instrument_type, async_req=None, **kwargs)[source]

[EXPERIMENTAL] GetAllPossibleFeatures: Provides list of all possible features for instrument type. # noqa: E501

Provides all possible instrument features an instrument of a given type can provide. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_all_possible_features(instrument_type, async_req=True)
>>> result = thread.get()
Parameters:
  • instrument_type (str) – A lusid instrument type e.g. Bond, FxOption. (required)

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

Dict[str, List[str]]

get_all_possible_features_with_http_info(instrument_type, **kwargs)[source]

[EXPERIMENTAL] GetAllPossibleFeatures: Provides list of all possible features for instrument type. # noqa: E501

Provides all possible instrument features an instrument of a given type can provide. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_all_possible_features_with_http_info(instrument_type, async_req=True)
>>> result = thread.get()
Parameters:
  • instrument_type (str) – A lusid instrument type e.g. Bond, FxOption. (required)

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(Dict[str, List[str]], status_code(int), headers(HTTPHeaderDict))

get_existing_instrument_capabilities(identifier, model=None, effective_at=None, as_at=None, instrument_scope=None, recipe_scope=None, recipe_code=None, async_req=None, **kwargs)[source]

[EXPERIMENTAL] GetExistingInstrumentCapabilities: Retrieve capabilities of an existing instrument identified by LUID. These include instrument features, and if model is provided it also includes supported address keys and economic dependencies. Given an lusid instrument id provides instrument capabilities, outlining features, and, given the model, the capabilities also include supported addresses as well as economic dependencies. # noqa: E501

Returns instrument capabilities containing useful information about the instrument and the model. This includes - features corresponding to the instrument e.g. Optionality:American, Other:InflationLinked - supported addresses (if model provided) e.g. Valuation/Pv, Valuation/DirtyPriceKey, Valuation/Accrued - economic dependencies (if model provided) e.g. Cash:USD, Fx:GBP.USD, Rates:GBP.GBPOIS # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_existing_instrument_capabilities(identifier, model, effective_at, as_at, instrument_scope, recipe_scope, recipe_code, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier (str) – A lusid instrument id identifying the instrument. (required)

  • model (str) – A pricing model for the instrument. Defaults to Unknown if not specified. If not specified the SupportedAddresses and EconomicDependencies are not provided.

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified.

  • instrument_scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • recipe_scope (str) – The scope in which the recipe lies. When not supplied the scope is ‘default’.

  • recipe_code (str) – A unique identifier for an entity, used to obtain configuration recipe details. Default configuration recipe is used if not provided.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

InstrumentCapabilities

get_existing_instrument_capabilities_with_http_info(identifier, model=None, effective_at=None, as_at=None, instrument_scope=None, recipe_scope=None, recipe_code=None, **kwargs)[source]

[EXPERIMENTAL] GetExistingInstrumentCapabilities: Retrieve capabilities of an existing instrument identified by LUID. These include instrument features, and if model is provided it also includes supported address keys and economic dependencies. Given an lusid instrument id provides instrument capabilities, outlining features, and, given the model, the capabilities also include supported addresses as well as economic dependencies. # noqa: E501

Returns instrument capabilities containing useful information about the instrument and the model. This includes - features corresponding to the instrument e.g. Optionality:American, Other:InflationLinked - supported addresses (if model provided) e.g. Valuation/Pv, Valuation/DirtyPriceKey, Valuation/Accrued - economic dependencies (if model provided) e.g. Cash:USD, Fx:GBP.USD, Rates:GBP.GBPOIS # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_existing_instrument_capabilities_with_http_info(identifier, model, effective_at, as_at, instrument_scope, recipe_scope, recipe_code, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier (str) – A lusid instrument id identifying the instrument. (required)

  • model (str) – A pricing model for the instrument. Defaults to Unknown if not specified. If not specified the SupportedAddresses and EconomicDependencies are not provided.

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified.

  • instrument_scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • recipe_scope (str) – The scope in which the recipe lies. When not supplied the scope is ‘default’.

  • recipe_code (str) – A unique identifier for an entity, used to obtain configuration recipe details. Default configuration recipe is used if not provided.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(InstrumentCapabilities, status_code(int), headers(HTTPHeaderDict))

get_existing_instrument_models(identifier, effective_at=None, as_at=None, instrument_scope=None, recipe_scope=None, recipe_code=None, async_req=None, **kwargs)[source]

GetExistingInstrumentModels: Retrieve supported pricing models for an existing instrument identified by LUID. # noqa: E501

Get the supported pricing models of a single instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_existing_instrument_models(identifier, effective_at, as_at, instrument_scope, recipe_scope, recipe_code, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier (str) – A lusid instrument id identifying the instrument. (required)

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified.

  • instrument_scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • recipe_scope (str) – The scope in which the recipe lies. When not supplied the scope is ‘default’.

  • recipe_code (str) – A unique identifier for an entity, used to obtain configuration recipe details. Default configuration recipe is used if not provided.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

InstrumentModels

get_existing_instrument_models_with_http_info(identifier, effective_at=None, as_at=None, instrument_scope=None, recipe_scope=None, recipe_code=None, **kwargs)[source]

GetExistingInstrumentModels: Retrieve supported pricing models for an existing instrument identified by LUID. # noqa: E501

Get the supported pricing models of a single instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_existing_instrument_models_with_http_info(identifier, effective_at, as_at, instrument_scope, recipe_scope, recipe_code, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier (str) – A lusid instrument id identifying the instrument. (required)

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified.

  • instrument_scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • recipe_scope (str) – The scope in which the recipe lies. When not supplied the scope is ‘default’.

  • recipe_code (str) – A unique identifier for an entity, used to obtain configuration recipe details. Default configuration recipe is used if not provided.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(InstrumentModels, status_code(int), headers(HTTPHeaderDict))

get_instrument(identifier_type, identifier, effective_at=None, as_at=None, property_keys=None, scope=None, relationship_definition_ids=None, async_req=None, **kwargs)[source]

GetInstrument: Get instrument # noqa: E501

Retrieve the definition of a particular instrument, as identified by a particular unique identifier. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument(identifier_type, identifier, effective_at, as_at, property_keys, scope, relationship_definition_ids, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to use, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified.

  • property_keys (List[str]) – A list of property keys from the ‘Instrument’ domain to decorate onto the instrument, or from any domain that supports relationships to decorate onto related entities. These must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • relationship_definition_ids (List[str]) – A list of relationship definitions that are used to decorate related entities onto the instrument in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

Instrument

get_instrument_identifier_types(async_req=None, **kwargs)[source]

GetInstrumentIdentifierTypes: Get instrument identifier types # noqa: E501

Retrieve a list of all valid instrument identifier types and whether they are unique or not. An instrument must have a value for at least one unique identifier type (it can have more than one unique type and value). In addition, a value is automatically generated for a LUSID Instrument ID (LUID) unique type by the system. An instrument can have values for multiple non-unique identifier types (or it can have zero non-unique types and values). # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_identifier_types(async_req=True)
>>> result = thread.get()
Parameters:
  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

ResourceListOfInstrumentIdTypeDescriptor

get_instrument_identifier_types_with_http_info(**kwargs)[source]

GetInstrumentIdentifierTypes: Get instrument identifier types # noqa: E501

Retrieve a list of all valid instrument identifier types and whether they are unique or not. An instrument must have a value for at least one unique identifier type (it can have more than one unique type and value). In addition, a value is automatically generated for a LUSID Instrument ID (LUID) unique type by the system. An instrument can have values for multiple non-unique identifier types (or it can have zero non-unique types and values). # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_identifier_types_with_http_info(async_req=True)
>>> result = thread.get()
Parameters:
  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(ResourceListOfInstrumentIdTypeDescriptor, status_code(int), headers(HTTPHeaderDict))

get_instrument_payment_diary(identifier_type, identifier, recipe_scope, recipe_code, effective_at=None, as_at=None, scope=None, async_req=None, **kwargs)[source]

[EXPERIMENTAL] GetInstrumentPaymentDiary: Get instrument payment diary # noqa: E501

Get the payment diary of a single instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_payment_diary(identifier_type, identifier, recipe_scope, recipe_code, effective_at, as_at, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The identifier being supplied e.g. “Figi”. (required)

  • identifier (str) – The value of the identifier for the requested instrument. (required)

  • recipe_scope (str) – The scope of the valuation recipe being used to generate the payment diary (required)

  • recipe_code (str) – The code of the valuation recipe being used to generate the payment diary (required)

  • effective_at (str) – The effective datetime or cut label at which to list the instrument’s properties. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to list the instrument’s properties. Defaults to return the latest version of each property if not specified.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

InstrumentPaymentDiary

get_instrument_payment_diary_with_http_info(identifier_type, identifier, recipe_scope, recipe_code, effective_at=None, as_at=None, scope=None, **kwargs)[source]

[EXPERIMENTAL] GetInstrumentPaymentDiary: Get instrument payment diary # noqa: E501

Get the payment diary of a single instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_payment_diary_with_http_info(identifier_type, identifier, recipe_scope, recipe_code, effective_at, as_at, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The identifier being supplied e.g. “Figi”. (required)

  • identifier (str) – The value of the identifier for the requested instrument. (required)

  • recipe_scope (str) – The scope of the valuation recipe being used to generate the payment diary (required)

  • recipe_code (str) – The code of the valuation recipe being used to generate the payment diary (required)

  • effective_at (str) – The effective datetime or cut label at which to list the instrument’s properties. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to list the instrument’s properties. Defaults to return the latest version of each property if not specified.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(InstrumentPaymentDiary, status_code(int), headers(HTTPHeaderDict))

get_instrument_properties(identifier_type, identifier, effective_at=None, as_at=None, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] GetInstrumentProperties: Get instrument properties # noqa: E501

List all the properties of a particular instrument, as identified by a particular unique identifier. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_properties(identifier_type, identifier, effective_at, as_at, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • effective_at (str) – The effective datetime or cut label at which to list the instrument’s properties. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to list the instrument’s properties. Defaults to returning the latest version of each property if not specified.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

InstrumentProperties

get_instrument_properties_with_http_info(identifier_type, identifier, effective_at=None, as_at=None, scope=None, **kwargs)[source]

[EARLY ACCESS] GetInstrumentProperties: Get instrument properties # noqa: E501

List all the properties of a particular instrument, as identified by a particular unique identifier. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_properties_with_http_info(identifier_type, identifier, effective_at, as_at, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • effective_at (str) – The effective datetime or cut label at which to list the instrument’s properties. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to list the instrument’s properties. Defaults to returning the latest version of each property if not specified.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(InstrumentProperties, status_code(int), headers(HTTPHeaderDict))

get_instrument_property_time_series(identifier_type, identifier, property_key, identifier_effective_at=None, as_at=None, filter=None, page=None, limit=None, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] GetInstrumentPropertyTimeSeries: Get instrument property time series # noqa: E501

Retrieve the complete time series (history) for a particular property of an instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_property_time_series(identifier_type, identifier, property_key, identifier_effective_at, as_at, filter, page, limit, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • property_key (str) – The property key of a property from the ‘Instrument’ domain whose history to retrieve. This must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’. (required)

  • identifier_effective_at (str) – The effective datetime used to resolve the instrument from the identifier. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument’s property history. Defaults to returning the current datetime if not supplied.

  • filter (str) – Expression to filter the results. For more information about filtering, see https://support.lusid.com/knowledgebase/article/KA-01914.

  • page (str) – The pagination token to use to continue listing properties; this value is returned from the previous call. If a pagination token is provided, the <i>filter</i>, <i>effectiveAt</i> and <i>asAt</i> fields must not have changed since the original request. For more information, see https://support.lusid.com/knowledgebase/article/KA-01915.

  • limit (int) – When paginating, limit the results to this number.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

ResourceListOfPropertyInterval

get_instrument_property_time_series_with_http_info(identifier_type, identifier, property_key, identifier_effective_at=None, as_at=None, filter=None, page=None, limit=None, scope=None, **kwargs)[source]

[EARLY ACCESS] GetInstrumentPropertyTimeSeries: Get instrument property time series # noqa: E501

Retrieve the complete time series (history) for a particular property of an instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_property_time_series_with_http_info(identifier_type, identifier, property_key, identifier_effective_at, as_at, filter, page, limit, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • property_key (str) – The property key of a property from the ‘Instrument’ domain whose history to retrieve. This must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’. (required)

  • identifier_effective_at (str) – The effective datetime used to resolve the instrument from the identifier. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument’s property history. Defaults to returning the current datetime if not supplied.

  • filter (str) – Expression to filter the results. For more information about filtering, see https://support.lusid.com/knowledgebase/article/KA-01914.

  • page (str) – The pagination token to use to continue listing properties; this value is returned from the previous call. If a pagination token is provided, the <i>filter</i>, <i>effectiveAt</i> and <i>asAt</i> fields must not have changed since the original request. For more information, see https://support.lusid.com/knowledgebase/article/KA-01915.

  • limit (int) – When paginating, limit the results to this number.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(ResourceListOfPropertyInterval, status_code(int), headers(HTTPHeaderDict))

get_instrument_relationships(identifier_type, identifier, effective_at=None, as_at=None, filter=None, identifier_types=None, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] GetInstrumentRelationships: Get Instrument relationships # noqa: E501

Get relationships for a particular Instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_relationships(identifier_type, identifier, effective_at, as_at, filter, identifier_types, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – An identifier type attached to the Instrument. (required)

  • identifier (str) – The identifier value. (required)

  • effective_at (str) – The effective datetime or cut label at which to get relationships. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve relationships. Defaults to return the latest LUSID AsAt time if not specified.

  • filter (str) – Expression to filter relationships. Users should provide null or empty string for this field until further notice.

  • identifier_types (List[str]) – Identifier types (as property keys) used for referencing Persons or Legal Entities. These can be specified from the ‘Person’ or ‘LegalEntity’ domains and have the format {domain}/{scope}/{code}, for example ‘Person/CompanyDetails/Role’. An Empty array may be used to return all related Entities.

  • scope (str) – The entity scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

ResourceListOfRelationship

get_instrument_relationships_with_http_info(identifier_type, identifier, effective_at=None, as_at=None, filter=None, identifier_types=None, scope=None, **kwargs)[source]

[EARLY ACCESS] GetInstrumentRelationships: Get Instrument relationships # noqa: E501

Get relationships for a particular Instrument. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_relationships_with_http_info(identifier_type, identifier, effective_at, as_at, filter, identifier_types, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – An identifier type attached to the Instrument. (required)

  • identifier (str) – The identifier value. (required)

  • effective_at (str) – The effective datetime or cut label at which to get relationships. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve relationships. Defaults to return the latest LUSID AsAt time if not specified.

  • filter (str) – Expression to filter relationships. Users should provide null or empty string for this field until further notice.

  • identifier_types (List[str]) – Identifier types (as property keys) used for referencing Persons or Legal Entities. These can be specified from the ‘Person’ or ‘LegalEntity’ domains and have the format {domain}/{scope}/{code}, for example ‘Person/CompanyDetails/Role’. An Empty array may be used to return all related Entities.

  • scope (str) – The entity scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(ResourceListOfRelationship, status_code(int), headers(HTTPHeaderDict))

get_instrument_with_http_info(identifier_type, identifier, effective_at=None, as_at=None, property_keys=None, scope=None, relationship_definition_ids=None, **kwargs)[source]

GetInstrument: Get instrument # noqa: E501

Retrieve the definition of a particular instrument, as identified by a particular unique identifier. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instrument_with_http_info(identifier_type, identifier, effective_at, as_at, property_keys, scope, relationship_definition_ids, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to use, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified.

  • property_keys (List[str]) – A list of property keys from the ‘Instrument’ domain to decorate onto the instrument, or from any domain that supports relationships to decorate onto related entities. These must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • relationship_definition_ids (List[str]) – A list of relationship definitions that are used to decorate related entities onto the instrument in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(Instrument, status_code(int), headers(HTTPHeaderDict))

get_instruments(identifier_type, request_body, effective_at=None, as_at=None, property_keys=None, scope=None, relationship_definition_ids=None, async_req=None, **kwargs)[source]

GetInstruments: Get instruments # noqa: E501

Retrieve the definition of one or more instruments, as identified by a collection of unique identifiers. Note that to retrieve all the instruments in the instrument master, use the List instruments endpoint instead. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instruments(identifier_type, request_body, effective_at, as_at, property_keys, scope, relationship_definition_ids, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to use, for example ‘Figi’. (required)

  • request_body (List[str]) – A list of one or more <i>identifierType</i> values to use to identify instruments. (required)

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument definitions. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument definitions. Defaults to returning the latest version of each instrument definition if not specified.

  • property_keys (List[str]) – A list of property keys from the ‘Instrument’ domain to decorate onto each instrument, or from any domain that supports relationships to decorate onto related entities. These must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • relationship_definition_ids (List[str]) – A list of relationship definitions that are used to decorate related entities onto each instrument in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

GetInstrumentsResponse

get_instruments_with_http_info(identifier_type, request_body, effective_at=None, as_at=None, property_keys=None, scope=None, relationship_definition_ids=None, **kwargs)[source]

GetInstruments: Get instruments # noqa: E501

Retrieve the definition of one or more instruments, as identified by a collection of unique identifiers. Note that to retrieve all the instruments in the instrument master, use the List instruments endpoint instead. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.get_instruments_with_http_info(identifier_type, request_body, effective_at, as_at, property_keys, scope, relationship_definition_ids, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to use, for example ‘Figi’. (required)

  • request_body (List[str]) – A list of one or more <i>identifierType</i> values to use to identify instruments. (required)

  • effective_at (str) – The effective datetime or cut label at which to retrieve the instrument definitions. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to retrieve the instrument definitions. Defaults to returning the latest version of each instrument definition if not specified.

  • property_keys (List[str]) – A list of property keys from the ‘Instrument’ domain to decorate onto each instrument, or from any domain that supports relationships to decorate onto related entities. These must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • relationship_definition_ids (List[str]) – A list of relationship definitions that are used to decorate related entities onto each instrument in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(GetInstrumentsResponse, status_code(int), headers(HTTPHeaderDict))

list_instrument_properties(identifier_type, identifier, effective_at=None, as_at=None, page=None, limit=None, scope=None, async_req=None, **kwargs)[source]

[EARLY ACCESS] ListInstrumentProperties: Get instrument properties (with Pagination) # noqa: E501

List all the properties of a particular instrument, as identified by a particular unique identifier. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.list_instrument_properties(identifier_type, identifier, effective_at, as_at, page, limit, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • effective_at (str) – The effective datetime or cut label at which to list the instrument’s properties. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to list the instrument’s properties. Defaults to returning the latest version of each property if not specified.

  • page (str) – The pagination token to use to continue listing commands; this value is returned from the previous call.

  • limit (int) – When paginating, limit the results per page to this number.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

ResourceListOfProperty

list_instrument_properties_with_http_info(identifier_type, identifier, effective_at=None, as_at=None, page=None, limit=None, scope=None, **kwargs)[source]

[EARLY ACCESS] ListInstrumentProperties: Get instrument properties (with Pagination) # noqa: E501

List all the properties of a particular instrument, as identified by a particular unique identifier. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.list_instrument_properties_with_http_info(identifier_type, identifier, effective_at, as_at, page, limit, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • effective_at (str) – The effective datetime or cut label at which to list the instrument’s properties. Defaults to the current LUSID system datetime if not specified.

  • as_at (datetime) – The asAt datetime at which to list the instrument’s properties. Defaults to returning the latest version of each property if not specified.

  • page (str) – The pagination token to use to continue listing commands; this value is returned from the previous call.

  • limit (int) – When paginating, limit the results per page to this number.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(ResourceListOfProperty, status_code(int), headers(HTTPHeaderDict))

list_instruments(as_at=None, effective_at=None, page=None, sort_by=None, limit=None, filter=None, instrument_property_keys=None, scope=None, relationship_definition_ids=None, async_req=None, **kwargs)[source]

ListInstruments: List instruments # noqa: E501

List all the instruments in the instrument master. To retrieve a particular set of instruments instead, use the Get instruments endpoint. The maximum number of instruments that this method can list per request is 2,000. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.list_instruments(as_at, effective_at, page, sort_by, limit, filter, instrument_property_keys, scope, relationship_definition_ids, async_req=True)
>>> result = thread.get()
Parameters:
  • as_at (datetime) – The asAt datetime at which to list instruments. Defaults to returning the latest version of each instrument if not specified.

  • effective_at (str) – The effective datetime or cut label at which to list instruments. Defaults to the current LUSID system datetime if not specified.

  • page (str) – The pagination token to use to continue listing instruments; this value is returned from the previous call. If a pagination token is provided, the <i>sortBy</i>, <i>filter</i>, <i>effectiveAt</i> and <i>asAt</i> fields must not have changed since the original request. For more information, see https://support.lusid.com/knowledgebase/article/KA-01915.

  • sort_by (List[str]) – A list of field names or properties to sort by, each suffixed by “ ASC” or “ DESC”.

  • limit (int) – When paginating, limit the results to this number.

  • filter (str) – Expression to filter the result set. Defaults to filtering out inactive instruments (that is, those that have been deleted). For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.

  • instrument_property_keys (List[str]) – A list of property keys from the ‘Instrument’ domain to decorate onto instruments, or from any domain that supports relationships to decorate onto related entities. These must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • relationship_definition_ids (List[str]) – A list of relationship definitions that are used to decorate related entities onto each instrument in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

PagedResourceListOfInstrument

list_instruments_with_http_info(as_at=None, effective_at=None, page=None, sort_by=None, limit=None, filter=None, instrument_property_keys=None, scope=None, relationship_definition_ids=None, **kwargs)[source]

ListInstruments: List instruments # noqa: E501

List all the instruments in the instrument master. To retrieve a particular set of instruments instead, use the Get instruments endpoint. The maximum number of instruments that this method can list per request is 2,000. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.list_instruments_with_http_info(as_at, effective_at, page, sort_by, limit, filter, instrument_property_keys, scope, relationship_definition_ids, async_req=True)
>>> result = thread.get()
Parameters:
  • as_at (datetime) – The asAt datetime at which to list instruments. Defaults to returning the latest version of each instrument if not specified.

  • effective_at (str) – The effective datetime or cut label at which to list instruments. Defaults to the current LUSID system datetime if not specified.

  • page (str) – The pagination token to use to continue listing instruments; this value is returned from the previous call. If a pagination token is provided, the <i>sortBy</i>, <i>filter</i>, <i>effectiveAt</i> and <i>asAt</i> fields must not have changed since the original request. For more information, see https://support.lusid.com/knowledgebase/article/KA-01915.

  • sort_by (List[str]) – A list of field names or properties to sort by, each suffixed by “ ASC” or “ DESC”.

  • limit (int) – When paginating, limit the results to this number.

  • filter (str) – Expression to filter the result set. Defaults to filtering out inactive instruments (that is, those that have been deleted). For more information about filtering results, see https://support.lusid.com/knowledgebase/article/KA-01914.

  • instrument_property_keys (List[str]) – A list of property keys from the ‘Instrument’ domain to decorate onto instruments, or from any domain that supports relationships to decorate onto related entities. These must have the format {domain}/{scope}/{code}, for example ‘Instrument/system/Name’.

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • relationship_definition_ids (List[str]) – A list of relationship definitions that are used to decorate related entities onto each instrument in the response. These must take the form {relationshipDefinitionScope}/{relationshipDefinitionCode}.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(PagedResourceListOfInstrument, status_code(int), headers(HTTPHeaderDict))

query_instrument_capabilities(lusid_instrument, model=None, async_req=None, **kwargs)[source]

[EXPERIMENTAL] QueryInstrumentCapabilities: Query capabilities of a particular instrument in advance of creating it. These include instrument features, and if model is provided it also includes supported address keys and economic dependencies. # noqa: E501

Returns instrument capabilities containing useful information about the instrument and the model. This includes - features corresponding to the instrument e.g. Optionality:American, Other:InflationLinked - supported addresses (if model provided) e.g. Valuation/Pv, Valuation/DirtyPriceKey, Valuation/Accrued - economic dependencies (if model provided) e.g. Cash:USD, Fx:GBP.USD, Rates:GBP.GBPOIS # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.query_instrument_capabilities(lusid_instrument, model, async_req=True)
>>> result = thread.get()
Parameters:
  • lusid_instrument (LusidInstrument) – The definition of the instrument. (required)

  • model (str) – A pricing model for the instrument. Defaults to Unknown if not specified. If not specified the SupportedAddresses and EconomicDependencies are not provided.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

InstrumentCapabilities

query_instrument_capabilities_with_http_info(lusid_instrument, model=None, **kwargs)[source]

[EXPERIMENTAL] QueryInstrumentCapabilities: Query capabilities of a particular instrument in advance of creating it. These include instrument features, and if model is provided it also includes supported address keys and economic dependencies. # noqa: E501

Returns instrument capabilities containing useful information about the instrument and the model. This includes - features corresponding to the instrument e.g. Optionality:American, Other:InflationLinked - supported addresses (if model provided) e.g. Valuation/Pv, Valuation/DirtyPriceKey, Valuation/Accrued - economic dependencies (if model provided) e.g. Cash:USD, Fx:GBP.USD, Rates:GBP.GBPOIS # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.query_instrument_capabilities_with_http_info(lusid_instrument, model, async_req=True)
>>> result = thread.get()
Parameters:
  • lusid_instrument (LusidInstrument) – The definition of the instrument. (required)

  • model (str) – A pricing model for the instrument. Defaults to Unknown if not specified. If not specified the SupportedAddresses and EconomicDependencies are not provided.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(InstrumentCapabilities, status_code(int), headers(HTTPHeaderDict))

update_instrument_identifier(identifier_type, identifier, update_instrument_identifier_request, scope=None, async_req=None, **kwargs)[source]

UpdateInstrumentIdentifier: Update instrument identifier # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.update_instrument_identifier(identifier_type, identifier, update_instrument_identifier_request, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • update_instrument_identifier_request (UpdateInstrumentIdentifierRequest) – The identifier to update or delete. This need not be the same value as the ‘identifier’ parameter used to retrieve the instrument. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

Instrument

update_instrument_identifier_with_http_info(identifier_type, identifier, update_instrument_identifier_request, scope=None, **kwargs)[source]

UpdateInstrumentIdentifier: Update instrument identifier # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.update_instrument_identifier_with_http_info(identifier_type, identifier, update_instrument_identifier_request, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • identifier_type (str) – The unique identifier type to search, for example ‘Figi’. (required)

  • identifier (str) – An <i>identifierType</i> value to use to identify the instrument, for example ‘BBG000BLNNV0’. (required)

  • update_instrument_identifier_request (UpdateInstrumentIdentifierRequest) – The identifier to update or delete. This need not be the same value as the ‘identifier’ parameter used to retrieve the instrument. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(Instrument, status_code(int), headers(HTTPHeaderDict))

upsert_instruments(request_body, scope=None, async_req=None, **kwargs)[source]

UpsertInstruments: Upsert instruments # noqa: E501

Create or update one or more instruments in the instrument master. An instrument is updated if it already exists and created if it does not. In the request, each instrument definition should be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each instrument in the response. Note that an instrument must have at least one unique identifier, which is a combination of a type (such as ‘Figi’) and a value (such as ‘BBG000BS1N49’). In addition, a random value is automatically generated for a LUSID Instrument ID (LUID) unique type by the system. For more information, see https://support.lusid.com/knowledgebase/article/KA-01862. The response returns both the collection of successfully created or updated instruments, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for unsuccessful results. The maximum number of instruments that this method can upsert per request is 2,000. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.upsert_instruments(request_body, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • request_body (Dict[str, InstrumentDefinition]) – The definitions of the instruments to create or update. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

UpsertInstrumentsResponse

upsert_instruments_properties(upsert_instrument_property_request, scope=None, async_req=None, **kwargs)[source]

UpsertInstrumentsProperties: Upsert instruments properties # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.upsert_instruments_properties(upsert_instrument_property_request, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • upsert_instrument_property_request (List[UpsertInstrumentPropertyRequest]) – A list of instruments and associated instrument properties to create or update. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

UpsertInstrumentPropertiesResponse

upsert_instruments_properties_with_http_info(upsert_instrument_property_request, scope=None, **kwargs)[source]

UpsertInstrumentsProperties: Upsert instruments properties # noqa: E501

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 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.upsert_instruments_properties_with_http_info(upsert_instrument_property_request, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • upsert_instrument_property_request (List[UpsertInstrumentPropertyRequest]) – A list of instruments and associated instrument properties to create or update. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(UpsertInstrumentPropertiesResponse, status_code(int), headers(HTTPHeaderDict))

upsert_instruments_with_http_info(request_body, scope=None, **kwargs)[source]

UpsertInstruments: Upsert instruments # noqa: E501

Create or update one or more instruments in the instrument master. An instrument is updated if it already exists and created if it does not. In the request, each instrument definition should be keyed by a unique correlation ID. This ID is ephemeral and not stored by LUSID. It serves only to easily identify each instrument in the response. Note that an instrument must have at least one unique identifier, which is a combination of a type (such as ‘Figi’) and a value (such as ‘BBG000BS1N49’). In addition, a random value is automatically generated for a LUSID Instrument ID (LUID) unique type by the system. For more information, see https://support.lusid.com/knowledgebase/article/KA-01862. The response returns both the collection of successfully created or updated instruments, as well as those that failed. For each failure, a reason is provided. It is important to check the failed set for unsuccessful results. The maximum number of instruments that this method can upsert per request is 2,000. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True

>>> thread = api.upsert_instruments_with_http_info(request_body, scope, async_req=True)
>>> result = thread.get()
Parameters:
  • request_body (Dict[str, InstrumentDefinition]) – The definitions of the instruments to create or update. (required)

  • scope (str) – The scope in which the instrument lies. When not supplied the scope is ‘default’.

  • async_req (bool, optional) – Whether to execute the request asynchronously.

  • _preload_content (bool, optional) – if False, the ApiResponse.data will be set to none and raw_data will store the HTTP response body without reading/decoding. Default is True.

  • _return_http_data_only (bool, optional) – response data instead of ApiResponse object with status code, headers, etc

  • _request_timeout – timeout setting for this request. If one number provided, it will be total request timeout. It can also be a pair (tuple) of (connection, read) timeouts.

  • _request_auth (dict, optional) – set to override the auth_settings for an a single request; this effectively ignores the authentication in the spec for a single request.

Returns:

Returns the result object. If the method is called asynchronously, returns the request thread.

Return type:

tuple(UpsertInstrumentsResponse, status_code(int), headers(HTTPHeaderDict))