---
title: "What are unique and non-unique identifiers?"
slug: "what-are-unique-and-non-unique-identifiers"
updated: 2024-08-20T07:35:51Z
published: 2024-08-20T07:35:51Z
canonical: "support.lusid.com/what-are-unique-and-non-unique-identifiers"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.lusid.com/llms.txt
> Use this file to discover all available pages before exploring further.

# What are unique and non-unique identifiers?

When you [create an instrument](/v1/docs/how-do-i-master-an-instrument) in LUSID, you must specify at least one [identifier](/v1/docs/understanding-instrument-identifiers).

> **Note**: If an identifer you use or need is not in our list, [contact us](https://www.finbourne.com/contact/) to add it to your LUSID domain.

An identifier is classed as either unique or non-unique:

- You *must* specify at least one unique (market) identifier for an instrument. You can specify more than one.
- You *can* specify multiple non-unique identifiers for an instrument. It may have none.

Note that if you have chosen to partition your LUSID instrument master into [scopes](/v1/docs/understanding-instrument-scopes), a unique market identifier is only unique within a scope.

> **Note:** LUSID automatically generates a [LUSID Instrument ID](/v1/docs/what-is-a-lusid-instrument-id-or-luid) (or LUID) for every instrument, an internal identifier that is guaranteed to be globally unique (across scopes) and never change. The unique (market) identifier you specify is in addition to this LUID.

When you book a transaction (and certain other types of data) into LUSID, you must specify at least one instrument identifier in your API upsert request. A set of rules governs how LUSID uses unique and non-unique identifiers to [automatically resolve](/v1/docs/how-does-lusid-resolve-data-to-instruments) ingested data items to instruments.

## Unique identifiers

A unique identifier can only be assigned to one instrument in a scope at a time.

For example, if you assign the FIGI unique identifier `BBG000C05BD1` to an instrument representing [BP PLC $0.25 shares traded in London](https://www.openfigi.com/id/view/BBG000C05BD1), LUSID raises an error if you try to assign FIGI `BBG000C05BD1` to another instrument in the same scope. You *can* assign FIGI `BBG000C05BD1` to an instrument representing the same financial asset in a different scope.

The following identifier types are unique within a scope (note type names are case sensitive):

| **LUSID identifier type (case-sensitive)** | **Example value** | **Use this identifier to map to...** |
| --- | --- | --- |
| `Figi` | `BBG000C05BD1` | [OpenFigi](https://www.openfigi.com/) |
| `ClientInternal` | `&lt;any string&gt;` | Your internal security database |
| `EdiKey` |  | [EDI](https://www.exchange-data.com/) |
| `QuotePermID` |  | [OpenPermID](https://permid.org/) |
| `Currency` | `USD` | An ISO 4217 [currency](/v1/docs/how-do-i-create-a-currency) |

## Non-unique identifiers

A non-unique identifier can be assigned to more than one instrument in any scope at a time.

For example, you could assign the ISIN non-unique identifier `GB0007980591` to two instruments in the same scope, one representing BP PLC $0.25 shares traded in London (with the FIGI unique identifier `BBG000C05BD1`) and one representing [BP PLC $0.25 shares traded in Berlin](https://www.openfigi.com/id/BBG000K1QR97) (with the FIGI unique identifier `BBG000K1QR97`). This makes sense because ISIN `GB0007980591` represents the BP share class.

The following identifier types are non-unique within a scope (note type names are case sensitive):

| **LUSID identifier type (case-sensitive)** | **Example value** |
| --- | --- |
| `Isin` | `GB0007980591` |
| `Sedol` | `0798059` |
| `Cusip` | `055622104` |
| `CompositeFigi` | `BBG000C059M6` |
| `RIC` |  |
| `ShareClassFigi` | `BBG001S61CN0` |
| `Ticker` | `BP/` |
| `Wertpapier` |  |

## Listing all the available identifiers

You can see the canonical list of all the built-in identifiers (unique and non-unique) available to assign to instruments by calling the [GetInstrumentIdentifierTypes](https://www.lusid.com/docs/api#operation/GetInstrumentIdentifierTypes) API, for example:

```json
curl -X GET "https://<your-domain>.lusid.com/api/api/instruments/identifierTypes"
  -H "Authorization: Bearer <your-API-access-token>"
```
