---
id: w2/m7/t001
title: Capture Render's Key Value surface shapes (OpenAPI, MCP schemas, dashboard GraphQL)
worker: worker2
status: done
estimate: 30m
depends_on: []
---

## Objective

Pin down the exact shapes to mirror before writing any code: the `/v1/key-value` REST contract from Render's OpenAPI spec (all 8 endpoints, field names, enums, error shapes), the three KV tool schemas from `render-oss/render-mcp-server`, and the dashboard GraphQL nouns via Playwright against a live Render KV instance — the m8 lesson: REST comes from the spec, but GraphQL names must be observed, never guessed (postgres's first pass invented `postgres*` and was wrong; the dashboard noun was `database*`).

## Context

- Ledger row (docs/ADR018-render-parity.md § Key Value) already records the headline: 8 endpoints (CRUD + `connection-info` + `suspend`/`resume`), connection-info 3 keys (`internalConnectionString` `redis://`, `externalConnectionString` `rediss://` TLS, `cliCommand`), plans `free`/`starter`/`standard`, create fields bex's CR lacks (`maxmemoryPolicy`, `persistenceMode`, `ipAllowList`).
- Render KV ids are `red-…` (legacy Redis prefix — kept after the Valkey rename).
- Playwright captures → `.playwright-mcp/` (bare filenames); notes → `docs/render-artifacts/`.

## Steps

1. Extract the `/v1/key-value` paths + schemas from Render's OpenAPI spec; note the exact response object (id/name/plan/status/maxmemoryPolicy/…) and the suspend/resume semantics.
2. Read the three tool definitions in `render-oss/render-mcp-server` (names, input schemas, output text shape).
3. Drive dashboard.render.com over a KV instance with Playwright and record the GraphQL operation/field names the dashboard actually sends (DevTools/network via MCP).
4. Write the capture note for t002–t006 to consume.

## Files

- `docs/render-artifacts/` (new capture note)

## Acceptance criteria

- [ ] All 8 REST endpoints documented with request/response fields and status codes.
- [ ] MCP tool names + schemas captured verbatim.
- [ ] Dashboard GraphQL nouns observed (not guessed), with evidence.

## Out of scope

- Any implementation.
