---
title: "Inspect SSR ISR cache row state"
method: GET
path: "/cache/v1/inspect"
tags: ["SSR Cache"]
---

# Inspect SSR ISR cache row state

`GET /cache/v1/inspect`

## Request

- Base URL: `https://api.run402.com`
- URL: `https://api.run402.com/cache/v1/inspect`
- Auth: HTTP bearer

Read the current cache row for a canonical `{host, release_id, locale, method=GET, path}` key without issuing a request. Returns `{ status: "HIT" }` with metadata if a fresh row exists, `{ status: "MISS" }` otherwise. NEVER returns `BYPASS` — inspect doesn't render. Host MUST be owned by the caller's project; cross-project returns 403 `R402_CACHE_INVALIDATION_HOST_FORBIDDEN`. Defaults: `release_id` → project's active release; `locale` → null (the wire convention for `i18n`-less releases). Capability `ssr-isr-cache` (v1.52).

## Query parameters

- `host` string, required
- `path` string, required
- `locale` string
- `release_id` string

## Response `200`

Cache state for the canonical key.

- union
  - object
    - `status` 'MISS', required
    - `host` string, required
    - `path` string, required
  - object
    - `status` 'HIT', required
    - `host` string, required
    - `path` string, required
    - `locale` string, nullable: Locale embedded in the stored canonical key (or echoed query override). `null` when the release has no i18n slice.
    - `release_id` string, required: Release this row was written under. Diverges from `project.live_release_id` for stale-release rows still inside the 24h grace window.
    - `cached_at` string, date-time, required
    - `expires_at` string, date-time, nullable
    - `written_under_generation` string, required: Per-(project, host) generation at write time. Stale-generation rows are ignored by serve and reaped by cleanup.
    - `content_sha256` string, required: Hex-encoded SHA-256 of the cached body in CAS.
    - `headers` object, required: Response headers stored alongside the cached body.

## Other responses

- `400`: VALIDATION_FAILED — missing `host` or `path` query parameter.
- `403`: R402_CACHE_INVALIDATION_HOST_FORBIDDEN — host not owned by caller's project.

---

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