Created
June 5, 2019 08:14
-
-
Save rizwansaeed/a8413c9dd55715b1a6e71fce93f2f89c to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"swagger": "2.0", | |
"info": { | |
"version": "0.10.190", | |
"title": "LUSID API" | |
}, | |
"paths": { | |
"/api/instruments": { | |
"post": { | |
"tags": [ | |
"Instruments" | |
], | |
"summary": "Upsert instruments", | |
"description": "Upsert instruments", | |
"operationId": "UpsertInstruments", | |
"consumes": [], | |
"produces": [ | |
"text/plain", | |
"application/json", | |
"text/json" | |
], | |
"parameters": [ | |
{ | |
"name": "requests", | |
"in": "body", | |
"description": "The instrument definitions", | |
"required": false, | |
"schema": { | |
"type": "object", | |
"additionalProperties": { | |
"$ref": "#/definitions/InstrumentDefinition" | |
} | |
} | |
} | |
], | |
"responses": { | |
"201": { | |
"description": "Success", | |
"schema": { | |
"$ref": "#/definitions/UpsertInstrumentsResponse" | |
} | |
}, | |
"400": { | |
"description": "The details of the input related failure", | |
"schema": { | |
"$ref": "#/definitions/LusidValidationProblemDetails" | |
} | |
}, | |
"default": { | |
"description": "Error response", | |
"schema": { | |
"$ref": "#/definitions/LusidProblemDetails" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"definitions": { | |
"Link": { | |
"required": [ | |
"relation", | |
"href", | |
"method" | |
], | |
"type": "object", | |
"properties": { | |
"relation": { | |
"enum": [ | |
"Root", | |
"Properties", | |
"Transactions", | |
"Details", | |
"Constituents", | |
"Holdings", | |
"Commands", | |
"HoldingsAdjustments", | |
"Parent", | |
"PropertySchema", | |
"EntitySchema", | |
"NextPage", | |
"PreviousPage", | |
"Quote", | |
"ConstituentsAdjustments", | |
"Values" | |
], | |
"type": "string" | |
}, | |
"href": { | |
"type": "string" | |
}, | |
"description": { | |
"type": "string" | |
}, | |
"method": { | |
"enum": [ | |
"POST", | |
"GET", | |
"PATCH", | |
"DELETE" | |
], | |
"type": "string" | |
} | |
} | |
}, | |
"LusidValidationProblemDetails": { | |
"required": [ | |
"name", | |
"code" | |
], | |
"type": "object", | |
"properties": { | |
"name": { | |
"type": "string" | |
}, | |
"errorDetails": { | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"type": "object", | |
"additionalProperties": { | |
"type": "string" | |
} | |
} | |
}, | |
"code": { | |
"format": "int32", | |
"type": "integer" | |
}, | |
"errors": { | |
"type": "object", | |
"additionalProperties": { | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"type": "string" | |
} | |
}, | |
"readOnly": true | |
}, | |
"type": { | |
"type": "string" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"status": { | |
"format": "int32", | |
"type": "integer" | |
}, | |
"detail": { | |
"type": "string" | |
}, | |
"instance": { | |
"type": "string" | |
} | |
} | |
}, | |
"LusidProblemDetails": { | |
"required": [ | |
"name", | |
"code" | |
], | |
"type": "object", | |
"properties": { | |
"name": { | |
"type": "string" | |
}, | |
"errorDetails": { | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"type": "object", | |
"additionalProperties": { | |
"type": "string" | |
} | |
} | |
}, | |
"code": { | |
"format": "int32", | |
"type": "integer" | |
}, | |
"type": { | |
"type": "string" | |
}, | |
"title": { | |
"type": "string" | |
}, | |
"status": { | |
"format": "int32", | |
"type": "integer" | |
}, | |
"detail": { | |
"type": "string" | |
}, | |
"instance": { | |
"type": "string" | |
} | |
} | |
}, | |
"ResourceId": { | |
"type": "object", | |
"properties": { | |
"scope": { | |
"type": "string" | |
}, | |
"code": { | |
"type": "string" | |
} | |
} | |
}, | |
"Version": { | |
"description": "Describes the version metadata of an entity.", | |
"type": "object", | |
"properties": { | |
"effectiveFrom": { | |
"format": "date-time", | |
"description": "", | |
"type": "string" | |
}, | |
"asAtDate": { | |
"format": "date-time", | |
"description": "", | |
"type": "string" | |
} | |
} | |
}, | |
"ErrorDetail": { | |
"type": "object", | |
"properties": { | |
"id": { | |
"type": "string" | |
}, | |
"type": { | |
"type": "string" | |
}, | |
"detail": { | |
"type": "string" | |
} | |
} | |
}, | |
"InstrumentDefinition": { | |
"required": [ | |
"name", | |
"identifiers" | |
], | |
"type": "object", | |
"properties": { | |
"name": { | |
"description": "Required. The name of the instrument", | |
"type": "string" | |
}, | |
"identifiers": { | |
"description": "Required. A set of identifiers that identify this instrument", | |
"type": "object", | |
"additionalProperties": { | |
"$ref": "#/definitions/InstrumentIdValue" | |
} | |
}, | |
"properties": { | |
"description": "Optional. A collection of properties to upsert on the instrument.", | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"$ref": "#/definitions/InstrumentProperty" | |
} | |
}, | |
"lookThroughPortfolioId": { | |
"$ref": "#/definitions/ResourceId", | |
"description": "Optional. The identifier of the portfolio that represents this instrument." | |
}, | |
"definition": { | |
"$ref": "#/definitions/InstrumentEconomicDefinition", | |
"description": "Expanded instrument definition" | |
} | |
} | |
}, | |
"InstrumentIdValue": { | |
"required": [ | |
"value" | |
], | |
"type": "object", | |
"properties": { | |
"value": { | |
"description": "The value of the instrument id, which must not be empty or null. e.g, 'BBG123456'", | |
"type": "string" | |
}, | |
"effectiveAt": { | |
"format": "date-time", | |
"description": "The effective at date of the instrument id, which is optional. The default value in the null case\r\nis DateTimeOffset.MinValue.", | |
"type": "string" | |
} | |
} | |
}, | |
"InstrumentProperty": { | |
"type": "object", | |
"properties": { | |
"key": { | |
"description": "The property key of the property, e.g, 'Instrument/default/Isin'", | |
"type": "string" | |
}, | |
"value": { | |
"$ref": "#/definitions/PropertyValue", | |
"description": "The value of the property, which must not be empty or null. e.g, 'US0378331005'" | |
} | |
} | |
}, | |
"InstrumentEconomicDefinition": { | |
"description": "Expanded instrument definition", | |
"required": [ | |
"instrumentFormat", | |
"content" | |
], | |
"type": "object", | |
"properties": { | |
"instrumentFormat": { | |
"type": "string" | |
}, | |
"content": { | |
"type": "string" | |
} | |
} | |
}, | |
"PropertyValue": { | |
"type": "object", | |
"properties": { | |
"labelValue": { | |
"description": "", | |
"type": "string" | |
}, | |
"metricValue": { | |
"$ref": "#/definitions/MetricValue", | |
"description": "" | |
}, | |
"effectiveFrom": { | |
"format": "date-time", | |
"description": "Date for which the property is effective from", | |
"type": "string" | |
} | |
} | |
}, | |
"MetricValue": { | |
"type": "object", | |
"properties": { | |
"value": { | |
"format": "double", | |
"type": "number" | |
}, | |
"unit": { | |
"type": "string" | |
} | |
} | |
}, | |
"UpsertInstrumentsResponse": { | |
"type": "object", | |
"properties": { | |
"href": { | |
"type": "string" | |
}, | |
"values": { | |
"description": "The collection of upserted instruments with their latest parameters.", | |
"type": "object", | |
"additionalProperties": { | |
"$ref": "#/definitions/Instrument" | |
} | |
}, | |
"failed": { | |
"description": "If any instruments failed to be upserted, they will be listed in 'Failed', along\r\nwith a reason why.", | |
"type": "object", | |
"additionalProperties": { | |
"$ref": "#/definitions/ErrorDetail" | |
} | |
}, | |
"links": { | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"$ref": "#/definitions/Link" | |
} | |
} | |
} | |
}, | |
"Instrument": { | |
"required": [ | |
"state" | |
], | |
"type": "object", | |
"properties": { | |
"href": { | |
"type": "string" | |
}, | |
"lusidInstrumentId": { | |
"description": "The lusid instrument id (LUID) of the instrument", | |
"type": "string" | |
}, | |
"version": { | |
"$ref": "#/definitions/Version", | |
"description": "The version of the instrument" | |
}, | |
"name": { | |
"description": "The name of the instrument", | |
"type": "string" | |
}, | |
"identifiers": { | |
"description": "The set of identifiers that can be used to uniquely identify the instrument", | |
"type": "object", | |
"additionalProperties": { | |
"type": "string" | |
} | |
}, | |
"properties": { | |
"description": "Any requested instrument properties. If no property can be found for the instrument, then\r\na value of 'Unknown' will be returned", | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"$ref": "#/definitions/Property" | |
} | |
}, | |
"lookthroughPortfolio": { | |
"$ref": "#/definitions/ResourceId", | |
"description": "The lookthrough portfolio of the instrument (if any)." | |
}, | |
"instrumentDefinition": { | |
"$ref": "#/definitions/InstrumentEconomicDefinition", | |
"description": "The economic definition of the instrument for an OTC or instrument where an expanded definition exists." | |
}, | |
"state": { | |
"enum": [ | |
"Active", | |
"Inactive" | |
], | |
"type": "string" | |
}, | |
"links": { | |
"uniqueItems": false, | |
"type": "array", | |
"items": { | |
"$ref": "#/definitions/Link" | |
} | |
} | |
} | |
}, | |
"Property": { | |
"required": [ | |
"key", | |
"value" | |
], | |
"type": "object", | |
"properties": { | |
"key": { | |
"description": "", | |
"type": "string" | |
}, | |
"value": { | |
"description": "", | |
"type": "object" | |
}, | |
"unit": { | |
"description": "", | |
"type": "string" | |
}, | |
"effectiveFrom": { | |
"format": "date-time", | |
"description": "Date for which the property is effective from", | |
"type": "string" | |
} | |
} | |
} | |
}, | |
"securityDefinitions": { | |
"oauth2": { | |
"flow": "implicit", | |
"authorizationUrl": "https://lusid.okta.com/oauth2/aus5al5yopbHW2wJn2p6/v1/authorize", | |
"type": "oauth2", | |
"description": "OAuth2 Implicit Grant" | |
} | |
}, | |
"security": [ | |
{ | |
"oauth2": [] | |
} | |
], | |
"tags": [ | |
{ | |
"name": "Instruments", | |
"description": "Methods for interacting with instruments" | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment