Tests a private draft, or a release that’s being tested, of a browser game or a mod Patch installs. A draft’s files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you’re starting it. Starting a test cancels any open one of the release.
waiting for Patch Desktop on your PC, running, recorded (waiting for your agent's review of the footage), passed, failed, couldnt_run (start another) or cancelled
Set while it waits and no Patch Desktop is open to take it on
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Patch","description":"Play and make games, mods, crossover mods and remixes on Patch.","colors":{"primary":"#171717","light":"#fafafa","dark":"#171717"},"api":{"playground":{"display":"interactive"},"examples":{"languages":["curl","javascript","python"]}},"navbar":{"primary":{"type":"button","label":"Open Patch","href":"https://patch.gg"}},"footer":{"socials":{"website":"https://patch.gg"}},"fonts":{"family":"Geist"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"patch-b3bbfc3b","hasAudioNarration":false,"actualSubdomain":"patch-b3bbfc3b","customDomains":["docs.patch.gg"],"gitSource":{"type":"github","owner":"patch-gg","repo":"patch","deployBranch":"production","contentDirectory":"product/docs","isPrivate":true,"mountPath":"","label":"","_id":"6add1837da589734fa3cbbbc"},"chroma":{"latestBuiltDeploymentHistoryId":"6ae43577492eee9d6caa81ca","collectionId":"2fb4b32b-4886-4aba-925c-cdd4cddd585b","liveDeploymentHistoryId":"6ae43577492eee9d6caa81ca","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae66f7d326d1b59f41eeb92","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API reference","count":80},{"language":"default","tag":"Endpoints","count":79},{"language":"default","tag":"Review","count":13},{"language":"default","tag":"Releases","count":12},{"language":"default","tag":"Account","count":11},{"language":"default","tag":"People","count":8},{"language":"default","tag":"Docs","count":6},{"language":"default","tag":"Assets","count":6},{"language":"default","tag":"Projects","count":6},{"language":"default","tag":"Chats","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"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":true},"customCss":[],"page":{"pagePath":"api-reference/review/test-a-release-on-your-pc","slug":"/api-reference/review/test-a-release-on-your-pc","pageMetadata":{"title":"Test a release on your PC","description":"Tests a private draft, or a release that's being tested, of a browser game or a mod Patch installs. A draft's files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you're starting it. Starting a test cancels any open one of the release.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/releases/{version}/tests","href":"/api-reference/review/test-a-release-on-your-pc","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Tests a private draft, or a release that’s being tested, of a browser game or a mod Patch installs. A draft’s files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you’re starting it. Starting a test cancels any open one of the release.\"\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":"Test a release on your PC","description":"Tests a private draft, or a release that's being tested, of a browser game or a mod Patch installs. A draft's files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you're starting it. Starting a test cancels any open one of the release.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/releases/{version}/tests","href":"/api-reference/review/test-a-release-on-your-pc","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Review"],"summary":"Test a release on your PC","description":"Tests a private draft, or a release that's being tested, of a browser game or a mod Patch installs. A draft's files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you're starting it. Starting a test cancels any open one of the release.","security":["79e258c5-cfaa-4780-9d34-dffbbd40a549"],"parameters":["7c813a8a-b92a-48f6-a718-5e39a212627e","9df7f23e-90f4-4fcf-a50a-0252c19aebda","56345d39-0991-45d8-80a4-7d0fd385d202"],"responses":{"201":"b359ce16-1288-4183-81c1-783cb8c46d3d","308":"a908ff7c-d9f6-4326-b683-884d3de6ce73","400":"d6ff2136-b8d4-4ab4-a721-be6e4e98dc90","401":"05001409-0442-488a-928f-347594273a74","403":"acab5f1e-57e4-451e-be12-4b3404fc05b5","404":"8704e00f-ea37-413a-abad-8598b6e57ada"},"method":"post","type":"path","servers":["3cfc12d4-242d-4ff1-9d52-a9e0dc9d7fc9"],"path":"/projects/{owner}/{slug}/releases/{version}/tests","baseUrlOptions":["https://patch.gg/api/v1"],"title":"Test a release on your PC","codeSamples":[],"requestExampleLanguages":["bash","javascript","python"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"7c813a8a-b92a-48f6-a718-5e39a212627e":{"schema":{"type":"string","example":"patch","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"name":"owner","in":"path"},"9df7f23e-90f4-4fcf-a50a-0252c19aebda":{"schema":{"type":"string","example":"demo-mod","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"name":"slug","in":"path"},"56345d39-0991-45d8-80a4-7d0fd385d202":{"schema":{"type":"string","example":"0.1.0","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"name":"version","in":"path"}},"responses":{"b359ce16-1288-4183-81c1-783cb8c46d3d":{"description":"The test, waiting","content":{"application/json":{"schema":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"oneOf.0.id","typeLabel":"string\u003cuuid>"},"project":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.project","typeLabel":"string"},"version":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.version","typeLabel":"string"},"state":{"type":"string","enum":["waiting","running","recorded","passed","failed","couldnt_run","cancelled"],"description":"waiting for Patch Desktop on your PC, running, recorded (waiting for your agent's review of the footage), passed, failed, couldnt_run (start another) or cancelled","isRequired":true,"uniqueKey":"oneOf.0.state","typeLabel":"enum\u003cstring>"},"runs":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.runs","typeLabel":"integer"},"minutes":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.minutes","typeLabel":"integer"},"pc_name":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.pc_name.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.0.pc_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.pc_name","typeLabel":"string | null"},"progress":{"oneOf":[{"type":"object","properties":{"phase":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.progress.oneOf.0.phase","typeLabel":"string"},"run":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.progress.oneOf.0.run","typeLabel":"integer"}},"required":["phase","run"],"isRequired":true,"uniqueKey":"oneOf.0.progress.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"phase":{"type":"string"},"run":{"type":"integer"}},"required":["phase","run"],"isRequired":true,"uniqueKey":"oneOf.0.progress.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.progress","typeLabel":"object | null"},"outcome":{"oneOf":[{"type":"object","properties":{"code":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.outcome.oneOf.0.code","typeLabel":"string"},"reason":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.outcome.oneOf.0.reason","typeLabel":"string"}},"required":["code","reason"],"isRequired":true,"uniqueKey":"oneOf.0.outcome.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"code":{"type":"string"},"reason":{"type":"string"}},"required":["code","reason"],"isRequired":true,"uniqueKey":"oneOf.0.outcome.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.outcome","typeLabel":"object | null"},"results":{"type":"array","items":{"type":"object","properties":{"run":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].run","typeLabel":"integer"},"seconds":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].seconds","typeLabel":"integer"},"checks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","enum":["scanned","loaded","no_errors","picture","responding","no_outside_requests","ran_to_end","self_checks","installed","started","no_crash"],"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].checks.items.[INDEX].id","typeLabel":"enum\u003cstring>"},"result":{"type":"string","enum":["pass","fail","cant_check"],"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].checks.items.[INDEX].result","typeLabel":"enum\u003cstring>"},"name":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].checks.items.[INDEX].name","typeLabel":"string"},"detail":{"type":"string","maxLength":1000,"uniqueKey":"oneOf.0.results.items.[INDEX].checks.items.[INDEX].detail","typeLabel":"string"}},"required":["id","result","name"],"uniqueKey":"oneOf.0.results.items.[INDEX].checks.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].checks","typeLabel":"object[]"},"self_checks":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.results.items.[INDEX].self_checks.oneOf.0.additionalProperties","typeLabel":"any"},"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].self_checks.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"oneOf":[{}],"uniqueKey":"oneOf.0.results.items.[INDEX].self_checks.oneOf.1.additionalProperties","typeLabel":"any"},"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].self_checks.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].self_checks","typeLabel":"object | null"},"frames":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].frames","typeLabel":"integer"},"sheets":{"type":"integer","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].sheets","typeLabel":"integer"},"footage_error":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].footage_error.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].footage_error.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.results.items.[INDEX].footage_error","typeLabel":"string | null"}},"required":["run","seconds","checks","self_checks","frames","sheets","footage_error"],"uniqueKey":"oneOf.0.results.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.0.results","typeLabel":"object[]"},"review":{"oneOf":[{"type":"object","properties":{"verdict":{"type":"string","enum":["pass","fail"],"isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.verdict","typeLabel":"enum\u003cstring>"},"plays":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.plays","typeLabel":"boolean"},"harmful":{"type":"boolean","isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.harmful","typeLabel":"boolean"},"summary":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.summary","typeLabel":"string"},"moments":{"type":"array","items":{"type":"object","properties":{"run":{"type":"integer","minimum":1,"isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.moments.items.[INDEX].run","typeLabel":"integer"},"at":{"type":"string","description":"The run time as the sheets label frames, mm:ss","example":"00:14","isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.moments.items.[INDEX].at","typeLabel":"string"},"saw":{"type":"string","minLength":1,"maxLength":500,"description":"What happened there","isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.moments.items.[INDEX].saw","typeLabel":"string"}},"required":["run","at","saw"],"uniqueKey":"oneOf.0.review.oneOf.0.moments.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.moments","typeLabel":"object[]"},"created_at":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0.created_at","typeLabel":"string"}},"required":["verdict","plays","harmful","summary","moments","created_at"],"isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"verdict":{"type":"string","enum":["pass","fail"]},"plays":{"type":"boolean"},"harmful":{"type":"boolean"},"summary":{"type":"string"},"moments":{"type":"array","items":{"type":"object","properties":{"run":{"type":"integer","minimum":1},"at":{"type":"string","description":"The run time as the sheets label frames, mm:ss","example":"00:14"},"saw":{"type":"string","minLength":1,"maxLength":500,"description":"What happened there"}},"required":["run","at","saw"]}},"created_at":{"type":"string"}},"required":["verdict","plays","harmful","summary","moments","created_at"],"isRequired":true,"uniqueKey":"oneOf.0.review.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.review","typeLabel":"object | null"},"created_at":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.created_at","typeLabel":"string"},"claimed_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.claimed_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.0.claimed_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.claimed_at","typeLabel":"string | null"},"finished_at":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.finished_at.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.0.finished_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.0.finished_at","typeLabel":"string | null"},"needs_person":{"oneOf":[{"type":"object","properties":{"code":{"type":"string","enum":["open_patch_desktop"],"isRequired":true,"uniqueKey":"oneOf.0.needs_person.oneOf.0.code","typeLabel":"enum\u003cstring>"},"why":{"type":"string","description":"Why, for the agent","isRequired":true,"uniqueKey":"oneOf.0.needs_person.oneOf.0.why","typeLabel":"string"},"ask":{"type":"string","description":"What to ask the person, in words to pass on","isRequired":true,"uniqueKey":"oneOf.0.needs_person.oneOf.0.ask","typeLabel":"string"},"link":{"type":"string","isRequired":true,"uniqueKey":"oneOf.0.needs_person.oneOf.0.link","typeLabel":"string"}},"required":["code","why","ask","link"],"description":"Set while it waits and no Patch Desktop is open to take it on","uniqueKey":"oneOf.0.needs_person.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"code":{"type":"string","enum":["open_patch_desktop"]},"why":{"type":"string","description":"Why, for the agent"},"ask":{"type":"string","description":"What to ask the person, in words to pass on"},"link":{"type":"string"}},"required":["code","why","ask","link"],"description":"Set while it waits and no Patch Desktop is open to take it on","uniqueKey":"oneOf.0.needs_person.oneOf.1","typeLabel":"null"}],"uniqueKey":"oneOf.0.needs_person","typeLabel":"object | null"}},"required":["id","project","version","state","runs","minutes","pc_name","progress","outcome","results","review","created_at","claimed_at","finished_at"],"description":"The newest test, for browser games","uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"null","properties":{"id":{"type":"string","format":"uuid"},"project":{"type":"string"},"version":{"type":"string"},"state":{"type":"string","enum":["waiting","running","recorded","passed","failed","couldnt_run","cancelled"],"description":"waiting for Patch Desktop on your PC, running, recorded (waiting for your agent's review of the footage), passed, failed, couldnt_run (start another) or cancelled"},"runs":{"type":"integer"},"minutes":{"type":"integer"},"pc_name":{"oneOf":[{"type":"string"},{"type":"null"}]},"progress":{"oneOf":[{"type":"object","properties":{"phase":{"type":"string"},"run":{"type":"integer"}},"required":["phase","run"]},{"type":"null","properties":{"phase":{"type":"string"},"run":{"type":"integer"}},"required":["phase","run"]}]},"outcome":{"oneOf":[{"type":"object","properties":{"code":{"type":"string"},"reason":{"type":"string"}},"required":["code","reason"]},{"type":"null","properties":{"code":{"type":"string"},"reason":{"type":"string"}},"required":["code","reason"]}]},"results":{"type":"array","items":{"type":"object","properties":{"run":{"type":"integer"},"seconds":{"type":"integer"},"checks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","enum":["scanned","loaded","no_errors","picture","responding","no_outside_requests","ran_to_end","self_checks","installed","started","no_crash"]},"result":{"type":"string","enum":["pass","fail","cant_check"]},"detail":{"type":"string","maxLength":1000},"name":{"type":"string"}},"required":["id","result","name"]}},"self_checks":{"oneOf":[{"type":"object","additionalProperties":{"oneOf":[{}]}},{"type":"null","additionalProperties":{"oneOf":[{}]}}]},"frames":{"type":"integer"},"sheets":{"type":"integer"},"footage_error":{"oneOf":[{"type":"string"},{"type":"null"}]}},"required":["run","seconds","checks","self_checks","frames","sheets","footage_error"]}},"review":{"oneOf":[{"type":"object","properties":{"verdict":{"type":"string","enum":["pass","fail"]},"plays":{"type":"boolean"},"harmful":{"type":"boolean"},"summary":{"type":"string"},"moments":{"type":"array","items":{"type":"object","properties":{"run":{"type":"integer","minimum":1},"at":{"type":"string","description":"The run time as the sheets label frames, mm:ss","example":"00:14"},"saw":{"type":"string","minLength":1,"maxLength":500,"description":"What happened there"}},"required":["run","at","saw"]}},"created_at":{"type":"string"}},"required":["verdict","plays","harmful","summary","moments","created_at"]},{"type":"null","properties":{"verdict":{"type":"string","enum":["pass","fail"]},"plays":{"type":"boolean"},"harmful":{"type":"boolean"},"summary":{"type":"string"},"moments":{"type":"array","items":{"type":"object","properties":{"run":{"type":"integer","minimum":1},"at":{"type":"string","description":"The run time as the sheets label frames, mm:ss","example":"00:14"},"saw":{"type":"string","minLength":1,"maxLength":500,"description":"What happened there"}},"required":["run","at","saw"]}},"created_at":{"type":"string"}},"required":["verdict","plays","harmful","summary","moments","created_at"]}]},"created_at":{"type":"string"},"claimed_at":{"oneOf":[{"type":"string"},{"type":"null"}]},"finished_at":{"oneOf":[{"type":"string"},{"type":"null"}]},"needs_person":{"oneOf":[{"type":"object","properties":{"code":{"type":"string","enum":["open_patch_desktop"]},"why":{"type":"string","description":"Why, for the agent"},"ask":{"type":"string","description":"What to ask the person, in words to pass on"},"link":{"type":"string"}},"required":["code","why","ask","link"],"description":"Set while it waits and no Patch Desktop is open to take it on"},{"type":"null","properties":{"code":{"type":"string","enum":["open_patch_desktop"]},"why":{"type":"string","description":"Why, for the agent"},"ask":{"type":"string","description":"What to ask the person, in words to pass on"},"link":{"type":"string"}},"required":["code","why","ask","link"],"description":"Set while it waits and no Patch Desktop is open to take it on"}]}},"required":["id","project","version","state","runs","minutes","pc_name","progress","outcome","results","review","created_at","claimed_at","finished_at"],"description":"The newest test, for browser games","uniqueKey":"oneOf.1","typeLabel":"null"}],"uniqueKey":"","typeLabel":"object | null"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","project":"\u003cstring>","version":"\u003cstring>","state":"waiting","runs":123,"minutes":123,"pc_name":"\u003cstring>","progress":{"phase":"\u003cstring>","run":123},"outcome":{"code":"\u003cstring>","reason":"\u003cstring>"},"results":[{"run":123,"seconds":123,"checks":[{"id":"scanned","result":"pass","name":"\u003cstring>","detail":"\u003cstring>"}],"self_checks":{},"frames":123,"sheets":123,"footage_error":"\u003cstring>"}],"review":{"verdict":"pass","plays":true,"harmful":true,"summary":"\u003cstring>","moments":[{"run":2,"at":"00:14","saw":"\u003cstring>"}],"created_at":"\u003cstring>"},"created_at":"\u003cstring>","claimed_at":"\u003cstring>","finished_at":"\u003cstring>","needs_person":{"code":"open_patch_desktop","why":"\u003cstring>","ask":"\u003cstring>","link":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"a908ff7c-d9f6-4326-b683-884d3de6ce73":{"description":"Renamed; follow the Location header","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"d6ff2136-b8d4-4ab4-a721-be6e4e98dc90":{"description":"Invalid request","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","example":"version_exists","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"oneOf":[{}],"uniqueKey":"error.details","typeLabel":"any"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"version_exists","message":"\u003cstring>","details":"\u003cunknown>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"05001409-0442-488a-928f-347594273a74":{"description":"Not signed in","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","example":"version_exists","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"oneOf":[{}],"uniqueKey":"error.details","typeLabel":"any"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"version_exists","message":"\u003cstring>","details":"\u003cunknown>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"acab5f1e-57e4-451e-be12-4b3404fc05b5":{"description":"Not allowed","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","example":"version_exists","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"oneOf":[{}],"uniqueKey":"error.details","typeLabel":"any"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"version_exists","message":"\u003cstring>","details":"\u003cunknown>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"8704e00f-ea37-413a-abad-8598b6e57ada":{"description":"Not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","example":"version_exists","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"oneOf":[{}],"uniqueKey":"error.details","typeLabel":"any"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"version_exists","message":"\u003cstring>","details":"\u003cunknown>"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"79e258c5-cfaa-4780-9d34-dffbbd40a549":{"bearer":{"type":"http","scheme":"bearer","description":"An API key (pch_...) or the token from pch login.","scopes":[],"schemeName":"bearer"}}},"servers":{"3cfc12d4-242d-4ff1-9d52-a9e0dc9d7fc9":{"url":"https://patch.gg/api/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"An API key (pch_...) or the token from pch login.","scopes":[],"schemeName":"bearer"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"An API key (pch_...) or the token from pch login.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearer","name":"Authorization"}],"title":"bearer"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"patch-b3bbfc3b","siteName":"Patch","title":"Test a release on your PC - Patch","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-31T22:45:23.924Z","originalFileLocation":"api-reference/review/test-a-release-on-your-pc.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=\"Tests a private draft, or a release that\u0026#x27;s being tested, of a browser game or a mod Patch installs. A draft\u0026#x27;s files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you\u0026#x27;re starting it. Starting a test cancels any open one of the release.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Patch\">\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/patch-b3bbfc3b/_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/patch-b3bbfc3b/_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/patch-b3bbfc3b/_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/patch-b3bbfc3b/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Test a release on your PC - Patch\">\u003cmeta data-mint-head property=\"og:description\" content=\"Tests a private draft, or a release that\u0026#x27;s being tested, of a browser game or a mod Patch installs. A draft\u0026#x27;s files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you\u0026#x27;re starting it. Starting a test cancels any open one of the release.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Patch\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://patch-b3bbfc3b.mintlify.app/_mintlify/api/og/v2?division=Review\u0026amp;title=Test+a+release+on+your+PC\u0026amp;description=Tests+a+private+draft%2C+or+a+release+that%27s+being+tested%2C+of+a+browser+game+or+a+mod+Patch+installs.+A+draft%27s+files+are+checked+first+%28files_failed%2C+with+the+fi\u0026amp;theme=0617332694ee0059ee495bfd\u0026amp;signature=27df3c080642c6b75c6ac276dbafca935c31c3f1d7809a1528c7995ba66ebfb4\">\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=\"Test a release on your PC - Patch\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Tests a private draft, or a release that\u0026#x27;s being tested, of a browser game or a mod Patch installs. A draft\u0026#x27;s files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you\u0026#x27;re starting it. Starting a test cancels any open one of the release.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://patch-b3bbfc3b.mintlify.app/_mintlify/api/og/v2?division=Review\u0026amp;title=Test+a+release+on+your+PC\u0026amp;description=Tests+a+private+draft%2C+or+a+release+that%27s+being+tested%2C+of+a+browser+game+or+a+mod+Patch+installs.+A+draft%27s+files+are+checked+first+%28files_failed%2C+with+the+fi\u0026amp;theme=0617332694ee0059ee495bfd\u0026amp;signature=27df3c080642c6b75c6ac276dbafca935c31c3f1d7809a1528c7995ba66ebfb4\">\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/patch-b3bbfc3b/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Patch\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#171717\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc\">\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/test-a-release-on-your-pc.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.patch.gg/#organization\",\"name\":\"Patch\",\"url\":\"https://docs.patch.gg\"},{\"@type\":\"WebSite\",\"@id\":\"https://docs.patch.gg#website\",\"name\":\"Patch\",\"url\":\"https://docs.patch.gg\",\"publisher\":{\"@id\":\"https://docs.patch.gg/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc#webpage\",\"url\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc\",\"name\":\"Test a release on your PC\",\"description\":\"Tests a private draft, or a release that's being tested, of a browser game or a mod Patch installs. A draft's files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you're starting it. Starting a test cancels any open one of the release.\",\"dateModified\":\"2026-10-31T22:45:23.924Z\",\"isPartOf\":{\"@id\":\"https://docs.patch.gg#website\"},\"breadcrumb\":{\"@id\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.patch.gg/api-reference/meta/whether-the-api-and-its-database-are-up\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Review\",\"item\":\"https://docs.patch.gg/api-reference/review/where-a-release-is-in-its-review:-status-checks-findings-and-test\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Test a release on your PC\",\"item\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc#apireference\",\"headline\":\"Test a release on your PC\",\"name\":\"Test a release on your PC\",\"description\":\"Tests a private draft, or a release that's being tested, of a browser game or a mod Patch installs. A draft's files are checked first (files_failed, with the findings, rejects it). Patch Desktop on your PC takes the test on, plays the release as players get it and records it; a test asked for from a chat in Patch Desktop starts there at once. Then look at the footage and send your review. Tell the person you're starting it. Starting a test cancels any open one of the release.\",\"url\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc\",\"mainEntityOfPage\":{\"@id\":\"https://docs.patch.gg/api-reference/review/test-a-release-on-your-pc#webpage\"},\"dateModified\":\"2026-10-31T22:45:23.924Z\",\"publisher\":{\"@id\":\"https://docs.patch.gg/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.patch.gg#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Patch\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Patch","nav":{"global":null,"tabs":[{"tab":"Docs","pages":[{"title":"Docs","href":""}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"API overview","href":"/api-reference/introduction"}]},{"group":"Endpoints","pages":[{"group":"Meta","pages":[{"title":"Whether the API and its database are up","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /health","href":"/api-reference/meta/whether-the-api-and-its-database-are-up"}]},{"group":"Account","pages":[{"title":"The signed-in user, their username and orgs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me","href":"/api-reference/account/the-signed-in-user-their-username-and-orgs"},{"title":"Change your display name, or give your birthday","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /me","href":"/api-reference/account/change-your-display-name-or-give-your-birthday"},{"title":"Choose or change your username","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /me/username","href":"/api-reference/account/choose-or-change-your-username"},{"title":"Whether a username or org name is free","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /names/{name}","href":"/api-reference/account/whether-a-username-or-org-name-is-free"},{"title":"Your API keys, newest first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /tokens","href":"/api-reference/account/your-api-keys-newest-first"},{"title":"Create an API key for an agent or CI","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tokens","href":"/api-reference/account/create-an-api-key-for-an-agent-or-ci"},{"title":"Revoke an API key","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /tokens/{id}","href":"/api-reference/account/revoke-an-api-key"},{"title":"Make an uploaded file your picture","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /me/picture","href":"/api-reference/account/make-an-uploaded-file-your-picture"},{"title":"Start changing your picture, and get where to upload it","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/picture","href":"/api-reference/account/start-changing-your-picture-and-get-where-to-upload-it"},{"title":"Remove your picture, and go back to your figure","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /me/picture","href":"/api-reference/account/remove-your-picture-and-go-back-to-your-figure"},{"title":"Your projects, drafts included, newest first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/projects","href":"/api-reference/account/your-projects-drafts-included-newest-first"}]},{"group":"Host games","pages":[{"title":"Search the games mods are made for, by name","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /host-games","href":"/api-reference/host-games/search-the-games-mods-are-made-for-by-name"},{"title":"Find the host game for a store id the desktop app detected","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /host-games/lookup","href":"/api-reference/host-games/find-the-host-game-for-a-store-id-the-desktop-app-detected"},{"title":"Find the host games for many store ids at once","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /host-games/lookup","href":"/api-reference/host-games/find-the-host-games-for-many-store-ids-at-once"},{"title":"A host game with its store ids and known builds","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /host-games/{slug}","href":"/api-reference/host-games/a-host-game-with-its-store-ids-and-known-builds"}]},{"group":"Projects","pages":[{"title":"The categories, with how many public projects are in each","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /categories","href":"/api-reference/projects/the-categories-with-how-many-public-projects-are-in-each"},{"title":"Browse public projects, newest first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects","href":"/api-reference/projects/browse-public-projects-newest-first"},{"title":"Create a project","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects","href":"/api-reference/projects/create-a-project"},{"title":"A project with its host games and latest public release","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}","href":"/api-reference/projects/a-project-with-its-host-games-and-latest-public-release"},{"title":"Edit a project's listing and source settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /projects/{owner}/{slug}","href":"/api-reference/projects/edit-a-projects-listing-and-source-settings"},{"title":"Staff picks, in order","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /featured","href":"/api-reference/projects/staff-picks-in-order"}]},{"group":"Releases","pages":[{"title":"Releases you can see, newest first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/releases","href":"/api-reference/releases/releases-you-can-see-newest-first"},{"title":"Create a draft release and get upload targets","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/releases","href":"/api-reference/releases/create-a-draft-release-and-get-upload-targets"},{"title":"A release with its recipe, files and requirements","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/releases/{version}","href":"/api-reference/releases/a-release-with-its-recipe-files-and-requirements"},{"title":"Publish a release, once the person says it's ready","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/releases/{version}/submit","href":"/api-reference/releases/publish-a-release-once-the-person-says-its-ready"},{"title":"Short-lived download links for every file","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/releases/{version}/download","href":"/api-reference/releases/short-lived-download-links-for-every-file"},{"title":"Finish a multipart upload","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /uploads/{id}/complete","href":"/api-reference/releases/finish-a-multipart-upload"},{"title":"Fetch a public GitHub release's files, to make a release from them","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /imports/github","href":"/api-reference/releases/fetch-a-public-github-releases-files-to-make-a-release-from-them"},{"title":"The GitHub repository a project picks up releases from","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/github","href":"/api-reference/releases/the-github-repository-a-project-picks-up-releases-from"},{"title":"Pick up a GitHub repository's new releases by themselves","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /projects/{owner}/{slug}/github","href":"/api-reference/releases/pick-up-a-github-repositorys-new-releases-by-themselves"},{"title":"Stop picking up a GitHub repository's releases","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /projects/{owner}/{slug}/github","href":"/api-reference/releases/stop-picking-up-a-github-repositorys-releases"},{"title":"Check now: pick up the repository's latest release if it's new","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/github/check","href":"/api-reference/releases/check-now:-pick-up-the-repositorys-latest-release-if-its-new"},{"title":"Check a recipe, and optionally the files it goes with","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /recipes/validate","href":"/api-reference/releases/check-a-recipe-and-optionally-the-files-it-goes-with"}]},{"group":"Media","pages":[{"title":"A project's cover, screenshots and clips, in order","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/media","href":"/api-reference/media/a-projects-cover-screenshots-and-clips-in-order"},{"title":"Add a cover, screenshot or clip, and get where to upload it","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/media","href":"/api-reference/media/add-a-cover-screenshot-or-clip-and-get-where-to-upload-it"},{"title":"Confirm an upload, making the media ready","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/media/{id}/complete","href":"/api-reference/media/confirm-an-upload-making-the-media-ready"},{"title":"Reorder a project's media","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /projects/{owner}/{slug}/media/order","href":"/api-reference/media/reorder-a-projects-media"},{"title":"Remove media from the listing","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /projects/{owner}/{slug}/media/{id}","href":"/api-reference/media/remove-media-from-the-listing"}]},{"group":"Library","pages":[{"title":"Your library: browser games you've played or added","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/library","href":"/api-reference/library/your-library:-browser-games-youve-played-or-added"},{"title":"Add a game to your library, or note that you played it","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/library","href":"/api-reference/library/add-a-game-to-your-library-or-note-that-you-played-it"},{"title":"Remove a game from your library","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /me/library/{owner}/{slug}","href":"/api-reference/library/remove-a-game-from-your-library"}]},{"group":"People","pages":[{"title":"A person's profile: counts, and how you know them","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /people/{username}","href":"/api-reference/people/a-persons-profile:-counts-and-how-you-know-them"},{"title":"Follow someone","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /people/{username}/follow","href":"/api-reference/people/follow-someone"},{"title":"Stop following someone","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /people/{username}/follow","href":"/api-reference/people/stop-following-someone"},{"title":"The people you follow, most recently followed first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/following","href":"/api-reference/people/the-people-you-follow-most-recently-followed-first"},{"title":"Your friends, and the friend requests waiting on either side","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/friends","href":"/api-reference/people/your-friends-and-the-friend-requests-waiting-on-either-side"},{"title":"Ask someone to be friends, or accept their request","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/friends","href":"/api-reference/people/ask-someone-to-be-friends-or-accept-their-request"},{"title":"Unfriend, decline their request or cancel yours","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /me/friends/{username}","href":"/api-reference/people/unfriend-decline-their-request-or-cancel-yours"},{"title":"Friend requests, accepted requests and new followers, newest first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/notifications","href":"/api-reference/people/friend-requests-accepted-requests-and-new-followers-newest-first"}]},{"group":"Chats","pages":[{"title":"Your chat starts, newest first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/chat-starts","href":"/api-reference/chats/your-chat-starts-newest-first"},{"title":"Record that you started a chat","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/chat-starts","href":"/api-reference/chats/record-that-you-started-a-chat"},{"title":"Link one of your chat starts to the project it became","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /me/chat-starts/{id}","href":"/api-reference/chats/link-one-of-your-chat-starts-to-the-project-it-became"},{"title":"The games people mash up, most started first","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /mashups","href":"/api-reference/chats/the-games-people-mash-up-most-started-first"},{"title":"Keep a chat turn's agent trace","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/agent-traces","href":"/api-reference/chats/keep-a-chat-turns-agent-trace"}]},{"group":"Play","pages":[{"title":"Start a play session","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/play-sessions","href":"/api-reference/play/start-a-play-session"},{"title":"Record a minute of a play session","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/play-sessions/{id}/heartbeat","href":"/api-reference/play/record-a-minute-of-a-play-session"},{"title":"End a play session","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /me/play-sessions/{id}/end","href":"/api-reference/play/end-a-play-session"}]},{"group":"Insights","pages":[{"title":"A project's insights","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/insights","href":"/api-reference/insights/a-projects-insights"},{"title":"The key numbers of your projects","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/insights","href":"/api-reference/insights/the-key-numbers-of-your-projects"}]},{"group":"Review","pages":[{"title":"Where a release is in its review: status, checks, findings and test","description":"With wait, it holds the answer while Patch is checking, testing or reviewing the release, until something changes (up to 50 seconds), so an agent doesn't have to ask again and again.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /projects/{owner}/{slug}/releases/{version}/review","href":"/api-reference/review/where-a-release-is-in-its-review:-status-checks-findings-and-test"},{"title":"Test a release on your PC","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /projects/{owner}/{slug}/releases/{version}/tests","href":"/api-reference/review/test-a-release-on-your-pc"},{"title":"A test: its state, each run's checks, and its review","description":"With wait, it holds the answer while the test is waiting for Patch Desktop or running, until something changes (up to 50 seconds).","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /tests/{id}","href":"/api-reference/review/a-test:-its-state-each-runs-checks-and-its-review"},{"title":"A test's contact sheets: a frame every 2 seconds, each labelled with its run time","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /tests/{id}/footage","href":"/api-reference/review/a-tests-contact-sheets:-a-frame-every-2-seconds-each-labelled-with-its-run-time"},{"title":"Send your review of a test's footage","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/review","href":"/api-reference/review/send-your-review-of-a-tests-footage"},{"title":"Cancel a test that hasn't been decided","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/cancel","href":"/api-reference/review/cancel-a-test-that-hasnt-been-decided"},{"title":"Tests waiting for one of your PCs to take them on","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /me/tests","href":"/api-reference/review/tests-waiting-for-one-of-your-pcs-to-take-them-on"},{"title":"Take a test on from this PC, and get what to download and play","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/claim","href":"/api-reference/review/take-a-test-on-from-this-pc-and-get-what-to-download-and-play"},{"title":"Say where a running test is","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/progress","href":"/api-reference/review/say-where-a-running-test-is"},{"title":"Report one run: its checks, the game's own checks and its frames","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/runs","href":"/api-reference/review/report-one-run:-its-checks-the-games-own-checks-and-its-frames"},{"title":"Add a contact sheet of a run, and get where to upload it","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/sheets","href":"/api-reference/review/add-a-contact-sheet-of-a-run-and-get-where-to-upload-it"},{"title":"Hand a test in once its runs and sheets are uploaded, or say it couldn't run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /tests/{id}/finish","href":"/api-reference/review/hand-a-test-in-once-its-runs-and-sheets-are-uploaded-or-say-it-couldnt-run"},{"title":"The cloud reviewer's verdict (Patch's reviewer only)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /cloud-reviews/{id}","href":"/api-reference/review/the-cloud-reviewers-verdict-patchs-reviewer-only"}]},{"group":"Assets","pages":[{"title":"Search the asset library","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /assets/search","href":"/api-reference/assets/search-the-asset-library"},{"title":"Fields, values, counts and ranges for a query","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /assets/facets","href":"/api-reference/assets/fields-values-counts-and-ranges-for-a-query"},{"title":"Plan adding assets to a project (the assets_add dry run)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /assets/plan","href":"/api-reference/assets/plan-adding-assets-to-a-project-the-assets_add-dry-run"},{"title":"A license's name, URL, duties and full text","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /assets/licenses/{spdx}","href":"/api-reference/assets/a-licenses-name-url-duties-and-full-text"},{"title":"The asset library's health: counts only","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /assets/status","href":"/api-reference/assets/the-asset-librarys-health:-counts-only"},{"title":"One asset: variants with file URLs, capabilities per runtime, license and credit","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /assets/{id}","href":"/api-reference/assets/one-asset:-variants-with-file-urls-capabilities-per-runtime-license-and-credit"}]}]}]}]},"basePath":"","title":"Test a release on your PC - Patch","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}