Readiness & completeness/compliance score (wizard steps 5-6)
GET/api/v1/products/:id/readiness
Required scope: dpp:gate:read. Returns the SAME numbers the wizard
shows — completenessScore (% of required fields filled), the persisted
complianceScore / complianceStatus, the per-section breakdown,
missingFieldEntries[] ({fieldId,label,kind} — which fields are still
missing), the full partner-stable gaps[] (each with a resolver), and
ok (ready-to-submit). The richer sibling of GET /gate (which stays as a
back-compat alias). Rate-limited per key (fail-closed).
Request
Responses
- 200
- 403
- 404
- 429
- 503
Readiness report
403 — missing scope (FORBIDDEN_SCOPE) or module (FORBIDDEN_MODULE).
404 — not found OR owned by another tenant (NOT_FOUND; IDOR-safe).
429 — RATE_LIMITED (per-key limit, reads and writes alike; fails closed,
so a limiter outage also returns 429). A limiter-down 429 is deliberately
indistinguishable from a quota 429. Carries Retry-After (seconds).
Response Headers
Seconds to wait before retrying (429 only).
Per-minute request ceiling for this key's tier.
Requests left in the current window (floored at 0).
Seconds until the window resets.
503 — the API is not enabled on this environment (FEATURE_DISABLED).