---
title: "Read-only storage readiness"
method: GET
path: "/api/storage/readiness"
tags: ["Diagnostics"]
---

# Read-only storage readiness

`GET /api/storage/readiness`

## Request

- Base URL: `https://courseprofiler.com`
- URL: `https://courseprofiler.com/api/storage/readiness`
- Auth: one of:
  - API key in header `X-API-Key`
  - HTTP bearer
  - none

Configuration-only by default. check_bucket=true performs HeadBucket without writes. Bucket access does not verify object reads, writes, durability or operation-specific IAM.

## Query parameters

- `check_bucket` boolean

## Response `200`

Non-secret diagnostic, including failed or unverified checks

- StorageReadiness
  - `request_id` string: Current HTTP request correlation ID, also X-Request-Id; not an idempotency key.
  - `configured` boolean, required
  - `checks` object[], required
    - `name` string, required
    - `performed` boolean, required
    - `status` 'passed' | 'failed' | 'not_verified', required
    - `code` string
  - `capabilities` object, required
  - `writes_performed` false, required
  - `code` string
  - `backend` 's3' | 'filesystem': Selected backend. Filesystem mode does not instantiate AWS clients.

---

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