CIK · CUSIP · FIGI mappings ref.identifiers
Point-in-time ticker resolution: the security a symbol named on a date, with the identifiers it carried then.
PIT · Core tier · 1996-01 → today · 98k rows
Countries: US
Available now.
Methodology
A query names a ticker and an as_of date and gets back the security, or securities, that ticker named on that date: a public_id that is never reassigned and is safe to store as a join key, the name in force when one is recorded, and a map of the identifier kinds the source holds for it with validity covering as_of — CIK, CUSIP or FIGI when held, and only the kinds present. When a symbol has been reused, the SEC's recorded ticker tenures decide which holder is served first, so META in early 2022 is the Roundhill fund and from 2022-06-09 on it is Meta Platforms. Coverage is US entities only; a ticker that named nothing in scope on that date is a 404. Resolution uses the reference data as currently known; it is not a replay of what was knowable on as_of. GET and HEAD return a strong ETag header over the exact JSON response. It covers metadata and cursors, not a global dataset generation or a historical replay token. Identical bytes keep the tag. Changed bytes change it. A matching If-None-Match returns bodyless 304, after normal authentication, quota, validation and service work. Both 200 and 304 carry Cache-Control: private, no-cache, no-transform. Pin as_of for date-bound comparisons because its default moves with the UTC date.
Schema
| Column | Type | Role |
|---|---|---|
as_of | date | PIT key · resolution date |
ticker | string | queried symbol · upper-normalized |
public_id | string | stable security id · never reassigned |
entity_type | string | kind of entity |
name | string | name in force on as_of · omitted when absent |
equity_holding | string | holding status on as_of · omitted when absent |
country | string | country of the entity · omitted when absent |
identifiers | map | kinds held, valid on as_of · CIK, CUSIP, FIGI when held |
listing.value | string | symbol listing that matched |
listing.range_start | date | listing start |
listing.range_end | date | listing end · absent while open |
Use cases
- Turn a ticker in an old research note into the security it meant on that date.
- Store public_id instead of the ticker so a rename or a reused symbol cannot join onto the wrong company.
- Look up the CIK, CUSIP or FIGI in force on a date, where held, to join a vendor file keyed on one of them.
Background
Related packages
- ref.corp.actions.splits — Share splits
- ref.corp.actions.dividends — Cash dividends
- ref.corp.actions.ma — Mergers & acquisitions
- ref.listings — Listings · delistings · halts