---
title: "Re-read a cached result for free"
method: GET
path: "/v1/results/{id}"
---

# Re-read a cached result for free

`GET /v1/results/{id}`

Re-read the full unshaped result of a prior run from its short-lived cache and re-shape it with the same `fields`, `max_items`, `summary`, and `jq` query params as /v1/run, all for FREE (no re-billing). Results are scoped to the customer that paid for them and cached for about 15 minutes. Use this to read the rest of, or reshape, a paid result instead of re-running and paying again.

## Path parameters

- `id` string, required

## Query parameters

- `fields` string
- `max_items` integer
- `summary` boolean
- `jq` string

## Response `200`

The re-shaped result envelope (same shape as a run response).

- object
  - `costUsd` number, required — USD charged on the ORIGINAL run, echoed for envelope parity; this re-read is free.
  - `items` integer — Number of result rows returned by the original run.
  - `jqError` string — Present only when a `jq` expression failed; `output` then carries the full unshaped result and this explains why the reshape did not apply.
  - `output` unknown, required
  - `provider` string, required — Always "AnyAPI".
  - `replayed` boolean, required — False on this cached-result endpoint; true is reserved for durable idempotency replays from POST /v1/run/{sku}.
  - `resultId` string — The id you requested, echoed so you can keep re-reading the same cached result.

## Other responses

- `401` — Missing or invalid API key.
- `404` — Unknown or expired result id (results are cached about 15 minutes); re-run the API for fresh data.

---

[API](https://skmtc.net/getanyapi-com/apis/anyapi.md) · [All operations](https://skmtc.net/getanyapi-com/apis/anyapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getanyapi-com/anyapi/versions/f7ea58230898/schema)
