COLDWORKS/ docs / rest-api
Reviews · Coming upPreview

REST API

The unauthenticated showcase endpoints are live — they are what /queue and /scoreboard render. Tenant queue and receipt are live behind a session or a token. A scoreboard of your clocks is still planned.

Both showcase routes ignore ?repo=. The bound is the API’s DOUG_SHOWCASE_REPO, not a query string a stranger can widen. Per-author-type rates are not published.

GET /v1/showcase/queuelive
Open PRs for the showcase repo, scored, with reasons. Unauthenticated. What /queue renders.
GET /v1/showcase/scoreboardlive
Prospective counters from the ledger: adjudicated, pending, first due, deep-read meter. miss_rate is null until the pre-registered interval fires. Label: not yet decidable — a count, not a rate.
GET /v1/prs/:number/receiptlive
The evidence trail behind a verdict. Session or a token with receipt:read. Not a public showcase route.
GET /v1/queuelive
Tenant-scoped routed queue. Session or token. The showcase route is pinned to one repo by design and is not this.
GET /v1/scoreboardplanned
Tenant-scoped clocks: your adjudicated / pending / miss_rate. The showcase route is pinned to one repo by design and is not this.
RESPONSE SHAPE — run it for the numbers
$ curl "$DOUG_API_URL/v1/showcase/scoreboard"
{
  "repo": "coldworkshq/doug",
  "adjudicated": <int>,
  "pending": <int>,
  "as_of": <iso8601>,
  "first_due": <iso8601 | null>,
  "deep_reads": <int>, "deep_read_cap": <int>,
  "miss_rate": null,
  "decidable": false,
  "label": "not yet decidable — a count, not a rate"
}

# The counters move; a number printed here would
# be stale by the time you read it, so this shows
# the shape and the route is unauthenticated.
# miss_rate does NOT move: null until the
# pre-registered interval fires.