10
$\begingroup$

What is best API to lookup ISINs by number or name?

In other words, ideally I would like to have an rest-api like this:

http://api.isinlookup.org/filter={"isin":"US38259P5089"} ->
[
  {
    "isin": "US38259P5089"
    "name": "Google Inc.",
    "type": "Equity"
  }
]

http://api.isinlookup.org/filter={"name":"Google"} ->
[
  {
    "isin": "US38259P5089"
    "name": "Google Inc.",
    "type": "Equity"
  },
  ...
]
$\endgroup$

2 Answers 2

12
$\begingroup$

Try OpenFIGI (formerly the Bloomberg Global Identifier - BBGID)

$\endgroup$
2
  • $\begingroup$ How can we get ISIN in the response of FIGI?? $\endgroup$
    – Vee
    Mar 22, 2018 at 14:01
  • $\begingroup$ @Vee you can't. Maybe you can pay them to include it $\endgroup$ Mar 23, 2018 at 11:13
2
$\begingroup$

Coming rather late to this party and because I've been researching the same (or at least similar) question, I'd like to share my solutions:

First provider

I've signed up (for free) at lemon.markets to request an API key. Following their documentation you can use the REST API to e.g. query for a certain ISIN with the latest quotes, e.g.

https://data.lemon.markets/v1/quotes/latest?isin=LU0629459743

which results in

{
    "status": "ok",
    "time": "2022-12-17T20:33:45.654+00:00",
    "results": [
        {
            "isin": "LU0629459743",
            "b_v": 190,
            "a_v": 190,
            "b": 108.62,
            "a": 108.78,
            "t": "2022-12-16T20:59:55.000+00:00",
            "mic": "XMUN"
        }
    ],
    "previous": null,
    "next": null,
    "total": 1,
    "page": 1,
    "pages": 1
}

Alternatively, you can also query historical data for certain dates (and times), e.g.:

https://data.lemon.markets/v1/quotes?isin=LU0629459743&from=2022-01-03T00:00:00.000%2B0000&limit=1

{
    "status": "ok",
    "time": "2022-12-17T20:34:59.288+00:00",
    "results": [
        {
            "isin": "LU0629459743",
            "b_v": 80,
            "a_v": 80,
            "b": 134.72,
            "a": 135.44,
            "t": "2022-01-03T07:43:37.000+00:00",
            "mic": "XMUN"
        }
    ],
    "previous": null,
    "next": "https://data.lemon.markets/v1/quotes?isin=lu0629459743&from=2022-01-03T00%3A00%3A00.000%2B0000&limit=1&page=2",
    "total": 22003,
    "page": 1,
    "pages": 22003
}

Note (1): You need to request an API key and send it with the request, so just clicking on the links above without that information won't work

Note (2): You won't get any data for days that aren't business days for the stock exchange, so make sure to take that into account

Second provider

A second provider is leeway.tech - you also have to sign up for a free API key and then use this query to find out your Symbol and Exchange

https://api.leeway.tech/api/v1/public/general/isin/LU0629459743?apitoken=token-goes-here

[
  {
    "Code": "UC44",
    "Exchange": "LSE",
    "Name": "UBS MSCI World Socially Responsible UCITS USD A-dis",
    "Type": "ETF",
    "ISIN": "LU0629459743",
    "previousClose": 9449,
    "previousCloseDate": "2022-12-16",
    "countryName": "UK",
    "currencyCode": "GBX"
  },
 ...
 {
    "Code": "WSRUSA",
    "Exchange": "SW",
    "Name": "UBS MSCI World Socially Responsible UCITS USD A-dis",
    "Type": "ETF",
    "ISIN": "LU0629459743",
    "previousClose": 107.6,
    "previousCloseDate": "2022-12-16",
    "countryName": "Switzerland",
    "currencyCode": "CHF"
  }
]

Then choose your Symbol from the response (here it is Code) and the Exchange and query for historical quotes:

https://api.leeway.tech/api/v1/public/historicalquotes/WSRUSA.SW?apitoken=token-goes-here&from=2022-01-03&to=2022-01-03

[
  {
    "date": "2022-01-03",
    "open": 135.48,
    "high": 135.98,
    "low": 134.78,
    "close": 135.2,
    "adjusted_close": 133.5272,
    "volume": 127570
  }
]
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.