@finbourne/lusid-sdk-angular18
Version:
An Angular (18) SDK for secure access to the LUSID® by FINBOURNE web API
703 lines • 58.4 kB
TypeScript
import { HttpClient, HttpHeaders, HttpResponse, HttpEvent, HttpParameterCodec, HttpContext } from '@angular/common/http';
import { Observable } from 'rxjs';
import { AddBusinessDaysToDateResponse } from '../model/addBusinessDaysToDateResponse';
import { BatchUpsertInstrumentPropertiesResponse } from '../model/batchUpsertInstrumentPropertiesResponse';
import { DeleteInstrumentPropertiesResponse } from '../model/deleteInstrumentPropertiesResponse';
import { DeleteInstrumentResponse } from '../model/deleteInstrumentResponse';
import { DeleteInstrumentsResponse } from '../model/deleteInstrumentsResponse';
import { GetInstrumentsResponse } from '../model/getInstrumentsResponse';
import { Instrument } from '../model/instrument';
import { InstrumentCapabilities } from '../model/instrumentCapabilities';
import { InstrumentDefinition } from '../model/instrumentDefinition';
import { InstrumentModels } from '../model/instrumentModels';
import { InstrumentPaymentDiary } from '../model/instrumentPaymentDiary';
import { InstrumentProperties } from '../model/instrumentProperties';
import { LusidInstrument } from '../model/lusidInstrument';
import { PagedResourceListOfInstrument } from '../model/pagedResourceListOfInstrument';
import { ResourceListOfInstrumentIdTypeDescriptor } from '../model/resourceListOfInstrumentIdTypeDescriptor';
import { ResourceListOfProperty } from '../model/resourceListOfProperty';
import { ResourceListOfPropertyInterval } from '../model/resourceListOfPropertyInterval';
import { ResourceListOfRelationship } from '../model/resourceListOfRelationship';
import { UpdateInstrumentIdentifierRequest } from '../model/updateInstrumentIdentifierRequest';
import { UpsertInstrumentPropertiesResponse } from '../model/upsertInstrumentPropertiesResponse';
import { UpsertInstrumentPropertyRequest } from '../model/upsertInstrumentPropertyRequest';
import { UpsertInstrumentsResponse } from '../model/upsertInstrumentsResponse';
import { Configuration } from '../configuration';
import * as i0 from "@angular/core";
export interface BatchUpsertInstrumentPropertiesRequestParams {
/** A list of instruments and associated instrument properties to create or update. */
requestBody: {
[key: string]: UpsertInstrumentPropertyRequest;
};
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** The effective datetime used to resolve each instrument from the provided identifiers. Defaults to the current LUSID system datetime if not specified. */
identifierEffectiveAt?: string;
/** Whether the batch request should fail Atomically or in a Partial fashion - Allowed Values: Atomic, Partial. */
successMode?: string;
/** The optional scope of a Custom Data Model to use */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use */
dataModelCode?: string;
}
export interface CalculateSettlementDateRequestParams {
/** An identifier type attached to the Instrument. */
identifierType: string;
/** The identifier value. */
identifier: string;
/** The transaction date to calculate the settlement date from. This can be a UTC datetime offset or a cut label. */
transactionDate?: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** The asAt datetime at which to retrieve the related instrument and calendars for calculation. Defaults to returning the latest version if not specified. */
asAt?: string;
}
export interface DeleteInstrumentRequestParams {
/** The unique identifier type to search, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface DeleteInstrumentPropertiesRequestParams {
/** The unique identifier type to search, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** A list of property keys from the \'Instruments\' domain whose properties to delete. */
requestBody: Array<string>;
/** 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. */
effectiveAt?: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** The optional scope of a Custom Data Model to use */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use */
dataModelCode?: string;
}
export interface DeleteInstrumentsRequestParams {
/** The list of lusidInstrumentId\'s to delete. */
requestBody: Array<string>;
/** The delete mode to use. Default value: Soft. Available values: Soft, Hard. */
deleteMode?: 'Soft' | 'Hard';
/** The scope in which the instruments lie. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface GetAllPossibleFeaturesRequestParams {
/** A lusid instrument type e.g. Bond, FxOption. */
instrumentType: string;
}
export interface GetExistingInstrumentCapabilitiesRequestParams {
/** A lusid instrument id identifying the instrument. */
identifier: string;
/** A pricing model for the instrument. Defaults to Unknown if not specified. If not specified the SupportedAddresses and EconomicDependencies are not provided. */
model?: string;
/** The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified. */
asAt?: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
instrumentScope?: string;
/** The scope in which the recipe lies. When not supplied the scope is \'default\'. */
recipeScope?: string;
/** A unique identifier for an entity, used to obtain configuration recipe details. Default configuration recipe is used if not provided. */
recipeCode?: string;
}
export interface GetExistingInstrumentModelsRequestParams {
/** A lusid instrument id identifying the instrument. */
identifier: string;
/** The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified. */
asAt?: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
instrumentScope?: string;
/** The scope in which the recipe lies. When not supplied the scope is \'default\'. */
recipeScope?: string;
/** A unique identifier for an entity, used to obtain configuration recipe details. Default configuration recipe is used if not provided. */
recipeCode?: string;
}
export interface GetInstrumentRequestParams {
/** The unique identifier type to use, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** The effective datetime or cut label at which to retrieve the instrument. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to retrieve the instrument. Defaults to returning the latest version if not specified. */
asAt?: string;
/** 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\'. */
propertyKeys?: Array<string>;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** 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}. */
relationshipDefinitionIds?: Array<string>;
/** The optional scope of a Custom Data Model to use. */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use. */
dataModelCode?: string;
/** The scope of the Timeline. */
timelineScope?: string;
/** The code of the Timeline. This can optionally include a colon followed by the Closed Period ID to use at the head of the timeline, for a timeline with unconfirmed periods. */
timelineCode?: string;
/** The closed period ID. If this is specified, both timelineScope and timelineCode must be specified. */
closedPeriodId?: string;
}
export interface GetInstrumentPaymentDiaryRequestParams {
/** The identifier being supplied e.g. \"Figi\". */
identifierType: string;
/** The value of the identifier for the requested instrument. */
identifier: string;
/** The scope of the valuation recipe being used to generate the payment diary */
recipeScope: string;
/** The code of the valuation recipe being used to generate the payment diary */
recipeCode: string;
/** The effective datetime or cut label at which to list the instrument\'s properties. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to list the instrument\'s properties. Defaults to return the latest version of each property if not specified. */
asAt?: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface GetInstrumentPropertiesRequestParams {
/** The unique identifier type to search, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** The effective datetime or cut label at which to list the instrument\'s properties. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to list the instrument\'s properties. Defaults to returning the latest version of each property if not specified. */
asAt?: string;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface GetInstrumentPropertyTimeSeriesRequestParams {
/** The unique identifier type to search, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** 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\'. */
propertyKey: string;
/** The effective datetime used to resolve the instrument from the identifier. Defaults to the current LUSID system datetime if not specified. */
identifierEffectiveAt?: string;
/** The asAt datetime at which to retrieve the instrument\'s property history. Defaults to returning the current datetime if not supplied. */
asAt?: string;
/** Expression to filter the results. For more information about filtering, see https://support.lusid.com/knowledgebase/article/KA-01914. */
filter?: string;
/** 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. */
page?: string;
/** When paginating, limit the results to this number. */
limit?: number;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface GetInstrumentRelationshipsRequestParams {
/** An identifier type attached to the Instrument. */
identifierType: string;
/** The identifier value. */
identifier: string;
/** The effective datetime or cut label at which to get relationships. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to retrieve relationships. Defaults to return the latest LUSID AsAt time if not specified. */
asAt?: string;
/** Expression to filter relationships. Users should provide null or empty string for this field until further notice. */
filter?: string;
/** 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. */
identifierTypes?: Array<string>;
/** The entity scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface GetInstrumentsRequestParams {
/** The unique identifier type to use, for example \'Figi\'. */
identifierType: string;
/** A list of one or more <i>identifierType</i> values to use to identify instruments. */
requestBody: Array<string>;
/** The effective datetime or cut label at which to retrieve the instrument definitions. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to retrieve the instrument definitions. Defaults to returning the latest version of each instrument definition if not specified. */
asAt?: string;
/** 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\'. */
propertyKeys?: Array<string>;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** 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}. */
relationshipDefinitionIds?: Array<string>;
/** The optional scope of a Custom Data Model to use. */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use. */
dataModelCode?: string;
}
export interface ListInstrumentPropertiesRequestParams {
/** The unique identifier type to search, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** The effective datetime or cut label at which to list the instrument\'s properties. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** The asAt datetime at which to list the instrument\'s properties. Defaults to returning the latest version of each property if not specified. */
asAt?: string;
/** The pagination token to use to continue listing commands; this value is returned from the previous call. */
page?: string;
/** When paginating, limit the results per page to this number. */
limit?: number;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
}
export interface ListInstrumentsRequestParams {
/** The asAt datetime at which to list instruments. Defaults to returning the latest version of each instrument if not specified. */
asAt?: string;
/** The effective datetime or cut label at which to list instruments. Defaults to the current LUSID system datetime if not specified. */
effectiveAt?: string;
/** 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. */
page?: string;
/** A list of field names or properties to sort by, each suffixed by \" ASC\" or \" DESC\". */
sortBy?: Array<string>;
/** When paginating, limit the results to this number. */
limit?: number;
/** 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. */
filter?: string;
/** 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\'. */
instrumentPropertyKeys?: Array<string>;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. Use \'*\' to list instruments across all scopes. */
scope?: string;
/** 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}. */
relationshipDefinitionIds?: Array<string>;
/** The optional scope of a Custom Data Model to use. */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use. */
dataModelCode?: string;
/** The membership types of the specified Custom Data Model to return. Default value: Member. Available values: All, Member, Candidate. */
membershipType?: string;
/** The scope of the Timeline. */
timelineScope?: string;
/** The code of the Timeline. This can optionally include a colon followed by the Closed Period ID to use at the head of the timeline, for a timeline with unconfirmed periods. */
timelineCode?: string;
/** The closed period ID. If this is specified, both timelineScope and timelineCode must be specified. */
closedPeriodId?: string;
}
export interface QueryInstrumentCapabilitiesRequestParams {
/** The definition of the instrument. */
lusidInstrument: LusidInstrument;
/** A pricing model for the instrument. Defaults to Unknown if not specified. If not specified the SupportedAddresses and EconomicDependencies are not provided. */
model?: string;
}
export interface UpdateInstrumentIdentifierRequestParams {
/** The unique identifier type to search, for example \'Figi\'. */
identifierType: string;
/** An <i>identifierType</i> value to use to identify the instrument, for example \'BBG000BLNNV0\'. */
identifier: string;
/** The identifier to update or delete. This need not be the same value as the \'identifier\' parameter used to retrieve the instrument. */
updateInstrumentIdentifierRequest: UpdateInstrumentIdentifierRequest;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** The optional scope of a Custom Data Model to use */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use */
dataModelCode?: string;
}
export interface UpsertInstrumentsRequestParams {
/** The definitions of the instruments to create or update. */
requestBody: {
[key: string]: InstrumentDefinition;
};
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** The optional scope of a Custom Data Model to use */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use */
dataModelCode?: string;
}
export interface UpsertInstrumentsPropertiesRequestParams {
/** A list of instruments and associated instrument properties to create or update. */
upsertInstrumentPropertyRequest: Array<UpsertInstrumentPropertyRequest>;
/** The scope in which the instrument lies. When not supplied the scope is \'default\'. */
scope?: string;
/** The optional scope of a Custom Data Model to use */
dataModelScope?: string;
/** The optional code of a Custom Data Model to use */
dataModelCode?: string;
}
export declare class InstrumentsService {
protected httpClient: HttpClient;
protected basePath: string;
defaultHeaders: HttpHeaders;
configuration: Configuration;
encoder: HttpParameterCodec;
constructor(httpClient: HttpClient, basePath: string | string[], configuration: Configuration);
private addToHttpParams;
private addToHttpParamsRecursive;
/**
* BatchUpsertInstrumentProperties: Batch upsert instruments properties
* 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.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
batchUpsertInstrumentProperties(requestParameters?: BatchUpsertInstrumentPropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<BatchUpsertInstrumentPropertiesResponse>;
batchUpsertInstrumentProperties(requestParameters?: BatchUpsertInstrumentPropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<BatchUpsertInstrumentPropertiesResponse>>;
batchUpsertInstrumentProperties(requestParameters?: BatchUpsertInstrumentPropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<BatchUpsertInstrumentPropertiesResponse>>;
/**
* CalculateSettlementDate: Get the settlement date for an instrument.
* Get the settlement date for a given trade date and instrument. The calculated settlement date will be in UTC. If a cut label transaction date is provided, the settlement date will be calculated relative to the absolute UTC datetime.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
calculateSettlementDate(requestParameters?: CalculateSettlementDateRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<AddBusinessDaysToDateResponse>;
calculateSettlementDate(requestParameters?: CalculateSettlementDateRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<AddBusinessDaysToDateResponse>>;
calculateSettlementDate(requestParameters?: CalculateSettlementDateRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<AddBusinessDaysToDateResponse>>;
/**
* DeleteInstrument: Soft delete a single instrument
* 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.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
deleteInstrument(requestParameters?: DeleteInstrumentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<DeleteInstrumentResponse>;
deleteInstrument(requestParameters?: DeleteInstrumentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<DeleteInstrumentResponse>>;
deleteInstrument(requestParameters?: DeleteInstrumentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<DeleteInstrumentResponse>>;
/**
* DeleteInstrumentProperties: Delete instrument properties
* 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.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
deleteInstrumentProperties(requestParameters?: DeleteInstrumentPropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<DeleteInstrumentPropertiesResponse>;
deleteInstrumentProperties(requestParameters?: DeleteInstrumentPropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<DeleteInstrumentPropertiesResponse>>;
deleteInstrumentProperties(requestParameters?: DeleteInstrumentPropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<DeleteInstrumentPropertiesResponse>>;
/**
* DeleteInstruments: Soft or hard delete multiple instruments
* 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.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
deleteInstruments(requestParameters?: DeleteInstrumentsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<DeleteInstrumentsResponse>;
deleteInstruments(requestParameters?: DeleteInstrumentsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<DeleteInstrumentsResponse>>;
deleteInstruments(requestParameters?: DeleteInstrumentsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<DeleteInstrumentsResponse>>;
/**
* GetAllPossibleFeatures: Provides list of all possible features for instrument type.
* Provides all possible instrument features an instrument of a given type can provide.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getAllPossibleFeatures(requestParameters?: GetAllPossibleFeaturesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<{
[key: string]: Array<string>;
}>;
getAllPossibleFeatures(requestParameters?: GetAllPossibleFeaturesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<{
[key: string]: Array<string>;
}>>;
getAllPossibleFeatures(requestParameters?: GetAllPossibleFeaturesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<{
[key: string]: Array<string>;
}>>;
/**
* 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.
* 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
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getExistingInstrumentCapabilities(requestParameters?: GetExistingInstrumentCapabilitiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<InstrumentCapabilities>;
getExistingInstrumentCapabilities(requestParameters?: GetExistingInstrumentCapabilitiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<InstrumentCapabilities>>;
getExistingInstrumentCapabilities(requestParameters?: GetExistingInstrumentCapabilitiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<InstrumentCapabilities>>;
/**
* GetExistingInstrumentModels: Retrieve supported pricing models for an existing instrument identified by LUID.
* Get the supported pricing models of a single instrument.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getExistingInstrumentModels(requestParameters?: GetExistingInstrumentModelsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<InstrumentModels>;
getExistingInstrumentModels(requestParameters?: GetExistingInstrumentModelsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<InstrumentModels>>;
getExistingInstrumentModels(requestParameters?: GetExistingInstrumentModelsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<InstrumentModels>>;
/**
* GetInstrument: Get instrument
* Retrieve the definition of a particular instrument, as identified by a particular unique identifier.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstrument(requestParameters?: GetInstrumentRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<Instrument>;
getInstrument(requestParameters?: GetInstrumentRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<Instrument>>;
getInstrument(requestParameters?: GetInstrumentRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<Instrument>>;
/**
* GetInstrumentIdentifierTypes: Get instrument identifier types
* 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).
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstrumentIdentifierTypes(observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<ResourceListOfInstrumentIdTypeDescriptor>;
getInstrumentIdentifierTypes(observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<ResourceListOfInstrumentIdTypeDescriptor>>;
getInstrumentIdentifierTypes(observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<ResourceListOfInstrumentIdTypeDescriptor>>;
/**
* GetInstrumentPaymentDiary: Get instrument payment diary
* Get the payment diary of a single instrument.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstrumentPaymentDiary(requestParameters?: GetInstrumentPaymentDiaryRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<InstrumentPaymentDiary>;
getInstrumentPaymentDiary(requestParameters?: GetInstrumentPaymentDiaryRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<InstrumentPaymentDiary>>;
getInstrumentPaymentDiary(requestParameters?: GetInstrumentPaymentDiaryRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<InstrumentPaymentDiary>>;
/**
* GetInstrumentProperties: Get instrument properties
* List all the properties of a particular instrument, as identified by a particular unique identifier.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstrumentProperties(requestParameters?: GetInstrumentPropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<InstrumentProperties>;
getInstrumentProperties(requestParameters?: GetInstrumentPropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<InstrumentProperties>>;
getInstrumentProperties(requestParameters?: GetInstrumentPropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<InstrumentProperties>>;
/**
* GetInstrumentPropertyTimeSeries: Get instrument property time series
* Retrieve the complete time series (history) for a particular property of an instrument.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstrumentPropertyTimeSeries(requestParameters?: GetInstrumentPropertyTimeSeriesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<ResourceListOfPropertyInterval>;
getInstrumentPropertyTimeSeries(requestParameters?: GetInstrumentPropertyTimeSeriesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<ResourceListOfPropertyInterval>>;
getInstrumentPropertyTimeSeries(requestParameters?: GetInstrumentPropertyTimeSeriesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<ResourceListOfPropertyInterval>>;
/**
* GetInstrumentRelationships: Get Instrument relationships
* Get relationships for a particular Instrument.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstrumentRelationships(requestParameters?: GetInstrumentRelationshipsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<ResourceListOfRelationship>;
getInstrumentRelationships(requestParameters?: GetInstrumentRelationshipsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<ResourceListOfRelationship>>;
getInstrumentRelationships(requestParameters?: GetInstrumentRelationshipsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<ResourceListOfRelationship>>;
/**
* GetInstruments: Get instruments
* 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.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
getInstruments(requestParameters?: GetInstrumentsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<GetInstrumentsResponse>;
getInstruments(requestParameters?: GetInstrumentsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<GetInstrumentsResponse>>;
getInstruments(requestParameters?: GetInstrumentsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<GetInstrumentsResponse>>;
/**
* ListInstrumentProperties: Get instrument properties (with Pagination)
* List all the properties of a particular instrument, as identified by a particular unique identifier.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
listInstrumentProperties(requestParameters?: ListInstrumentPropertiesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<ResourceListOfProperty>;
listInstrumentProperties(requestParameters?: ListInstrumentPropertiesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpResponse<ResourceListOfProperty>>;
listInstrumentProperties(requestParameters?: ListInstrumentPropertiesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpEvent<ResourceListOfProperty>>;
/**
* ListInstruments: List instruments
* List all the instruments in the instrument master. To retrieve a particular set of instruments instead, use the Get instruments endpoint. Use scope \'*\' to list instruments across all scopes. The maximum number of instruments that this method can list per request is 2,000.
* @param requestParameters
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
* @param reportProgress flag to report request and response progress.
*/
listInstruments(requestParameters?: ListInstrumentsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<PagedResourceListOfInstrument>;
listInstruments(requestParameters?: ListInstrumentsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {
httpHeaderAccept?: 'text/plain' | 'application/json' | 'text/json';
context?: HttpContext;
transferCache?: boolean;
}): Observable<HttpRe