REST API Tutorial 15: Historical Chain Constituents Search

Last update Jan 2026
Environment Any
Language Any HTTP is supported
Compilers None
Prerequisites DSS login, internet access
Source code Below

Tutorial purpose

There are several available historical search calls to retrieve instrument identifiers:

  • Historical Search
  • Historical Criteria Search
  • Historical Chain Resolution

This tutorial covers the third type, explaining how to search for the historical constituents of a chain, and will retrieve the constituents of the Dow Jones chain RIC 0#.DJI on the 1st of January 2008.

 

Table of contents

 

Historical chain resolution - HTTP request

Note: for all requests we need to include a user token in the header of our request. This was retrieved in Tutorial 1.

URL:

    	
            https://selectapi.datascope.lseg.com/RestApi/v1/Search/HistoricalChainResolution
        
        
    

Method:          POST

Headers:

    	
            

Prefer: respond-async

Content-Type: application/json

Authorization: Token F0ABE9A3FFF2E02E10AE2765ED872C59B8CC3B40EBB61B30E295E71DE31C254B8648DB9434C2DF9299FDC668AA123501F322D99D45C8B93438063C912BC936C7B87062B0CF812138863F5D836A7B31A32DCA67EF07B3B50B2FC4978DF6F76784FDF35FCB523A8430DA93613BC5730CDC310D4D241718F9FC3F2E55465A24957CC287BDEC79046B31AD642606275AEAD76318CB221BD843348E1483670DA13968D8A242AAFCF9E13E23240C905AE46DED9EDCA9BB316B4C5C767B18DB2EA7ADD100817ADF059D01394BC6375BECAF6138C25DBA57577F0061

Body:

The body of the request contains several parts:

  • The chain RIC.
  • The date range. Here we chose a single date.
    	
            

{

  "Request": {

    "ChainRics": [

      "0#.DJI"

    ],

    "Range": {

      "Start": "2008-01-01T00:00:00.000Z",

      "End": "2008-01-01T00:00:00.000Z"

    }

  }

}

 

Historical chain resolution - HTTP response

Status:                        200 OK

Relevant headers:

    	
            Content-Type: application/json; charset=utf-8
        
        
    

Body:

    	
            

{

  "@odata.context": "https://selectapi.datascope.lseg.com/RestApi/v1/$metadata#Collection(DataScope.Select.Api.Search.HistoricalChainInstrument)",

  "value": [

    {

      "Identifier": "0#.DJI",

      "IdentifierType": "ChainRIC",

      "Source": "",

      "Key": "VjF8MHgxMDAwMDAwMDAwMDAwMDAwfDB4MTAwMDAwMDAwMDAwMDAwMHx8Q0hSfENIUnxDSFJ8SHx8MCMuREpJfA",

      "Description": "Historical Chain",

      "InstrumentType": "Unknown",

      "Status": "Valid",

      "Constituents": [

        {

          "Identifier": ".DJI",

          "IdentifierType": "Ric",

          "Source": "",

          "Key": "VjF8MHgzMDAwMDAwMDAwMDAwMDAwfDB4MzAwMDAwMDAwMDAwMDAwMHx8fHx8fHwuREpJfA",

          "Description": "Historical Instrument",

          "InstrumentType": "Unknown",

          "Status": "Valid",

          "DomainCode": "6"

        },

        {

          "Identifier": "AA.N",

          "IdentifierType": "Ric",

          "Source": "",

          "Key": "VjF8MHgzMDAwMDAwMDAwMDAwMDAwfDB4MzAwMDAwMDAwMDAwMDAwMHx8fHx8fHxBQS5OfA",

          "Description": "Historical Instrument",

          "InstrumentType": "Unknown",

          "Status": "Valid",

          "DomainCode": "6"

        },

...

There are many more results, the above is just the first part.

Note: domain code 6 is for Market Price.