> For the complete documentation index, see [llms.txt](https://docs.solanavibestation.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.solanavibestation.com/api-reference/rewind/methods/gethistoricalfeatureset.md).

# getHistoricalFeatureSet

## getHistoricalFeatureSet — Runtime feature gates active at a slot

> Returns the set of runtime feature gates active at the given slot, sorted by id.\
> \
> \*\*Parameters\*\* — \`\[config]\`:\
> \
> \- \`slot\` (required, u64) — must lie inside the covered window.\
> \- \`includeInactive\` (optional, default \`false\`) — also list gates that were inactive, with why.<br>

```json
{"openapi":"3.0.3","info":{"title":"Rewind RPC: getHistoricalFeatureSet","version":"1.0.0"},"tags":[{"name":"Rewind","description":"Historical account state, per-write change history, and historical simulation."}],"servers":[{"url":"https://rewind.solanavibestation.com","description":"Rewind service (all tiers routed by API key)"}],"security":[{},{"AuthHeader":[]},{"URLParameter":[]}],"components":{"securitySchemes":{"AuthHeader":{"type":"apiKey","in":"header","name":"Authorization","description":"Pass `Authorization: <api-key>` on each request."},"URLParameter":{"type":"apiKey","in":"query","name":"api_key","description":"Pass `?api_key=<api-key>` on the URL."}},"schemas":{"JsonRpcEnvelope":{"type":"object","required":["jsonrpc","id"],"properties":{"jsonrpc":{"type":"string","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"integer"}]}}},"FeatureSetResult":{"type":"object","required":["context","value"],"properties":{"context":{"type":"object","required":["slot","apiVersion"],"properties":{"slot":{"type":"integer","format":"int64"},"apiVersion":{"type":"string"}}},"value":{"type":"object","required":["slot","activeCount","active","observedThrough"],"properties":{"slot":{"type":"integer","format":"int64","description":"Echoes the queried slot."},"activeCount":{"type":"integer","format":"int32","description":"Length of `active`."},"active":{"type":"array","description":"Gates active at `slot`, sorted by id.","items":{"$ref":"#/components/schemas/Gate"}},"inactive":{"type":"array","description":"Present only when `includeInactive: true`.","items":{"$ref":"#/components/schemas/InactiveGate"}},"observedThrough":{"type":"integer","format":"int64","description":"Newest slot at which any gate's state was observed. Compare with the queried slot when precision matters — a gate whose activation happened inside an unrepaired archive gap can be missing from `active`."}}}}},"Gate":{"type":"object","required":["id","activatedAt","name"],"properties":{"id":{"type":"string","description":"Base58 pubkey of the feature account."},"activatedAt":{"type":"integer","format":"int64","nullable":true,"description":"First slot of the epoch the feature took effect in. `null` for pending / closed gates in the `inactive` list; for `activatedLater` this is the slot the gate ended up activating at (after the queried one)."},"name":{"type":"string","nullable":true,"description":"Description from Agave's feature list. Gates newer than the pinned runtime carry the suffix `(agave newer than pin)`; a gate newer than any list the service knows has `null`."}}},"InactiveGate":{"allOf":[{"$ref":"#/components/schemas/Gate"},{"type":"object","required":["status"],"properties":{"status":{"type":"string","enum":["pending","closed","activatedLater"],"description":"`pending` — accepted but not yet active. `closed` — pending activation was revoked. `activatedLater` — activated at a slot after the queried one (`activatedAt` says when)."}}}]},"JsonRpcErrorResponse":{"type":"object","required":["jsonrpc","id","error"],"properties":{"jsonrpc":{"type":"string","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"integer"}]},"error":{"$ref":"#/components/schemas/JsonRpcError"}}},"JsonRpcError":{"type":"object","required":["code","message"],"description":"`-32602`, `-32014` (slot above `latestSlot`), `-32015` (slot below `earliestSlot`), `-32603`.","properties":{"code":{"type":"integer"},"message":{"type":"string"},"data":{"type":"object","additionalProperties":true}}}},"responses":{"UnauthorizedError":{"description":"Authentication required or invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcErrorResponse"}}}},"ForbiddenError":{"description":"Insufficient permissions for the request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcErrorResponse"}}}},"TooManyRequestsError":{"description":"Rate limit exceeded for this tier.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcErrorResponse"}}}},"InternalServerError":{"description":"Unexpected server error.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/JsonRpcErrorResponse"}}}}}},"paths":{"/":{"post":{"operationId":"getHistoricalFeatureSet","summary":"getHistoricalFeatureSet — Runtime feature gates active at a slot","tags":["Rewind"],"description":"Returns the set of runtime feature gates active at the given slot, sorted by id.\n\n**Parameters** — `[config]`:\n\n- `slot` (required, u64) — must lie inside the covered window.\n- `includeInactive` (optional, default `false`) — also list gates that were inactive, with why.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["jsonrpc","id","method","params"],"properties":{"jsonrpc":{"type":"string","enum":["2.0"]},"id":{"oneOf":[{"type":"string"},{"type":"integer"}]},"method":{"type":"string","enum":["getHistoricalFeatureSet"]},"params":{"type":"array","minItems":1,"maxItems":1,"items":{"type":"object","required":["slot"],"properties":{"slot":{"type":"integer","format":"int64","description":"The slot to evaluate feature activations at. Must be inside the covered window."},"includeInactive":{"type":"boolean","default":false,"description":"When true, also list inactive gates with a `status` reason."}}}}}}}}},"responses":{"200":{"description":"Successful response.","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/JsonRpcEnvelope"},{"type":"object","required":["result"],"properties":{"result":{"$ref":"#/components/schemas/FeatureSetResult"}}}]}}}},"400":{"description":"Malformed JSON."},"401":{"$ref":"#/components/responses/UnauthorizedError"},"403":{"$ref":"#/components/responses/ForbiddenError"},"429":{"$ref":"#/components/responses/TooManyRequestsError"},"500":{"$ref":"#/components/responses/InternalServerError"}}}}}}
```
