Records the reviewer’s claims for an open item and returns the item with its prediction. No action claims; no verdict on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a reason on a non-blind item (400, param reason); on a blind item the reason may follow through POST …/reason. An item that is not open is 409, unless the request replays an Idempotency-Key.
An API key, sent as Authorization: Bearer <key>. Each operation lists the scope its key needs: decisions:evaluate (evaluate and read evaluations), decisions:feedback (your app's feedback) or decisions:develop (everything else, including owner feedback and the review queue). An operation listing no scope takes any scoped key. A key with no scope, or without the operation's, gets 403 INSUFFICIENT_SCOPE.
Makes a retry safe. For 24 hours, the same key with the same request returns the first stored result (with Idempotent-Replayed: true); the same key with a different request is a 422 IDEMPOTENCY_KEY_REUSED. Keys are scoped to the organization and environment across every operation, so use a fresh key per request. A request that failed before its result was stored runs again when retried with its key.
The environment of the key that made the call: production or test. Evaluations, feedback, reviews and suggestions are separate per environment; registered structures are shared.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Moonbounce Decisions API","colors":{"primary":"#4f46e5"},"banner":{"content":"Looking for the Clavata policy and labeling API? Those docs are at [docs.clavata.ai](https://docs.clavata.ai). You are on the docs for the Moonbounce decisions platform.","dismissible":true,"type":"info"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"moonbounce","hasAudioNarration":false,"actualSubdomain":"moonbounce","customDomains":[],"gitSource":{"type":"github","owner":"clavataai","repo":"decisions-platform","deployBranch":"main","contentDirectory":"docs/site","isPrivate":true,"mountPath":"","label":"","_id":"6ae8f7a905e268646b31d443"},"chroma":{"latestBuiltDeploymentHistoryId":"6ae8f896f8277f19c7cc79c9","collectionId":"f756780d-07b6-4802-bb88-e6a9d392f388","liveDeploymentHistoryId":"6ae8f896f8277f19c7cc79c9","schemaVersion":"v3"},"entitlements":{},"buildId":"6ae8f896f8277f19c7cc79c9","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"API reference","count":34},{"language":"default","tag":"Endpoints","count":33},{"language":"default","tag":"Guides","count":14},{"language":"default","tag":"review","count":9},{"language":"default","tag":"suggestions","count":6},{"language":"default","tag":"specs","count":5},{"language":"default","tag":"Improve a decision","count":4},{"language":"default","tag":"feedback","count":4},{"language":"default","tag":"Get started","count":3},{"language":"default","tag":"engines","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/review/submit-a-review","slug":"/api-reference/review/submit-a-review","pageMetadata":{"title":"Submit a review","description":"Records the reviewer's claims for an open item and returns the item with its prediction. No `action` claims; no `verdict` on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a `reason` on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/submit","href":"/api-reference/review/submit-a-review","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Records the reviewer’s claims for an open item and returns the item with its prediction. No \", _jsx(_components.code, {\n children: \"action\"\n }), \" claims; no \", _jsx(_components.code, {\n children: \"verdict\"\n }), \" on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a \", _jsx(_components.code, {\n children: \"reason\"\n }), \" on a non-blind item (400, param reason); on a blind item the reason may follow through POST …/reason. An item that is not open is 409, unless the request replays an Idempotency-Key.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Submit a review","description":"Records the reviewer's claims for an open item and returns the item with its prediction. No `action` claims; no `verdict` on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a `reason` on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/submit","href":"/api-reference/review/submit-a-review","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"submitReview","tags":["review"],"security":["8636c9c4-fd76-4a10-a919-5161c4ad7d3e"],"summary":"Submit a review","description":"Records the reviewer's claims for an open item and returns the item with its prediction. No `action` claims; no `verdict` on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a `reason` on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.","parameters":["7358b764-7aad-4f24-804c-7ce7ed13e5c0","05f98397-6427-4dcf-bf8a-0eca4c5018ac"],"requestBody":"0efa8179-fb22-4636-b3b1-2a0c760bcc69","responses":{"200":"47736569-dd40-493e-98c0-d021c9667428","400":"c1b1058b-11c8-4aea-aa42-1392285fb8b9","401":"de154095-7a2d-40f4-8edc-a88efb001152","403":"60b473b9-9329-412a-bf42-4ac57420c8e4","404":"0e17369c-7503-4426-98b6-6461e311d4f6","409":"fc3809b9-3bd9-4e8f-bfce-291dbadc799f","410":"140612ff-55da-4020-81c3-a6fcad7acb0a","422":"c47f6df4-c59c-4922-b616-74269b756e7a","429":"e05b6511-3010-49db-838f-332906975fe6","503":"933d3f79-b04f-4dd0-a352-20ea20487024"},"method":"post","type":"path","servers":["9e61324b-4cc4-430d-a8d9-fa0221e50db5"],"path":"/v1/review/items/{item_id}/submit","baseUrlOptions":["https://api.moonbounce.ai"],"title":"Submit a review","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"7358b764-7aad-4f24-804c-7ce7ed13e5c0":{"schema":{"type":"string","pattern":"^inb_[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$","description":"The review item’s id (inb_…), not your own item_id.","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"The review item’s id (inb_…), not your own item_id.","name":"item_id","in":"path"},"05f98397-6427-4dcf-bf8a-0eca4c5018ac":{"schema":{"type":"string","minLength":1,"maxLength":255,"pattern":"^[\\x20-\\x7e]+$","description":"Makes a retry safe. For 24 hours, the same key with the same request returns the first stored result (with Idempotent-Replayed: true); the same key with a different request is a 422 IDEMPOTENCY_KEY_REUSED. Keys are scoped to the organization and environment across every operation, so use a fresh key per request. A request that failed before its result was stored runs again when retried with its key.","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"description":"Makes a retry safe. For 24 hours, the same key with the same request returns the first stored result (with Idempotent-Replayed: true); the same key with a different request is a 422 IDEMPOTENCY_KEY_REUSED. Keys are scoped to the organization and environment across every operation, so use a fresh key per request. A request that failed before its result was stored runs again when retried with its key.","name":"idempotency-key","in":"header"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"claims":{"type":"array","items":{"oneOf":[{"type":"object","description":"Whether the target statement is true. Only for specs that declare a target.","required":["kind","value"],"properties":{"kind":{"type":"string","enum":["target"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"value":{"type":"boolean","description":"Whether the spec's target statement is true of this item.","isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.0.value","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"claims.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","description":"The outcome this item should have had. On a cut score, the lowest outcome also says the target is false and the highest says it is true; middle outcomes say nothing about the target.","required":["kind","value"],"properties":{"kind":{"type":"string","enum":["outcome"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"},"value":{"type":"string","minLength":1,"maxLength":64,"description":"The right outcome: one of this evaluation's outcomes (`below` or a cut's outcome); an `abstain` name counts only where it reuses one of them.","isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.1.value","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"claims.items.[INDEX].oneOf.1","typeLabel":"object"},{"type":"object","description":"Approve or reject the outcome that was shown. Needs `about.evaluation_id`, and an evaluation whose outcome was shown to someone: primary traffic that decided (it has a score). An evaluation that abstained has only a fallback outcome, whatever it is called.","required":["kind","value"],"properties":{"kind":{"type":"string","enum":["verdict"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.2.kind","typeLabel":"enum\u003cstring>"},"value":{"type":"string","enum":["approve","reject"],"description":"approve: the shown outcome was right. reject: it was wrong.","isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.2.value","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"claims.items.[INDEX].oneOf.2","typeLabel":"object"},{"type":"object","description":"The expected answer of one boolean feature. It is stored against that feature's prompt as it was judged, so a reworded prompt does not inherit it.","required":["kind","feature","value"],"properties":{"kind":{"type":"string","enum":["feature"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.3.kind","typeLabel":"enum\u003cstring>"},"feature":{"type":"string","minLength":1,"maxLength":64,"description":"A boolean feature of the evaluation's spec.","isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.3.feature","typeLabel":"string"},"value":{"type":"boolean","description":"What the feature's answer should have been.","isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.3.value","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"claims.items.[INDEX].oneOf.3","typeLabel":"object"},{"type":"object","description":"The content could not be judged. The evaluation is kept out of fits and previews.","required":["kind","problem"],"properties":{"kind":{"type":"string","enum":["input_broken"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.4.kind","typeLabel":"enum\u003cstring>"},"problem":{"type":"string","enum":["truncated","wrong_language","bad_extraction","unreadable","other"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.4.problem","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"claims.items.[INDEX].oneOf.4","typeLabel":"object"},{"type":"object","description":"What your app did with the outcome. Observed behavior, not a statement of what is true.","required":["kind","value"],"properties":{"kind":{"type":"string","enum":["action"],"isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.5.kind","typeLabel":"enum\u003cstring>"},"value":{"type":"string","minLength":1,"maxLength":128,"description":"What your app did, in your own words (for example `auto_approved`).","isRequired":true,"uniqueKey":"claims.items.[INDEX].oneOf.5.value","typeLabel":"string"},"logic_version":{"type":"string","maxLength":128,"description":"Which version of your own logic acted.","uniqueKey":"claims.items.[INDEX].oneOf.5.logic_version","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"claims.items.[INDEX].oneOf.5","typeLabel":"object"}],"uniqueKey":"claims.items.[INDEX]","typeLabel":"object"},"minItems":1,"maxItems":65,"isRequired":true,"uniqueKey":"claims","typeLabel":"object[]"},"reason":{"type":"string","maxLength":4000,"uniqueKey":"reason","typeLabel":"string"},"unsure":{"type":"boolean","uniqueKey":"unsure","typeLabel":"boolean"}},"required":["claims"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"claims":[{"kind":"target","value":true}],"reason":"\u003cstring>","unsure":true}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"47736569-dd40-493e-98c0-d021c9667428":{"description":"Recorded","headers":{"Idempotent-Replayed":{"schema":{"type":"string","enum":["true"],"description":"Present and `true` when this is the stored result of an earlier request with the same Idempotency-Key."},"required":false,"description":"Present and `true` when this is the stored result of an earlier request with the same Idempotency-Key."}},"content":{"application/json":{"schema":{"type":"object","properties":{"environment":{"type":"string","enum":["production","test"],"description":"The environment of the key that made the call: `production` or `test`. Evaluations, feedback, reviews and suggestions are separate per environment; registered structures are shared.","isRequired":true,"uniqueKey":"environment","typeLabel":"enum\u003cstring>"},"feedback_id":{"type":"string","pattern":"^fbk_[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$","isRequired":true,"uniqueKey":"feedback_id","typeLabel":"string"},"item":{"type":"object","properties":{"environment":{"type":"string","enum":["production","test"],"description":"The environment of the key that made the call: `production` or `test`. Evaluations, feedback, reviews and suggestions are separate per environment; registered structures are shared.","isRequired":true,"uniqueKey":"item.environment","typeLabel":"enum\u003cstring>"},"id":{"type":"string","pattern":"^inb_[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$","isRequired":true,"uniqueKey":"item.id","typeLabel":"string"},"decision_id":{"type":"string","pattern":"^[a-z][a-z0-9_.-]{0,127}$","isRequired":true,"uniqueKey":"item.decision_id","typeLabel":"string"},"evaluation_id":{"type":"string","pattern":"^evl_[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$","isRequired":true,"uniqueKey":"item.evaluation_id","typeLabel":"string"},"lane":{"type":"string","enum":["active","random"],"isRequired":true,"uniqueKey":"item.lane","typeLabel":"enum\u003cstring>"},"reason":{"type":"object","properties":{"tag":{"type":"string","enum":["uncertain","novel","spot_check","near_cut"],"isRequired":true,"uniqueKey":"item.reason.tag","typeLabel":"enum\u003cstring>"},"text":{"type":"string","isRequired":true,"uniqueKey":"item.reason.text","typeLabel":"string"}},"required":["tag","text"],"additionalProperties":false,"isRequired":true,"uniqueKey":"item.reason","typeLabel":"object"},"tags":{"type":"array","items":{"type":"string","enum":["uncertain","novel","spot_check","near_cut"],"uniqueKey":"item.tags.items.[INDEX]","typeLabel":"enum\u003cstring>"},"minItems":1,"isRequired":true,"uniqueKey":"item.tags","typeLabel":"enum\u003cstring>[]"},"blind":{"type":"boolean","isRequired":true,"uniqueKey":"item.blind","typeLabel":"boolean"},"rank":{"type":"number","isRequired":true,"uniqueKey":"item.rank","typeLabel":"number"},"queued_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"item.queued_at","typeLabel":"string\u003cdate-time>"},"content":{"oneOf":[{"type":"object","required":["subject"],"properties":{"subject":{"type":"array","items":{"oneOf":[{"type":"object","required":["type","text"],"properties":{"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.0.text","typeLabel":"string"},"name":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Names the part, so a feature's `inputs` can pick it. In `subject`, avoid \"context\" when the request also sends `context`.","uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.0.name","typeLabel":"string"},"sensitive":{"type":"boolean","description":"Display policy only: reviewers see the part blurred or behind a link. The engine still reads it and it is stored like any other part.","uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.0.sensitive","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["type","data"],"properties":{"type":{"type":"string","enum":["json"],"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"data":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.data.oneOf.0.additionalProperties","typeLabel":"any"},"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.data.oneOf.0","typeLabel":"object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.data.oneOf.1.items.[INDEX]","typeLabel":"any"},"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.data.oneOf.1","typeLabel":"any[]"}],"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.data","typeLabel":"object | any[]"},"name":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Names the part, so a feature's `inputs` can pick it. In `subject`, avoid \"context\" when the request also sends `context`.","uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.name","typeLabel":"string"},"sensitive":{"type":"boolean","description":"Display policy only: reviewers see the part blurred or behind a link. The engine still reads it and it is stored like any other part.","uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1.sensitive","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"item.content.oneOf.0.subject.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"item.content.oneOf.0.subject","typeLabel":"object[]"},"context":{"type":"array","items":{"oneOf":[{"type":"object","required":["type","text"],"properties":{"type":{"type":"string","enum":["text"],"isRequired":true,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"},"text":{"type":"string","minLength":1,"isRequired":true,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.0.text","typeLabel":"string"},"name":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Names the part, so a feature's `inputs` can pick it. In `subject`, avoid \"context\" when the request also sends `context`.","uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.0.name","typeLabel":"string"},"sensitive":{"type":"boolean","description":"Display policy only: reviewers see the part blurred or behind a link. The engine still reads it and it is stored like any other part.","uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.0.sensitive","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["type","data"],"properties":{"type":{"type":"string","enum":["json"],"isRequired":true,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"data":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.data.oneOf.0.additionalProperties","typeLabel":"any"},"isRequired":true,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.data.oneOf.0","typeLabel":"object"},{"type":"array","items":{"oneOf":[{}],"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.data.oneOf.1.items.[INDEX]","typeLabel":"any"},"isRequired":true,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.data.oneOf.1","typeLabel":"any[]"}],"isRequired":true,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.data","typeLabel":"object | any[]"},"name":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Names the part, so a feature's `inputs` can pick it. In `subject`, avoid \"context\" when the request also sends `context`.","uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.name","typeLabel":"string"},"sensitive":{"type":"boolean","description":"Display policy only: reviewers see the part blurred or behind a link. The engine still reads it and it is stored like any other part.","uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1.sensitive","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"item.content.oneOf.0.context.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"item.content.oneOf.0.context.items.[INDEX]","typeLabel":"object"},"uniqueKey":"item.content.oneOf.0.context","typeLabel":"object[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"item.content.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"item.content.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"item.content","typeLabel":"object | null"},"sensitive":{"type":"boolean","isRequired":true,"uniqueKey":"item.sensitive","typeLabel":"boolean"},"outcome_choices":{"type":"array","items":{"type":"object","properties":{"outcome":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","isRequired":true,"uniqueKey":"item.outcome_choices.items.[INDEX].outcome","typeLabel":"string"},"display":{"type":"string","uniqueKey":"item.outcome_choices.items.[INDEX].display","typeLabel":"string"}},"required":["outcome"],"additionalProperties":false,"uniqueKey":"item.outcome_choices.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"item.outcome_choices","typeLabel":"object[]"},"features":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","isRequired":true,"uniqueKey":"item.features.items.[INDEX].name","typeLabel":"string"},"node_hash":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","isRequired":true,"uniqueKey":"item.features.items.[INDEX].node_hash","typeLabel":"string"},"prompt":{"type":"string","isRequired":true,"uniqueKey":"item.features.items.[INDEX].prompt","typeLabel":"string"},"effect":{"type":"string","enum":["raises","lowers"],"uniqueKey":"item.features.items.[INDEX].effect","typeLabel":"enum\u003cstring>"},"guidance":{"type":"string","uniqueKey":"item.features.items.[INDEX].guidance","typeLabel":"string"},"criteria":{"type":"object","properties":{"true":{"type":"string","uniqueKey":"item.features.items.[INDEX].criteria.true","typeLabel":"string"},"false":{"type":"string","uniqueKey":"item.features.items.[INDEX].criteria.false","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"item.features.items.[INDEX].criteria","typeLabel":"object"}},"required":["name","node_hash","prompt"],"additionalProperties":false,"uniqueKey":"item.features.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"item.features","typeLabel":"object[]"},"decision_title":{"type":"string","uniqueKey":"item.decision_title","typeLabel":"string"},"decision_index":{"type":"integer","minimum":0,"uniqueKey":"item.decision_index","typeLabel":"integer"},"version":{"type":"object","properties":{"structure":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","isRequired":true,"uniqueKey":"item.version.structure","typeLabel":"string"},"weights":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","isRequired":true,"uniqueKey":"item.version.weights","typeLabel":"string"}},"required":["structure","weights"],"additionalProperties":false,"uniqueKey":"item.version","typeLabel":"object"},"guidance":{"type":"string","uniqueKey":"item.guidance","typeLabel":"string"},"shown_at":{"type":"string","format":"date-time","uniqueKey":"item.shown_at","typeLabel":"string\u003cdate-time>"},"summary":{"type":"string","uniqueKey":"item.summary","typeLabel":"string"},"target":{"type":"string","uniqueKey":"item.target","typeLabel":"string"},"cuts":{"type":"array","items":{"type":"object","properties":{"at":{"type":"number","isRequired":true,"uniqueKey":"item.cuts.items.[INDEX].at","typeLabel":"number"},"outcome":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","isRequired":true,"uniqueKey":"item.cuts.items.[INDEX].outcome","typeLabel":"string"}},"required":["at","outcome"],"additionalProperties":false,"uniqueKey":"item.cuts.items.[INDEX]","typeLabel":"object"},"minItems":1,"uniqueKey":"item.cuts","typeLabel":"object[]"},"below":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","uniqueKey":"item.below","typeLabel":"string"},"prediction":{"type":"object","properties":{"features":{"type":"object","additionalProperties":{"oneOf":[{"type":"object","required":["type","value"],"properties":{"type":{"type":"string","enum":["boolean"],"isRequired":true,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.0.type","typeLabel":"enum\u003cstring>"},"value":{"type":"number","minimum":0,"maximum":1,"isRequired":true,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.0.value","typeLabel":"number"}},"additionalProperties":false,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.0","typeLabel":"object"},{"type":"object","required":["type","abstained"],"properties":{"type":{"type":"string","enum":["boolean"],"isRequired":true,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.1.type","typeLabel":"enum\u003cstring>"},"abstained":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.1.abstained","typeLabel":"enum\u003cboolean>"},"reason":{"type":"string","uniqueKey":"item.prediction.features.additionalProperties.oneOf.1.reason","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.1","typeLabel":"object"},{"type":"object","required":["type","failed"],"properties":{"type":{"type":"string","enum":["boolean"],"isRequired":true,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.2.type","typeLabel":"enum\u003cstring>"},"failed":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.2.failed","typeLabel":"enum\u003cboolean>"},"reason":{"type":"string","uniqueKey":"item.prediction.features.additionalProperties.oneOf.2.reason","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"item.prediction.features.additionalProperties.oneOf.2","typeLabel":"object"}],"uniqueKey":"item.prediction.features.additionalProperties","typeLabel":"object"},"isRequired":true,"uniqueKey":"item.prediction.features","typeLabel":"object"},"score":{"type":"number","uniqueKey":"item.prediction.score","typeLabel":"number"},"outcome":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","uniqueKey":"item.prediction.outcome","typeLabel":"string"},"contributions":{"type":"object","additionalProperties":{"type":"number","uniqueKey":"item.prediction.contributions.additionalProperties","typeLabel":"number"},"uniqueKey":"item.prediction.contributions","typeLabel":"object"}},"required":["features"],"additionalProperties":false,"uniqueKey":"item.prediction","typeLabel":"object"},"handled":{"type":"object","properties":{"state":{"type":"string","enum":["confirmed","changed","answered","unsure","skipped","expired","withdrawn"],"isRequired":true,"uniqueKey":"item.handled.state","typeLabel":"enum\u003cstring>"},"at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"item.handled.at","typeLabel":"string\u003cdate-time>"},"feedback_id":{"type":"string","pattern":"^fbk_[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$","uniqueKey":"item.handled.feedback_id","typeLabel":"string"},"changed_at":{"type":"string","format":"date-time","uniqueKey":"item.handled.changed_at","typeLabel":"string\u003cdate-time>"},"outcome":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","uniqueKey":"item.handled.outcome","typeLabel":"string"},"target":{"type":"boolean","uniqueKey":"item.handled.target","typeLabel":"boolean"},"matched":{"type":"boolean","uniqueKey":"item.handled.matched","typeLabel":"boolean"}},"required":["state","at"],"additionalProperties":false,"uniqueKey":"item.handled","typeLabel":"object"}},"required":["environment","id","decision_id","evaluation_id","lane","reason","tags","blind","rank","queued_at","content","sensitive","outcome_choices","features"],"additionalProperties":false,"isRequired":true,"uniqueKey":"item","typeLabel":"object"}},"required":["environment","feedback_id","item"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"environment":"production","feedback_id":"\u003cstring>","item":{"environment":"production","id":"\u003cstring>","decision_id":"\u003cstring>","evaluation_id":"\u003cstring>","lane":"active","reason":{"tag":"uncertain","text":"\u003cstring>"},"tags":["uncertain"],"blind":true,"rank":123,"queued_at":"2023-11-07T05:31:56Z","content":{"subject":[{"type":"text","text":"\u003cstring>","name":"\u003cstring>","sensitive":true}],"context":[{"type":"text","text":"\u003cstring>","name":"\u003cstring>","sensitive":true}]},"sensitive":true,"outcome_choices":[{"outcome":"\u003cstring>","display":"\u003cstring>"}],"features":[{"name":"\u003cstring>","node_hash":"\u003cstring>","prompt":"\u003cstring>","effect":"raises","guidance":"\u003cstring>","criteria":{"true":"\u003cstring>","false":"\u003cstring>"}}],"decision_title":"\u003cstring>","decision_index":1,"version":{"structure":"\u003cstring>","weights":"\u003cstring>"},"guidance":"\u003cstring>","shown_at":"2023-11-07T05:31:56Z","summary":"\u003cstring>","target":"\u003cstring>","cuts":[{"at":123,"outcome":"\u003cstring>"}],"below":"\u003cstring>","prediction":{"features":{},"score":123,"outcome":"\u003cstring>","contributions":{}},"handled":{"state":"confirmed","at":"2023-11-07T05:31:56Z","feedback_id":"\u003cstring>","changed_at":"2023-11-07T05:31:56Z","outcome":"\u003cstring>","target":true,"matched":true}}}}},"exampleType":"generated"}},"exampleType":"generated"},"c1b1058b-11c8-4aea-aa42-1392285fb8b9":{"description":"Invalid request: `param` names the field at fault when one applies","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"de154095-7a2d-40f4-8edc-a88efb001152":{"description":"Missing or invalid API key (reason KEY_INVALID)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"60b473b9-9329-412a-bf42-4ac57420c8e4":{"description":"The key may not do this","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"0e17369c-7503-4426-98b6-6461e311d4f6":{"description":"Not found, or not in this key's organization and environment","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"fc3809b9-3bd9-4e8f-bfce-291dbadc799f":{"description":"Conflict with the current state","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"140612ff-55da-4020-81c3-a6fcad7acb0a":{"description":"The Idempotency-Key's first result was deleted, so it cannot be replayed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"c47f6df4-c59c-4922-b616-74269b756e7a":{"description":"The request is well formed but cannot be processed (for example reason IDEMPOTENCY_KEY_REUSED)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"e05b6511-3010-49db-838f-332906975fe6":{"description":"RATE_LIMITED: retry after Retry-After seconds; QUOTA_EXCEEDED: details.reset_at gives the daily reset time (no Retry-After), or details.too_large asks for a smaller request","headers":{"Retry-After":{"schema":{"type":"string","description":"Seconds to wait before retrying, when waiting helps."},"required":false,"description":"Seconds to wait before retrying, when waiting helps."}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"933d3f79-b04f-4dd0-a352-20ea20487024":{"description":"Temporarily unavailable, with Retry-After (for example reason AUTH_UNAVAILABLE, ENGINE_UNAVAILABLE or STORE_UNAVAILABLE): retry with the same Idempotency-Key","headers":{"Retry-After":{"schema":{"type":"string","description":"Seconds to wait before retrying, when waiting helps."},"required":true,"description":"Seconds to wait before retrying, when waiting helps."}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","permission_denied","not_found","conflict","rate_limited","engine_failed","unavailable","internal"],"isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"For people; don't parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"reason":{"type":"string","pattern":"^[A-Z][A-Z0-9_]+$","description":"Set where a caller can act on it, one of the reasons in the ErrorReason schema. New reasons may be added: treat an unknown one by the status and `type`.","uniqueKey":"error.reason","typeLabel":"string"},"param":{"type":"string","description":"The request field at fault, as a dotted path (`subject.0.text`, `claims.1.value`).","uniqueKey":"error.param","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"uniqueKey":"error.details","typeLabel":"object"}},"required":["type","message"],"additionalProperties":false,"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","message":"\u003cstring>","reason":"\u003cstring>","param":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"8636c9c4-fd76-4a10-a919-5161c4ad7d3e":{"bearerAuth":{"type":"http","scheme":"bearer","description":"An API key, sent as `Authorization: Bearer \u003ckey>`. Each operation lists the scope its key needs: `decisions:evaluate` (evaluate and read evaluations), `decisions:feedback` (your app's feedback) or `decisions:develop` (everything else, including owner feedback and the review queue). An operation listing no scope takes any scoped key. A key with no scope, or without the operation's, gets 403 INSUFFICIENT_SCOPE.","scopes":["decisions:develop"],"schemeName":"bearerAuth"}}},"servers":{"9e61324b-4cc4-430d-a8d9-fa0221e50db5":{"url":"https://api.moonbounce.ai","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"An API key, sent as `Authorization: Bearer \u003ckey>`. Each operation lists the scope its key needs: `decisions:evaluate` (evaluate and read evaluations), `decisions:feedback` (your app's feedback) or `decisions:develop` (everything else, including owner feedback and the review queue). An operation listing no scope takes any scoped key. A key with no scope, or without the operation's, gets 403 INSUFFICIENT_SCOPE.","scopes":["decisions:develop"],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"An API key, sent as `Authorization: Bearer \u003ckey>`. Each operation lists the scope its key needs: `decisions:evaluate` (evaluate and read evaluations), `decisions:feedback` (your app's feedback) or `decisions:develop` (everything else, including owner feedback and the review queue). An operation listing no scope takes any scoped key. A key with no scope, or without the operation's, gets 403 INSUFFICIENT_SCOPE.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"moonbounce","siteName":"Moonbounce Decisions API","title":"Submit a review - Moonbounce Decisions API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-02T20:55:04.038Z","originalFileLocation":"api-reference/review/submit-a-review.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Records the reviewer\u0026#x27;s claims for an open item and returns the item with its prediction. No action claims; no verdict on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a reason on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Moonbounce Decisions API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/moonbounce/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/moonbounce/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/moonbounce/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/moonbounce/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Submit a review - Moonbounce Decisions API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Records the reviewer\u0026#x27;s claims for an open item and returns the item with its prediction. No action claims; no verdict on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a reason on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Moonbounce Decisions API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://moonbounce.mintlify.app/_mintlify/api/og/v2?division=review\u0026amp;title=Submit+a+review\u0026amp;description=Records+the+reviewer%27s+claims+for+an+open+item+and+returns+the+item+with+its+prediction.+No+%60action%60+claims%3B+no+%60verdict%60+on+a+blind+item+or+an+abstained+evalua\u0026amp;theme=6d67371419b6cc4f4d7d2b27\u0026amp;signature=c40aa6c38df4bc4fd46d425cd442fbe421fd7be4200fc61d2a4518bb0e3ce43a\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Submit a review - Moonbounce Decisions API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Records the reviewer\u0026#x27;s claims for an open item and returns the item with its prediction. No action claims; no verdict on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a reason on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://moonbounce.mintlify.app/_mintlify/api/og/v2?division=review\u0026amp;title=Submit+a+review\u0026amp;description=Records+the+reviewer%27s+claims+for+an+open+item+and+returns+the+item+with+its+prediction.+No+%60action%60+claims%3B+no+%60verdict%60+on+a+blind+item+or+an+abstained+evalua\u0026amp;theme=6d67371419b6cc4f4d7d2b27\u0026amp;signature=c40aa6c38df4bc4fd46d425cd442fbe421fd7be4200fc61d2a4518bb0e3ce43a\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/moonbounce/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Moonbounce Decisions API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#4f46e5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/review/submit-a-review.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://moonbounce.mintlify.app/#organization\",\"name\":\"Moonbounce Decisions API\",\"url\":\"https://moonbounce.mintlify.app\"},{\"@type\":\"WebSite\",\"@id\":\"https://moonbounce.mintlify.app#website\",\"name\":\"Moonbounce Decisions API\",\"url\":\"https://moonbounce.mintlify.app\",\"publisher\":{\"@id\":\"https://moonbounce.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review#webpage\",\"url\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review\",\"name\":\"Submit a review\",\"description\":\"Records the reviewer's claims for an open item and returns the item with its prediction. No action claims; no verdict on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a reason on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.\",\"dateModified\":\"2026-11-02T20:55:04.038Z\",\"isPartOf\":{\"@id\":\"https://moonbounce.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://moonbounce.mintlify.app/api-reference/health/health-check\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"review\",\"item\":\"https://moonbounce.mintlify.app/api-reference/review/list-review-items\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Submit a review\",\"item\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review#apireference\",\"headline\":\"Submit a review\",\"name\":\"Submit a review\",\"description\":\"Records the reviewer's claims for an open item and returns the item with its prediction. No action claims; no verdict on a blind item or an abstained evaluation (its prediction has no outcome). Disagreeing (a reject verdict, another outcome, or a target that contradicts an extreme outcome) needs a reason on a non-blind item (400, param reason); on a blind item the reason may follow through POST .../reason. An item that is not open is 409, unless the request replays an Idempotency-Key.\",\"url\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review\",\"mainEntityOfPage\":{\"@id\":\"https://moonbounce.mintlify.app/api-reference/review/submit-a-review#webpage\"},\"dateModified\":\"2026-11-02T20:55:04.038Z\",\"publisher\":{\"@id\":\"https://moonbounce.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://moonbounce.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Moonbounce Decisions API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Moonbounce Decisions API","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"API reference overview","href":"/reference/overview"}]},{"group":"Endpoints","pages":[{"group":"health","pages":[{"title":"Health check","deprecated":null,"version":null,"openapi":"/openapi.json get /health","href":"/api-reference/health/health-check"}]},{"group":"specs","pages":[{"title":"Hash a decision spec","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/specs/hash","href":"/api-reference/specs/hash-a-decision-spec"},{"title":"List registered structures","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/structures","href":"/api-reference/specs/list-registered-structures"},{"title":"Register a spec structure","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/decisions/{decision_id}/structures","href":"/api-reference/specs/register-a-spec-structure"},{"title":"Get a registered structure and its spec","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/structures/{structure}","href":"/api-reference/specs/get-a-registered-structure-and-its-spec"},{"title":"List decisions in this environment","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions","href":"/api-reference/specs/list-decisions-in-this-environment"}]},{"group":"engines","pages":[{"title":"List the engines a decision can run on","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/engines","href":"/api-reference/engines/list-the-engines-a-decision-can-run-on"},{"title":"Get the engine a decision runs on","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/binding","href":"/api-reference/engines/get-the-engine-a-decision-runs-on"},{"title":"Choose the engine a decision runs on","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/decisions/{decision_id}/binding/revisions","href":"/api-reference/engines/choose-the-engine-a-decision-runs-on"}]},{"group":"evaluate","pages":[{"title":"Evaluate an item against a decision","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/evaluate","href":"/api-reference/evaluate/evaluate-an-item-against-a-decision"},{"title":"Get a past evaluation","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/evaluations/{evaluation_id}","href":"/api-reference/evaluate/get-a-past-evaluation"},{"title":"List a decision's evaluations","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/evaluations","href":"/api-reference/evaluate/list-a-decisions-evaluations"}]},{"group":"feedback","pages":[{"title":"Submit feedback on an evaluation or item","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/feedback","href":"/api-reference/feedback/submit-feedback-on-an-evaluation-or-item"},{"title":"Get a feedback submission as stored","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/feedback/{feedback_id}","href":"/api-reference/feedback/get-a-feedback-submission-as-stored"},{"title":"Export a decision's feedback as training data","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/feedback","href":"/api-reference/feedback/export-a-decisions-feedback-as-training-data"},{"title":"Seed a decision with labeled examples","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/decisions/{decision_id}/seeds","href":"/api-reference/feedback/seed-a-decision-with-labeled-examples"}]},{"group":"review","pages":[{"title":"List review items","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/review/items","href":"/api-reference/review/list-review-items"},{"title":"Get a review item","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/review/items/{item_id}","href":"/api-reference/review/get-a-review-item"},{"title":"Get the structure and weights a review item was decided with","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/review/items/{item_id}/configuration","href":"/api-reference/review/get-the-structure-and-weights-a-review-item-was-decided-with"},{"title":"Mark a review item as shown","description":"Records that a review item was shown to the reviewer (once); it changes whether an expired blind item can return to the queue. Idempotent acknowledgement that the item was put in front of the reviewer: sets shown_at the first time and returns the stored value after that. An item that was shown and then expired is never queued again.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/shown","href":"/api-reference/review/mark-a-review-item-as-shown"},{"title":"Submit a review","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/submit","href":"/api-reference/review/submit-a-review"},{"title":"Withdraw a review answer","description":"Undoes the reviewer's own recent answer, within 10 minutes of the original answer. Send the current chain head as feedback_id (from handled.feedback_id). Corrections do not renew the window. A stale head, expired window, skipped, expired, unanswered or already withdrawn item is 409; another reviewer or environment is 404. A retry with the same Idempotency-Key replays even after expiry. The answer stops counting, but a blind item's revealed prediction stays visible and the item is not requeued.","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/withdraw","href":"/api-reference/review/withdraw-a-review-answer"},{"title":"Change your own earlier review answer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/change","href":"/api-reference/review/change-your-own-earlier-review-answer"},{"title":"Skip a review item","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/skip","href":"/api-reference/review/skip-a-review-item"},{"title":"Add the reason for a blind disagreement","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/review/items/{item_id}/reason","href":"/api-reference/review/add-the-reason-for-a-blind-disagreement"}]},{"group":"suggestions","pages":[{"title":"List suggestions for a decision","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/suggestions","href":"/api-reference/suggestions/list-suggestions-for-a-decision"},{"title":"Generate a suggestion on demand","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/decisions/{decision_id}/suggestions","href":"/api-reference/suggestions/generate-a-suggestion-on-demand"},{"title":"Get a suggestion","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/suggestions/{suggestion_id}","href":"/api-reference/suggestions/get-a-suggestion"},{"title":"Mark a suggestion pulled or rejected","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/suggestions/{suggestion_id}/status","href":"/api-reference/suggestions/mark-a-suggestion-pulled-or-rejected"},{"title":"Preview a spec change against past feedback","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/decisions/{decision_id}/previews","href":"/api-reference/suggestions/preview-a-spec-change-against-past-feedback"},{"title":"Get the improvement loop's status","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/loop","href":"/api-reference/suggestions/get-the-improvement-loops-status"}]},{"group":"usage","pages":[{"title":"Engine and model cost for a decision, per evaluation and in total","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/decisions/{decision_id}/usage","href":"/api-reference/usage/engine-and-model-cost-for-a-decision-per-evaluation-and-in-total"}]},{"group":"keys","pages":[{"title":"Identify the calling key or sign-in","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/whoami","href":"/api-reference/keys/identify-the-calling-key-or-sign-in"}]}]}]}]},"basePath":"","title":"Submit a review - Moonbounce Decisions API","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-DHaG7hr_.js","dist-DKZWslLH.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-BIWXJmsZ.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-DCDCdBVX.js","utils-ME8dDnLe.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-0e84ACsd.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-wgRBj-ia.js","snippetPresets-C11Sgb-o.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-C0lapOpP.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-ZeRQV8fF.js","shallow-BupWh095.js","getApiPlaygroundDisplay-BnYQO2Ss.js","CodeSnippet-RKKOc8c_.js","CodeSnippets-Drf_m8wS.js","Page-Bevw23-4.js","getPastedJson-u6QiPzNZ.js","icon-Bb-CBSxO.js","MethodPill-F7l5AI7V.js","DuplicateIcon-IiAXkdSg.js","createIcon-FliI8EBc.js","DynamicMarkdown-B62XqCSI.js","SectionHeading-Dj31pT03.js","axios-vUo_bRtp.js","Markdown-BOgQCTwD.js","AssistantPageLink-UDqbR6xh.js"]}