evidence

Score a composition (the standalone sighted judge)

Queue the server-side judge: it samples eval beats, renders them, and grades editorial/spatial/brand/caption (0–10 + weighted composite + worst-first critique). Your REGISTERED CRITICS run too (register_critic) — rules + rubric verdicts ride the result as clientScores, exactly like the Director's gates evaluate them (evaluator-webhook critics run in the Director lane only). Returns a jobId — wait_job(kind='verify') for the result, which ALSO carries a checkpointId: the verdicts mint a durable kind:'score' Checkpoint (the same evidence noun the Director's gates produce). Stateless — nothing to open, warm or close; the compose_verify meter fires on the job's success terminal.

post/v1/projects/{id}/score-composition

Request

  • Base URL: https://api.cueframe.ai
  • URL: https://api.cueframe.ai/v1/projects/{id}/score-composition
  • Auth: one of:
    • HTTP bearer
    • OAuth 2 (authorization code, authorization URL https://api.cueframe.ai/api/auth/mcp/authorize, token URL https://api.cueframe.ai/api/auth/mcp/token, scopes: projects:write)
    • API key in header PAYMENT-SIGNATURE

Path parameters

idstring required

Request body

compositionunknown
compositionIdstring

Judge a SPECIFIC persisted composition of this project (create_render parity). Absent ⇒ the active one. A stale/foreign id is a 404 — never a silent fall-through.

session_idstring

Compose-session id: judge that session's SCRATCH composition (what the session has been editing) instead of the active row. Ignored when composition is passed.

editorialIntentstring
brandContextstring

Example request

{
  "editorialIntent": "punchy, founder-led"
}

Response

Score job queued.

jobIdstring required

Poll GET /v1/jobs/{jobId} / wait_job until terminal.

jobKeystring required

Deterministic identity of the work (content hash of every input the result depends on). Re-enqueueing the same key returns the same job while it runs; a failed key revives as a fresh attempt.

kindstring required

Job family, e.g. verify | preview | brand_kit_extract.

status'running' | 'succeeded' | 'cancelled' required

running on a fresh/deduped enqueue; succeeded when an identical request already completed. Cancelled is part of the shared status vocabulary; identical cancelled work revives to running.

Changes

No recorded changes to this operation across all 1 revision of this API.