GLEIF LEI Records API
Operations on Legal Entity Identifier records
Operations 7
1 of 7 operations are conformant: apis.io called them with no credentials and the responses matched this contract. Checked 2026-11-12. how this works · status file
Operations on Legal Entity Identifier records
1 of 7 operations are conformant: apis.io called them with no credentials and the responses matched this contract. Checked 2026-11-12. how this works · status file
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/gleif:gleif-lei-records-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: GLEIF LEI LEI Records API
description: The GLEIF LEI API provides programmatic access to the Global Legal Entity Identifier (LEI) System's full data pool. It enables searches by entity name, LEI code, BIC code, ISIN code, and corporate relationship structures. The API is free, open, and requires no authentication or API key. It is built on the GLEIF Golden Copy dataset which is updated three times daily.
version: 1.0.0
contact:
name: GLEIF
url: https://www.gleif.org
license:
name: Creative Commons Zero (CC0)
url: https://creativecommons.org/publicdomain/zero/1.0/
servers:
- url: https://api.gleif.org/api/v1
description: GLEIF Production API
tags:
- name: LEI Records
description: Operations on Legal Entity Identifier records
paths:
/lei-records:
get:
summary: List or search LEI records
description: Returns a paginated list of LEI records. Supports full-text search, field-specific filters, and fuzzy matching. The Golden Copy dataset is updated three times daily.
operationId: listLeiRecords
tags:
- LEI Records
parameters:
- name: page[number]
in: query
description: Page number for pagination (1-indexed)
schema:
type: integer
default: 1
minimum: 1
- name: page[size]
in: query
description: Number of results per page
schema:
type: integer
default: 10
minimum: 1
maximum: 200
- name: filter[fulltext]
in: query
description: Full-text search across all fields
schema:
type: string
- name: filter[entity.legalName]
in: query
description: Filter by legal name of the entity
schema:
type: string
- name: filter[entity.status]
in: query
description: Filter by entity status
schema:
type: string
enum:
- ACTIVE
- INACTIVE
- ANNULLED
- DUPLICATE
- LAPSED
- MERGED
- RETIRED
- DISSOLVED
- BRANCH
- FUND
- SUBFUND
- SOLE_PROPRIETOR
- name: filter[registration.status]
in: query
description: Filter by LEI registration status
schema:
type: string
enum:
- ISSUED
- LAPSED
- MERGED
- RETIRED
- DUPLICATE
- ANNULLED
- CANCELLED
- TRANSFERRED
- PENDING_TRANSFER
- PENDING_ARCHIVAL
- name: filter[entity.jurisdiction]
in: query
description: Filter by jurisdiction (ISO 3166-1 alpha-2 or ISO 3166-2 region code)
schema:
type: string
- name: filter[entity.legalForm.id]
in: query
description: Filter by legal form ELF code
schema:
type: string
- name: filter[registration.managingLou]
in: query
description: Filter by managing LEI Issuer (LOU) LEI code
schema:
type: string
- name: sort
in: query
description: Field to sort by (prefix with - for descending order)
schema:
type: string
responses:
'200':
description: Successful response with paginated LEI records
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/LeiRecordListResponse'
'400':
description: Bad request - invalid filter or parameter
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lei-records/{lei}:
get:
summary: Get a single LEI record
description: Returns a single LEI record by its 20-character LEI code.
operationId: getLeiRecord
tags:
- LEI Records
parameters:
- name: lei
in: path
required: true
description: The 20-character Legal Entity Identifier code
schema:
type: string
pattern: ^[A-Z0-9]{18}[0-9]{2}$
example: 636700STJZG4U8W2I596
responses:
'200':
description: Successful response with a single LEI record
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/LeiRecordSingleResponse'
'404':
description: LEI record not found
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lei-records/{lei}/direct-children:
get:
summary: Get direct children of a legal entity
description: Returns LEI records of entities that are directly owned/controlled by the specified entity.
operationId: getLeiRecordDirectChildren
tags:
- LEI Records
parameters:
- name: lei
in: path
required: true
description: The 20-character Legal Entity Identifier code
schema:
type: string
pattern: ^[A-Z0-9]{18}[0-9]{2}$
- name: page[number]
in: query
schema:
type: integer
default: 1
- name: page[size]
in: query
schema:
type: integer
default: 10
maximum: 200
responses:
'200':
description: Paginated list of child LEI records
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/LeiRecordListResponse'
'404':
description: LEI record not found
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lei-records/{lei}/ultimate-children:
get:
summary: Get ultimate children of a legal entity
description: Returns all ultimate children (full subsidiary tree) of the specified entity.
operationId: getLeiRecordUltimateChildren
tags:
- LEI Records
parameters:
- name: lei
in: path
required: true
description: The 20-character Legal Entity Identifier code
schema:
type: string
pattern: ^[A-Z0-9]{18}[0-9]{2}$
- name: page[number]
in: query
schema:
type: integer
default: 1
- name: page[size]
in: query
schema:
type: integer
default: 10
maximum: 200
responses:
'200':
description: Paginated list of ultimate child LEI records
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/LeiRecordListResponse'
'404':
description: LEI record not found
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lei-records/{lei}/managing-lou:
get:
summary: Get the managing LEI Issuer for a record
description: Returns the LEI Issuer (LOU) responsible for managing this LEI record.
operationId: getLeiRecordManagingLou
tags:
- LEI Records
parameters:
- name: lei
in: path
required: true
description: The 20-character Legal Entity Identifier code
schema:
type: string
pattern: ^[A-Z0-9]{18}[0-9]{2}$
responses:
'200':
description: The managing LEI Issuer record
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/LeiIssuerSingleResponse'
'404':
description: LEI record not found
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lei-records/{lei}/lei-issuer:
get:
summary: Get the LEI Issuer for a record
description: Returns the LEI Issuer (LOU) that issued this LEI record.
operationId: getLeiRecordLeiIssuer
tags:
- LEI Records
parameters:
- name: lei
in: path
required: true
description: The 20-character Legal Entity Identifier code
schema:
type: string
pattern: ^[A-Z0-9]{18}[0-9]{2}$
responses:
'200':
description: The LEI Issuer record
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/LeiIssuerSingleResponse'
'404':
description: LEI record not found
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/lei-records/{lei}/field-modifications:
get:
summary: Get field modification history for a LEI record
description: Returns the history of field-level modifications for the specified LEI record.
operationId: getLeiRecordFieldModifications
tags:
- LEI Records
parameters:
- name: lei
in: path
required: true
description: The 20-character Legal Entity Identifier code
schema:
type: string
pattern: ^[A-Z0-9]{18}[0-9]{2}$
- name: page[number]
in: query
schema:
type: integer
default: 1
- name: page[size]
in: query
schema:
type: integer
default: 10
maximum: 200
responses:
'200':
description: List of field modifications
content:
application/vnd.api+json:
schema:
type: object
properties:
meta:
$ref: '#/components/schemas/PaginationMeta'
links:
$ref: '#/components/schemas/PaginationLinks'
data:
type: array
items:
type: object
'404':
description: LEI record not found
content:
application/vnd.api+json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
LeiIssuerSingleResponse:
type: object
properties:
meta:
$ref: '#/components/schemas/GoldenCopyMeta'
data:
$ref: '#/components/schemas/LeiIssuer'
LeiRecordAttributes:
type: object
properties:
lei:
type: string
description: The 20-character LEI code
pattern: ^[A-Z0-9]{18}[0-9]{2}$
example: 636700STJZG4U8W2I596
entity:
$ref: '#/components/schemas/Entity'
registration:
$ref: '#/components/schemas/Registration'
bic:
type:
- string
- 'null'
description: Business Identifier Code (BIC/SWIFT)
mic:
type:
- string
- 'null'
description: Market Identifier Code (MIC)
ocid:
type:
- string
- 'null'
description: Open Corporates ID
qcc:
type:
- string
- 'null'
spglobal:
type:
- string
- 'null'
description: S&P Global identifier
conformityFlag:
type:
- string
- 'null'
LeiRecordListResponse:
type: object
properties:
meta:
$ref: '#/components/schemas/PaginationMeta'
links:
$ref: '#/components/schemas/PaginationLinks'
data:
type: array
items:
$ref: '#/components/schemas/LeiRecord'
Address:
type: object
properties:
language:
type: string
description: ISO 639-1 language code
example: en
addressLines:
type: array
items:
type: string
addressNumber:
type:
- string
- 'null'
addressNumberWithinBuilding:
type:
- string
- 'null'
mailRouting:
type:
- string
- 'null'
city:
type: string
region:
type:
- string
- 'null'
description: ISO 3166-2 region code
country:
type: string
description: ISO 3166-1 alpha-2 country code
postalCode:
type:
- string
- 'null'
GoldenCopyMeta:
type: object
properties:
goldenCopy:
type: object
properties:
publishDate:
type: string
format: date-time
description: Timestamp of the last Golden Copy publication
example: '2026-06-12T08:00:00Z'
PaginationLinks:
type: object
properties:
first:
type: string
format: uri
next:
type: string
format: uri
last:
type: string
format: uri
LeiRecordRelationships:
type: object
properties:
managing-lou:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: uri
lei-issuer:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: uri
field-modifications:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: uri
ErrorResponse:
type: object
properties:
errors:
type: array
items:
type: object
properties:
status:
type: string
description: HTTP status code as string
title:
type: string
description: Short error title
detail:
type: string
description: Detailed error description
LegalName:
type: object
properties:
name:
type: string
description: The legal name of the entity
example: Kommstart 174 AB (publ)
language:
type: string
description: ISO 639-1 language code
example: sv
Registration:
type: object
properties:
initialRegistrationDate:
type: string
format: date-time
lastUpdateDate:
type: string
format: date-time
status:
type: string
enum:
- ISSUED
- LAPSED
- MERGED
- RETIRED
- DUPLICATE
- ANNULLED
- CANCELLED
- TRANSFERRED
- PENDING_TRANSFER
- PENDING_ARCHIVAL
nextRenewalDate:
type: string
format: date-time
managingLou:
type: string
description: LEI of the managing LEI Issuer
example: 549300O897ZC5H7CY412
corroborationLevel:
type: string
enum:
- FULLY_CORROBORATED
- PARTIALLY_CORROBORATED
- PENDING
- ENTITY_SUPPLIED_ONLY
- null
validatedAt:
type: object
properties:
id:
type: string
other:
type:
- string
- 'null'
validatedAs:
type:
- string
- 'null'
otherValidationAuthorities:
type: array
items:
type: object
LeiRecordSingleResponse:
type: object
properties:
meta:
$ref: '#/components/schemas/GoldenCopyMeta'
data:
$ref: '#/components/schemas/LeiRecord'
Entity:
type: object
properties:
legalName:
$ref: '#/components/schemas/LegalName'
otherNames:
type: array
items:
$ref: '#/components/schemas/LegalName'
transliteratedOtherNames:
type: array
items:
$ref: '#/components/schemas/LegalName'
legalAddress:
$ref: '#/components/schemas/Address'
headquartersAddress:
$ref: '#/components/schemas/Address'
registeredAt:
type: object
properties:
id:
type: string
description: Registration authority code
example: RA000544
other:
type:
- string
- 'null'
registeredAs:
type:
- string
- 'null'
description: The identifier assigned by the registration authority
jurisdiction:
type: string
description: ISO 3166-1 alpha-2 or ISO 3166-2 code
example: SE
category:
type:
- string
- 'null'
enum:
- GENERAL
- FUND
- SUBFUND
- BRANCH
- SOLE_PROPRIETOR
- null
legalForm:
type: object
properties:
id:
type: string
description: ELF code
other:
type:
- string
- 'null'
associatedEntity:
type: object
properties:
lei:
type:
- string
- 'null'
name:
type:
- string
- 'null'
status:
type: string
enum:
- ACTIVE
- INACTIVE
- ANNULLED
- DUPLICATE
- LAPSED
- MERGED
- RETIRED
- DISSOLVED
- BRANCH
- FUND
- SUBFUND
- SOLE_PROPRIETOR
expiration:
type: object
properties:
date:
type:
- string
- 'null'
format: date-time
reason:
type:
- string
- 'null'
enum:
- DISSOLVED
- CORPORATE_ACTION
- null
successorEntity:
type: object
properties:
lei:
type:
- string
- 'null'
name:
type:
- string
- 'null'
successorEntities:
type: array
items:
type: object
creationDate:
type:
- string
- 'null'
format: date-time
subCategory:
type:
- string
- 'null'
otherAddresses:
type: array
items:
type: object
eventGroups:
type: array
items:
type: object
PaginationInfo:
type: object
properties:
currentPage:
type: integer
example: 1
perPage:
type: integer
example: 10
from:
type: integer
example: 1
to:
type: integer
example: 10
total:
type: integer
example: 3338758
lastPage:
type: integer
example: 333876
LeiRecord:
type: object
properties:
type:
type: string
example: lei-records
id:
type: string
description: The 20-character LEI code
example: 636700STJZG4U8W2I596
attributes:
$ref: '#/components/schemas/LeiRecordAttributes'
relationships:
$ref: '#/components/schemas/LeiRecordRelationships'
links:
type: object
properties:
self:
type: string
format: uri
LeiIssuer:
type: object
properties:
type:
type: string
example: lei-issuers
id:
type: string
description: LEI code of the issuer
example: 029200067A7K6CH0H586
attributes:
type: object
properties:
lei:
type: string
example: 029200067A7K6CH0H586
name:
type: string
example: Central Securities Clearing System PLC
marketingName:
type:
- string
- 'null'
website:
type:
- string
- 'null'
format: uri
accreditationDate:
type: string
format: date-time
relationships:
type: object
properties:
jurisdictions:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: uri
fundJurisdictions:
type: object
properties:
links:
type: object
properties:
related:
type: string
format: uri
links:
type: object
properties:
self:
type: string
format: uri
PaginationMeta:
type: object
properties:
goldenCopy:
type: object
properties:
publishDate:
type: string
format: date-time
pagination:
$ref: '#/components/schemas/PaginationInfo'