Retrieve RIC codes from ISIN and Exchange in instrument search

I am currently working on retrieving RICs for instruments using the Refinitiv API, given an ISIN and exchange. I am using the endpoint: https://selectapi.datascope.refinitiv.com/RestApi/v1/Search/InstrumentSearch.

My goal is to obtain the specific RIC for a given exchange and ISIN from the search results.

search.png

For example, I am querying for an instrument with the ISIN: US912828H458 and exchange: New York Stock Exchange. However, in the response, I receive multiple identifiers and sources, but I cannot locate the exchange code for the New York Stock Exchange (NYS).


Here is a sample of the response I am receiving:

{

"@odata.context": "https://selectapi.datascope.refinitiv.com/RestApi/v1/$metadata#Collection(DataScope.Select.Api.Content.ValidatedInstrument)",

"value": [

{

"Identifier": "912828H45",

"IdentifierType": "Cusip",

"Source": "U81",

"Key": "VjF8MHgwMDA0MDUxYzkwYzYxOTUyfDB4MDAwNDA1MWM5MGM2MTk1MnxVODF8R0NRVXxHT1ZUfEdCTkR8R3xOfHw",

"Description": "UST 0.250 01/15/25",

"InstrumentType": "GovCorpQuote",

"Status": "Valid"

},

{

"Identifier": "912828H45=RRPS",

"IdentifierType": "Ric",

"Source": "EJV",

"Key": "VjF8MHgwMDA0MDUxYzkwYzYxOTUyfDB4MDAwNDA1MWM5MjllNjQ3NXxEM058R0NCRHxHT1ZUfEdCTkR8R3xOfFVTOTEyODI4SDQ1PVBYfA",

"Description": "UST 0.250 01/15/25",

"InstrumentType": "GovCorpBond",

"Status": "Valid"

}

..

],

"@odata.nextlink": "https://selectapi.datascope.refinitiv.com/RestApi/v1/Search/InstrumentSearch?$skiptoken='MTA'"

}



I have attempted to filter by source, but I am still unable to find the corresponding exchange code.

Best Answer

Answers

  • Hi @enakach,

    This DSS article on ISIN to RIC conversion describes the process in quite detail. Does it solve your issue?

  • Thank you for your answer; it was helpful.

    I have used the extract with notes endpoint: https://selectapi.datascope.refinitiv.com/RestApi/v1/Extractions/ExtractWithNotes as suggested in the article to retrieve the RIC codes. However, I am encountering issues with the responses. Out of 1143 instruments, only 81 returned rics codes successfully. For the majority, I received the following response:

    example of isins I was looking for:

    ISIN: "GB00BNNGP551", exchange code: LSE

    {
    "ExtractionRequest": {
    "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.TermsAndConditionsExtractionRequest",
    "ContentFieldNames": [
    "RIC", "ISIN", "Currency Code", "Exchange Code", "Exchange Code List"
    ],
    "IdentifierList": {
    "@odata.type": "#DataScope.Select.Api.Extractions.ExtractionRequests.InstrumentIdentifierList",
    "InstrumentIdentifiers": [
    { "Identifier": "GB00BNNGP551", "IdentifierType": "Isin", "Source": "LSE" },

    ],
    "ValidationOptions": {
    "AllowHistoricalInstruments": true,
    "AllowInactiveInstruments": true,
    "AllowOpenAccessInstruments": false
    },
    "UseUserPreferencesForValidationOptions": false
    }
    }
    }

    and this is the reponse I am getting (similar response for all 1062 instruments)

    {

    "@odata.context": "https://selectapi.datascope.refinitiv.com/RestApi/v1/$metadata#DataScope.Select.Api.Extractions.ExtractionRequests.ExtractionResult",

    "Contents": [{

    "IdentifierType": "Isin",
    "Identifier": "GB00BNNGP551",
    "Error": "Not found"

    }],

    "Notes": ["All identifiers were invalid. No extraction performed."]

    }