Lets an advanced game server take control of its match’s backfill. Set accepting to open or close backfill joiners, and optionally replace the skillBand that gates joiners.
This is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds).
Monotonically increasing roster version after the update.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Documentation - PlayFlow Cloud","colors":{"primary":"#2563EB","light":"#60A5FA","dark":"#1E3A8A"},"logo":{"light":"https://mintcdn.com/playflow/eqeqAmqAMsOYKFZn/logo/svgs/3.svg?fit=max\u0026auto=format\u0026n=eqeqAmqAMsOYKFZn\u0026q=85\u0026s=ec6b551d72d9a0550eceaf8372781505","dark":"https://mintcdn.com/playflow/eqeqAmqAMsOYKFZn/logo/svgs/4.svg?fit=max\u0026auto=format\u0026n=eqeqAmqAMsOYKFZn\u0026q=85\u0026s=56ed179b4ec9ff9a3b8c659b610385e1"},"favicon":"https://mintcdn.com/playflow/eqeqAmqAMsOYKFZn/favicon.svg?fit=max\u0026auto=format\u0026n=eqeqAmqAMsOYKFZn\u0026q=85\u0026s=4f01ae4525de4b30fd0fef06c5145d06","navbar":{"links":[{"href":"https://discord.gg/P5w45Vx5Q8","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.playflowcloud.com"}},"footer":{"socials":{"x":"https://x.com/PlayFlowCloud","github":"https://github.com/PlayFlowCloud","linkedin":"https://www.linkedin.com/company/84953462"}},"seo":{"metatags":{"description":"Official documentation for PlayFlow Cloud. Learn to build, deploy, and scale multiplayer games with our tools for server hosting, matchmaking, and lobbies.","keywords":"PlayFlow, PlayFlow Cloud, game development, multiplayer, Unity, Unreal Engine, Godot, game servers, server hosting, matchmaking, lobbies, WebGL, game backend, documentation","author":"PlayFlow Cloud","robots":"index, follow","googlebot":"index, follow","language":"en","copyright":"Copyright 2025 PlayFlow Cloud","distribution":"global","coverage":"Worldwide","category":"Game Development","og:title":"PlayFlow Cloud Documentation","og:description":"Official documentation for PlayFlow Cloud. Learn to build, deploy, and scale multiplayer games with our tools for server hosting, matchmaking, and lobbies.","og:type":"website","og:site_name":"PlayFlow Cloud","og:url":"https://docs.playflowcloud.com","og:locale":"en_US","twitter:card":"summary_large_image","twitter:site":"@PlayFlowCloud","twitter:creator":"@PlayFlowCloud","twitter:title":"PlayFlow Cloud Documentation","twitter:description":"Official documentation for PlayFlow Cloud. Learn to build, deploy, and scale multiplayer games with our tools for server hosting, matchmaking, and lobbies."},"indexing":"all"},"icons":{"library":"lucide"},"integrations":{"posthog":{"apiKey":"phc_fBrC62lJ5zi3r6ItRQsm4NcKIJOvc2e73YZtSaTpYxy"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/P5w45Vx5Q8"},{"anchor":"Blog","icon":"newspaper","href":"https://playflowcloud.com/"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"playflow","hasAudioNarration":false,"actualSubdomain":"playflow","customDomains":["docs.playflowcloud.com"],"gitSource":{"type":"github","owner":"playflowcloud","repo":"playflow-core","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a551e6696ba02c71ec13582","collectionId":"3524da5f-fd4d-49f3-a07a-bea7ab61d2ef","schemaVersion":"v3"},"feedback":{"thumbs":false},"entitlements":{},"buildId":"6a551e6696ba02c71ec13582:success","clientVersion":"0.0.3965","searchFilterCounts":[{"language":"default","tag":"Documentation","count":37},{"language":"default","tag":"API Reference","count":36},{"language":"default","tag":"Endpoints","count":35},{"language":"default","tag":"Lobbies","count":18},{"language":"default","tag":"Lobbies \u0026 Matchmaking","count":12},{"language":"default","tag":"Getting Started","count":10},{"language":"default","tag":"Guides","count":8},{"language":"default","tag":"Servers","count":8},{"language":"default","tag":"Quick Start Guides","count":7},{"language":"default","tag":"Unity SDK","count":6}]},"assistantConfig":{},"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":"editor-v7-file-tree","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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"editor-agent-model-picker","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":"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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/servers/override-backfill-state-server-authoritative","slug":"/api-reference/servers/override-backfill-state-server-authoritative","pageMetadata":{"title":"Override backfill state (server-authoritative)","description":"Lets an advanced game server take control of its match's backfill. Set `accepting` to open or close backfill joiners, and optionally replace the `skillBand` that gates joiners.\n\nThis is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds).\n\nRequires a server API key (`pf_...`).","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc patch /api/v3/servers/{instance_id}/backfill","href":"/api-reference/servers/override-backfill-state-server-authoritative","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, 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(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Lets an advanced game server take control of its match’s backfill. Set \", _jsx(_components.code, {\n children: \"accepting\"\n }), \" to open or close backfill joiners, and optionally replace the \", _jsx(_components.code, {\n children: \"skillBand\"\n }), \" that gates joiners.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"This is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds).\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Requires a server API key (\", _jsx(_components.code, {\n children: \"pf_...\"\n }), \").\"]\n })]\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":"Override backfill state (server-authoritative)","description":"Lets an advanced game server take control of its match's backfill. Set `accepting` to open or close backfill joiners, and optionally replace the `skillBand` that gates joiners.\n\nThis is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds).\n\nRequires a server API key (`pf_...`).","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc patch /api/v3/servers/{instance_id}/backfill","href":"/api-reference/servers/override-backfill-state-server-authoritative","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"updateServerBackfill","tags":["Servers"],"summary":"Override backfill state (server-authoritative)","description":"Lets an advanced game server take control of its match's backfill. Set `accepting` to open or close backfill joiners, and optionally replace the `skillBand` that gates joiners.\n\nThis is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds).\n\nRequires a server API key (`pf_...`).","parameters":["df47d0c2-199f-4e3c-bb6a-7e945df6e62e"],"requestBody":"b664c223-2c71-4e75-a4c4-bfb153c818c3","responses":{"200":"f8700341-441a-4704-95fc-6539bf2a2bd0","404":"3939189c-e7a1-4e3d-8aa6-e66ba8e3d428"},"method":"patch","type":"path","servers":["10dc6c24-ec8f-48c6-85d3-b4e04b596923"],"security":["0648c24c-6553-4c47-aec3-e48fcddd9e9d"],"path":"/api/v3/servers/{instance_id}/backfill","baseUrlOptions":["https://api.computeflow.cloud"],"title":"Override backfill state (server-authoritative)","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"df47d0c2-199f-4e3c-bb6a-7e945df6e62e":{"schema":{"type":"string","description":"Server instance ID (the game server's own INSTANCE_ID).","isRequired":true,"uniqueKey":"","typeLabel":"string"},"required":true,"description":"Server instance ID (the game server's own INSTANCE_ID).","name":"instance_id","in":"path"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"accepting":{"type":"boolean","description":"Whether the match should accept backfill joiners. Set false to close backfill (server-authoritative override).","isRequired":true,"uniqueKey":"accepting","typeLabel":"boolean"},"skillBand":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","description":"Player-state field the skill band gates on.","isRequired":true,"uniqueKey":"skillBand.oneOf.0.field","typeLabel":"string"},"min":{"type":"number","description":"Inclusive lower bound of the admissible skill band.","isRequired":true,"uniqueKey":"skillBand.oneOf.0.min","typeLabel":"number"},"max":{"type":"number","description":"Inclusive upper bound of the admissible skill band.","isRequired":true,"uniqueKey":"skillBand.oneOf.0.max","typeLabel":"number"}},"required":["field","min","max"],"description":"Replace the match's skill band for joiners. Omit to leave the current band unchanged; null is treated as no change.","uniqueKey":"skillBand.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"field":{"type":"string","description":"Player-state field the skill band gates on."},"min":{"type":"number","description":"Inclusive lower bound of the admissible skill band."},"max":{"type":"number","description":"Inclusive upper bound of the admissible skill band."}},"required":["field","min","max"],"description":"Replace the match's skill band for joiners. Omit to leave the current band unchanged; null is treated as no change.","uniqueKey":"skillBand.oneOf.1","typeLabel":"null"}],"uniqueKey":"skillBand","typeLabel":"object | null"}},"required":["accepting"],"description":"Server-authoritative override of a match's backfill state.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"accepting":true,"skillBand":{"field":"\u003cstring>","min":123,"max":123}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"f8700341-441a-4704-95fc-6539bf2a2bd0":{"description":"Backfill state updated. The roster mirror and roster_version reflect the change.","content":{"application/json":{"schema":{"type":"object","properties":{"match_id":{"type":"string","description":"Identifier of the match that was updated.","isRequired":true,"uniqueKey":"match_id","typeLabel":"string"},"instance_id":{"oneOf":[{"type":"string","description":"Server instance backing this match.","isRequired":true,"uniqueKey":"instance_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Server instance backing this match.","isRequired":true,"uniqueKey":"instance_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"instance_id","typeLabel":"string | null"},"status":{"type":"string","enum":["in_game","locked","completed"],"description":"Match lifecycle status after the update.","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"backfill_open":{"type":"boolean","description":"Whether the match is now accepting backfill joiners.","isRequired":true,"uniqueKey":"backfill_open","typeLabel":"boolean"},"backfill_deadline":{"oneOf":[{"type":"string","format":"date-time","description":"ISO 8601 timestamp after which backfill closes. Null if no window is active.","isRequired":true,"uniqueKey":"backfill_deadline.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"ISO 8601 timestamp after which backfill closes. Null if no window is active.","isRequired":true,"uniqueKey":"backfill_deadline.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"backfill_deadline","typeLabel":"string\u003cdate-time> | null"},"skill_band":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","isRequired":true,"uniqueKey":"skill_band.oneOf.0.field","typeLabel":"string"},"min":{"type":"number","isRequired":true,"uniqueKey":"skill_band.oneOf.0.min","typeLabel":"number"},"max":{"type":"number","isRequired":true,"uniqueKey":"skill_band.oneOf.0.max","typeLabel":"number"}},"required":["field","min","max"],"description":"Current skill band applied to joiners, or null if none.","isRequired":true,"uniqueKey":"skill_band.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"field":{"type":"string"},"min":{"type":"number"},"max":{"type":"number"}},"required":["field","min","max"],"description":"Current skill band applied to joiners, or null if none.","isRequired":true,"uniqueKey":"skill_band.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"skill_band","typeLabel":"object | null"},"roster_version":{"type":"integer","description":"Monotonically increasing roster version after the update.","isRequired":true,"uniqueKey":"roster_version","typeLabel":"integer"}},"required":["match_id","instance_id","status","backfill_open","backfill_deadline","skill_band","roster_version"],"description":"Result of a server-authoritative backfill state change.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"match_id":"\u003cstring>","instance_id":"\u003cstring>","status":"in_game","backfill_open":true,"backfill_deadline":"2023-11-07T05:31:56Z","skill_band":{"field":"\u003cstring>","min":123,"max":123},"roster_version":123}}},"exampleType":"generated"}},"exampleType":"generated"},"3939189c-e7a1-4e3d-8aa6-e66ba8e3d428":{"description":"No active match found for this instance_id in your project.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Human-readable error message describing what went wrong.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"status":{"type":"number","description":"HTTP status code (matches the response status code).","isRequired":true,"uniqueKey":"status","typeLabel":"number"},"detail":{"type":"string","description":"Additional error context. May contain the same text as error or more specific technical details.","uniqueKey":"detail","typeLabel":"string"}},"required":["error","status"],"description":"Standard error response returned by all API endpoints on failure.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","status":123,"detail":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"0648c24c-6553-4c47-aec3-e48fcddd9e9d":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"api-key","scopes":[]}}},"servers":{"10dc6c24-ec8f-48c6-85d3-b4e04b596923":{"url":"https://api.computeflow.cloud"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"api-key","scopes":[]},"schema":{"title":"api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"https://api.computeflow.cloud/api/doc"},"subdomain":"playflow","siteName":"Documentation - PlayFlow Cloud","title":"PlayFlow Cloud Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-13T17:20:49.056Z","originalFileLocation":"api-reference/servers/override-backfill-state-server-authoritative.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=\"Lets an advanced game server take control of its match\u0026#x27;s backfill. Set accepting to open or close backfill joiners, and optionally replace the skillBand that gates joiners. This is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds). Requires a server API key (pf_...).\">\u003cmeta data-mint-head name=\"keywords\" content=\"PlayFlow, PlayFlow Cloud, game development, multiplayer, Unity, Unreal Engine, Godot, game servers, server hosting, matchmaking, lobbies, WebGL, game backend, documentation\">\u003cmeta data-mint-head name=\"application-name\" content=\"Documentation - PlayFlow Cloud\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003cmeta data-mint-head name=\"robots\" content=\"index, follow\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"PlayFlow Cloud Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Official documentation for PlayFlow Cloud. Learn to build, deploy, and scale multiplayer games with our tools for server hosting, matchmaking, and lobbies.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"PlayFlow Cloud\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://playflow.mintlify.app/_mintlify/api/og/v2?division=Servers\u0026amp;title=Override+backfill+state+%28server-authoritative%29\u0026amp;description=Lets+an+advanced+game+server+take+control+of+its+match%27s+backfill.+Set+%60accepting%60+to+open+or+close+backfill+joiners%2C+and+optionally+replace+the+%60skillBand%60+tha\u0026amp;theme=efdcb79398ff0a4a395f8bf0\u0026amp;signature=c4c0493babbc24c358acf9e1104c60943cec7163aad90512e1c3b010bec8fae3\">\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=\"PlayFlow Cloud Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Official documentation for PlayFlow Cloud. Learn to build, deploy, and scale multiplayer games with our tools for server hosting, matchmaking, and lobbies.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://playflow.mintlify.app/_mintlify/api/og/v2?division=Servers\u0026amp;title=Override+backfill+state+%28server-authoritative%29\u0026amp;description=Lets+an+advanced+game+server+take+control+of+its+match%27s+backfill.+Set+%60accepting%60+to+open+or+close+backfill+joiners%2C+and+optionally+replace+the+%60skillBand%60+tha\u0026amp;theme=efdcb79398ff0a4a395f8bf0\u0026amp;signature=c4c0493babbc24c358acf9e1104c60943cec7163aad90512e1c3b010bec8fae3\">\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=\"/mintlify-assets/_mintlify/favicons/playflow/bdsieV7iirvG9AV3/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Documentation - PlayFlow Cloud\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2563EB\">\u003cmeta data-mint-head name=\"og:locale\" content=\"en_US\">\u003cmeta data-mint-head name=\"author\" content=\"PlayFlow Cloud\">\u003cmeta data-mint-head name=\"googlebot\" content=\"index, follow\">\u003cmeta data-mint-head name=\"language\" content=\"en\">\u003cmeta data-mint-head name=\"copyright\" content=\"Copyright 2025 PlayFlow Cloud\">\u003cmeta data-mint-head name=\"distribution\" content=\"global\">\u003cmeta data-mint-head name=\"coverage\" content=\"Worldwide\">\u003cmeta data-mint-head name=\"category\" content=\"Game Development\">\u003cmeta data-mint-head name=\"twitter:creator\" content=\"@PlayFlowCloud\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/servers/override-backfill-state-server-authoritative.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.playflowcloud.com/#organization\",\"name\":\"Documentation - PlayFlow Cloud\",\"url\":\"https://docs.playflowcloud.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/playflow/eqeqAmqAMsOYKFZn/logo/svgs/3.svg?fit=max\u0026auto=format\u0026n=eqeqAmqAMsOYKFZn\u0026q=85\u0026s=ec6b551d72d9a0550eceaf8372781505\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.playflowcloud.com#website\",\"name\":\"Documentation - PlayFlow Cloud\",\"url\":\"https://docs.playflowcloud.com\",\"publisher\":{\"@id\":\"https://docs.playflowcloud.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative#webpage\",\"url\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative\",\"name\":\"Override backfill state (server-authoritative)\",\"description\":\"Lets an advanced game server take control of its match's backfill. Set accepting to open or close backfill joiners, and optionally replace the skillBand that gates joiners. This is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds). Requires a server API key (pf_...).\",\"dateModified\":\"2026-07-13T17:20:49.056Z\",\"isPartOf\":{\"@id\":\"https://docs.playflowcloud.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.playflowcloud.com/api-reference/servers/get-the-authoritative-match-roster\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Servers\",\"item\":\"https://docs.playflowcloud.com/api-reference/servers/get-the-authoritative-match-roster\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Override backfill state (server-authoritative)\",\"item\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative#apireference\",\"headline\":\"Override backfill state (server-authoritative)\",\"name\":\"Override backfill state (server-authoritative)\",\"description\":\"Lets an advanced game server take control of its match's backfill. Set accepting to open or close backfill joiners, and optionally replace the skillBand that gates joiners. This is an optional override — the engine manages backfill automatically for modes with backfill enabled. Use this only when the game server has better knowledge of when it can accept joiners (e.g., between rounds). Requires a server API key (pf_...).\",\"url\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative\",\"mainEntityOfPage\":{\"@id\":\"https://docs.playflowcloud.com/api-reference/servers/override-backfill-state-server-authoritative#webpage\"},\"dateModified\":\"2026-07-13T17:20:49.056Z\",\"publisher\":{\"@id\":\"https://docs.playflowcloud.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.playflowcloud.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Documentation - PlayFlow Cloud\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Documentation - PlayFlow Cloud","nav":{"global":{"anchors":[{"anchor":"Community","icon":"discord","href":"https://discord.gg/P5w45Vx5Q8"},{"anchor":"Blog","icon":"newspaper","href":"https://playflowcloud.com/"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","icon":"code","groups":[{"group":"Overview","icon":"book-open","pages":[{"title":"API Introduction","icon":"book-open","href":"/api-reference/introduction"}]},{"group":"Endpoints","icon":"code","pages":[{"group":"Servers","pages":[{"title":"Get the authoritative match roster","description":"Returns the authoritative roster of players admitted to the match backing this server. Game servers call this (with their server API key and their own `INSTANCE_ID`) to know exactly which players to admit — this is the source of truth for admission and fixes reconnect / \"denied by proxy\" edge cases.\n\nThe response includes per-team slots, total `capacity`, `current_players`, backfill state, and a monotonically increasing `roster_version`. Poll `roster_version` cheaply to detect roster changes (e.g., when a backfill joiner is admitted).\n\nOnly available for servers that back a match (created through matchmaking/lobbies).","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/servers/{instance_id}/roster","href":"/api-reference/servers/get-the-authoritative-match-roster"},{"title":"Override backfill state (server-authoritative)","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc patch /api/v3/servers/{instance_id}/backfill","href":"/api-reference/servers/override-backfill-state-server-authoritative"},{"title":"Close backfill (server-authoritative)","description":"Closes backfill for the match backing this server — no further joiners are admitted. Convenience shorthand for `PATCH /{instance_id}/backfill` with `accepting: false`.\n\nRequires a server API key (`pf_...`).","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/servers/{instance_id}/backfill/lock","href":"/api-reference/servers/close-backfill-server-authoritative"},{"title":"List servers","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/servers","href":"/api-reference/servers/list-servers"},{"title":"Start a new server","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/servers/start","href":"/api-reference/servers/start-a-new-server"},{"title":"Get server details","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/servers/{instance_id}","href":"/api-reference/servers/get-server-details"},{"title":"Stop a server","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/servers/{instance_id}","href":"/api-reference/servers/stop-a-server"},{"title":"Update server custom_data","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/servers/{instance_id}/update","href":"/api-reference/servers/update-server-custom_data"},{"title":"Restart a server","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/servers/{instance_id}/restart","href":"/api-reference/servers/restart-a-server"},{"title":"Get server runtime logs","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/servers/{instance_id}/logs","href":"/api-reference/servers/get-server-runtime-logs"},{"title":"Get server resource metrics","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/servers/{instance_id}/metrics","href":"/api-reference/servers/get-server-resource-metrics"},{"title":"Get server log-volume histogram","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/servers/{instance_id}/log-histogram","href":"/api-reference/servers/get-server-log-volume-histogram"}]},{"group":"Projects","pages":[{"title":"Get project-wide log-volume histogram","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/projects/log-histogram","href":"/api-reference/projects/get-project-wide-log-volume-histogram"},{"title":"Get project-wide server logs","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/projects/logs","href":"/api-reference/projects/get-project-wide-server-logs"},{"title":"Get project settings","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/projects/settings","href":"/api-reference/projects/get-project-settings"},{"title":"Update project settings","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/projects/settings","href":"/api-reference/projects/update-project-settings"}]},{"group":"Builds","pages":[{"title":"List builds","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/builds","href":"/api-reference/builds/list-builds"},{"title":"Get presigned upload URL","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/builds/upload-url","href":"/api-reference/builds/get-presigned-upload-url"},{"title":"Create build from Docker image","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/builds/docker-image","href":"/api-reference/builds/create-build-from-docker-image"},{"title":"Get build details","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/builds/{build_id}","href":"/api-reference/builds/get-build-details"},{"title":"Delete a build","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/builds/{build_id}","href":"/api-reference/builds/delete-a-build"},{"title":"Get build processing logs","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/builds/{build_id}/logs","href":"/api-reference/builds/get-build-processing-logs"}]},{"group":"Lobbies","pages":[{"title":"Browse lobbies","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/lobbies/{config}","href":"/api-reference/lobbies/browse-lobbies"},{"title":"Create a lobby","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}","href":"/api-reference/lobbies/create-a-lobby"},{"title":"Join a lobby","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}/join","href":"/api-reference/lobbies/join-a-lobby"},{"title":"Get my lobby","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/lobbies/{config}/me","href":"/api-reference/lobbies/get-my-lobby"},{"title":"Leave a lobby","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/lobbies/{config}/me","href":"/api-reference/lobbies/leave-a-lobby"},{"title":"Update my player state","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc patch /api/v3/lobbies/{config}/me","href":"/api-reference/lobbies/update-my-player-state"},{"title":"Update lobby settings","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc patch /api/v3/lobbies/{config}/me/settings","href":"/api-reference/lobbies/update-lobby-settings"},{"title":"Kick a player","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/lobbies/{config}/me/players/{playerId}","href":"/api-reference/lobbies/kick-a-player"},{"title":"Start the game","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}/me/start","href":"/api-reference/lobbies/start-the-game"},{"title":"Start matchmaking","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}/me/matchmaking","href":"/api-reference/lobbies/start-matchmaking"},{"title":"Cancel matchmaking","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/lobbies/{config}/me/matchmaking","href":"/api-reference/lobbies/cancel-matchmaking"},{"title":"End the current match","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}/me/end-match","href":"/api-reference/lobbies/end-the-current-match"},{"title":"Confirm a found match","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}/me/confirm-match","href":"/api-reference/lobbies/confirm-a-found-match"},{"title":"Decline a found match","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/lobbies/{config}/me/confirm-match","href":"/api-reference/lobbies/decline-a-found-match"},{"title":"Send a player heartbeat","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc post /api/v3/lobbies/{config}/me/heartbeat","href":"/api-reference/lobbies/send-a-player-heartbeat"},{"title":"Subscribe to lobby events (SSE)","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/lobbies/{config}/me/events","href":"/api-reference/lobbies/subscribe-to-lobby-events-sse"},{"title":"Get lobby by ID","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc get /api/v3/lobbies/{config}/{id}","href":"/api-reference/lobbies/get-lobby-by-id"},{"title":"Delete a lobby by ID (admin)","deprecated":null,"version":null,"openapi":"https://api.computeflow.cloud/api/doc delete /api/v3/lobbies/{config}/{id}","href":"/api-reference/lobbies/delete-a-lobby-by-id-admin"}]}]}]}]},"title":"PlayFlow Cloud Documentation","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Bbp7I60D.js","utils-C3RIvJha.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DqD-vLt8.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B31Loprg.js","snippetPresets-DKpk-b8t.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Cj65AhOR.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BXtn5gcC.js","shallow-RY2b03Cp.js","getApiPlaygroundDisplay-B0jeiPk3.js","CodeSnippet-CYgBjjwn.js","CodeSnippets-DOngDrYB.js","Page-n7I5XbKb.js","getPastedJson-DRQbJx-T.js","icon-CQiQCicY.js","MethodPill-BKTLdNtu.js","DuplicateIcon-B9jpAdat.js","createIcon-DCddRrXv.js","DynamicMarkdown-a8hUKrw6.js","SectionHeading-eECVV2eH.js","axios-vUo_bRtp.js","Markdown--GF7ZIpf.js","clsx-DZLdJUrt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-2LoAhjKH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Zwc0ZncM.js"]}