Skip to content
/api/v1/cusip/ticker/{ticker}?chain=true

Resolve Ticker to CUSIP with full successor chain.

Resolve Ticker to CUSIP with full successor chain.

1 tokensSince v1.0.0

Why use this

Ticker-keyed variant of [GET /api/v1/cusip/chain/{cusip}](/docs/reference-data/cusip-api/get-cusip-chain) — when you have the current ticker (`RKLB`) and need every CUSIP that has ever represented it (pre-SPAC + post-SPAC + post-redomicile). Without `chain=true` (default false), the endpoint behaves identically to the no-chain variant and returns the CURRENT CUSIP only. With `chain=true`, the response includes a `chain[]` array of all historical CUSIPs with `from_chain` flags. The most-natural entrypoint for ticker-shaped UI inputs that need chain-aware downstream queries.

Common use case

Building comprehensive holdings queries that span CUSIP transitions — e.g. 'show me Berkshire's RKLB position from inception to today' requires querying 13F holdings across all 3 RKLB CUSIPs. Without the chain, the position appears to drop to 0 at each merger date and re-emerge under a new CUSIP. With the chain, the position-history chart is continuous. Also useful in 'reconcile a customer's ticker watchlist with their 13F-based position blotter' workflows that need historical-CUSIP coverage.

Ticker-keyed entrypoint into the CUSIP successor chain — the natural variant when your downstream system speaks tickers but needs CUSIP-shaped historical coverage. With ?chain=true, returns all historical CUSIPs in chronological order with from_chain: true on predecessors and from_chain: false on the current/seed CUSIP. Without the flag, response is byte-identical to GET /api/v1/cusip/ticker/{ticker} for backwards compatibility — the chain expansion is strictly opt-in. Phase 11/47 work product. The CUSIP-keyed equivalent is GET /api/v1/cusip/chain/{cusip} — both endpoints walk the same underlying chain table. The historical-issuer-names in chain[].issuer_name reflect the issuer AT THE TIME each CUSIP was active (e.g. VECTOR ACQUISITION CORP is preserved on the pre-SPAC entry).

Parameters

NameInRequiredDefaultAllowedDescriptionExample
tickerpathrequiredCanonical hyphen-form ticker. v3.14.2 ticker-normalization shim applies (`BRK.A`/`BRK/A`/`BRKA` all coerce to `BRK-A`). The CURRENT ticker is required — historical-only tickers like `VACQ` (pre-SPAC RKLB) are not supported as input; use the CUSIP variant if you need to seed the chain walk from a historical entity.RKLB
chainqueryoptionalfalseWhen `true`, response includes a `chain[]` array of all historical CUSIPs sharing this security's lineage. When `false` (default) or omitted, response is byte-identical to [GET /api/v1/cusip/ticker/{ticker}](/docs/reference-data/cusip-api/get-cusip-ticker) and returns CURRENT CUSIP only — backwards-compatible with pre-Phase-11 callers.

Response schema

FieldTypeNullableDescription
tickerstringnoEchoed canonical ticker (post-normalization to hyphen form).
cusipstringno9-character CUSIP for the CURRENT primary security mapped to this ticker. Same field as the no-chain variant; present even when `chain=true`.
issuer_namestringnoIssuer name of the CURRENT security (all-caps EDGAR convention).
cikstringyes10-character zero-padded SEC CIK of the CURRENT issuer.
cusip6stringno6-character CUSIP issuer prefix of the CURRENT CUSIP. NOTE: CUSIP6 changes across reorgs — do NOT use as a stable issuer identifier.
chainarrayyesArray of historical CUSIPs sharing this security's lineage, in CHRONOLOGICAL order (oldest first, current last). Only present when `?chain=true`. Each entry: `{ cusip: string, issuer_name: string, effective_date: string|null, reason: string|null, from_chain: boolean }`. The `from_chain: true` flag distinguishes chain predecessors from the seed CUSIP itself.

Sample response

·
  • "ticker": "RKLB"
  • "cusip": "773121108"
  • "issuer_name": "ROCKET LAB CORPORATION"
  • "cik": "0001819810"
  • "cusip6": "773121"
  • "chain":
    ]
}

Errors

StatusLabelDescription
200OKRequest succeeded.
400Bad RequestInvalid query, body, or path parameter.
401UnauthorizedMissing or invalid Authorization header / api_Token.
402Payment RequiredInsufficient token balance for this call. Top up
429Too Many RequestsRate limit exceeded for your tier (see /pricing for tier limits). Tier limits
500Server ErrorUnexpected server-side failure. Retry with backoff; report if persistent.

Code samples

curl "https://api.finradar.ai/api/v1/cusip/ticker/{ticker}?chain=true?api_Token=YOUR_API_KEY" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Generate an API key in /account/credentials to run live queries (literal YOUR_API_KEY placeholder shown until then).