---
title: "Was a stock in an index on a date"
method: GET
path: "/v1/indices/{name}/membership/{symbol}"
tags: ["indices"]
---

# Was a stock in an index on a date

`GET /v1/indices/{name}/membership/{symbol}`

## Request

- Base URL: `https://api.tapetide.com`
- URL: `https://api.tapetide.com/v1/indices/{name}/membership/{symbol}`
- Auth: HTTP bearer

Point-in-time index membership with a four-state answer, never a bare yes/no: `present` (inside an observed membership range), `uncertain` (inside an unobserved bracket around a join or exit: plausible, not proven), `absent` (observed not a member, within coverage) or `out_of_coverage` (outside the index's observed history: cannot be answered). Treat `uncertain` and `out_of_coverage` as no signal; never collapse either into `absent`. `data.matched_spell` gives the certain range and the bracket edges. `meta.coverage` states the observed window and `answerable_through`, the last date the answer can be trusted for; `meta.freshness.lag_days` says how far the projection trails the newest snapshot. Use the index `name` from `/v1/reference/indices` (one with `has_constituents: true`); an index with no membership history is a 404.

## Path parameters

- `name` string, required
- `symbol` string, required

## Query parameters

- `date` string, date

## Response `200`

OK. Costs one request unit.

- Envelope
  - `data` unknown, required
  - `meta` object, required: Paging and window information where the route pages (e.g. `window.next_cursor` on price history).
    - `as_of` string, date-time: When this response was assembled (UTC).
    - `route` string: The operationId that served it.

## Other responses

- `400`: Malformed or out-of-range parameter. Not charged.
- `401`: Missing or invalid bearer token.
- `404`: The symbol, index or document does not exist. Not charged.
- `429`: Per-minute burst cap (`rate_limited`) or plan quota (`quota_exhausted`) reached.
- `502`: A data dependency was unavailable. Not charged.
- `503`: Authentication or quota service temporarily unavailable (`service_unavailable`). Not charged; retry after `Retry-After` seconds.

---

[API](https://skmtc.dev/tapetide/apis/tapetide-api.md) · [All operations](https://skmtc.dev/tapetide/apis/tapetide-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tapetide/apis/tapetide-api/revisions/261ec086bde5?raw)
