Warms byte ranges of files on a disk into Archil’s storage cache, so
later reads from any client, serverless exec, or sandbox are served
without going to the backing object storage.
Each range names one file and an optional offset and length; a
file may appear in several ranges. Paths are relative to the disk
root. Ranges must name regular files: a directory is found but warms
nothing, so list a directory’s files to warm its contents.
The response reports one result per range, in request order, and may
return before the data is fully fetched. A path that does not exist
reports found: false. A failed range does not fail the others;
retry the ranges whose error is retry. If the disk is not mounted
anywhere, prefetching loads it.
Warmed data becomes active data and is metered like data your clients
read.
{"docsConfig":{"theme":"sequoia","$schema":"https://mintlify.com/docs.json","name":"Archil","colors":{"primary":"#CA5550","light":"#CA5550","dark":"#CA5550"},"logo":{"light":"https://mintcdn.com/regattastorage/ZgodyIZMQ_rX_qud/logo/archil-black-fullbleed.svg?fit=max\u0026auto=format\u0026n=ZgodyIZMQ_rX_qud\u0026q=85\u0026s=adba0f4983e37336b24452e3ba977724","dark":"https://mintcdn.com/regattastorage/ZgodyIZMQ_rX_qud/logo/archil-white-fullbleed.svg?fit=max\u0026auto=format\u0026n=ZgodyIZMQ_rX_qud\u0026q=85\u0026s=3ba1c87384e113275374ebfbf55242a6","href":"https://archil.com"},"favicon":"https://mintcdn.com/regattastorage/S4_bUvKoVTjJKy3L/favicon.svg?fit=max\u0026auto=format\u0026n=S4_bUvKoVTjJKy3L\u0026q=85\u0026s=e2efc998ca3afaa27ef4036837d37349","background":{"color":{"dark":"#101011"}},"navbar":{"links":[{"href":"https://archil.com/pricing","label":"Pricing"},{"href":"mailto:support@archil.com","label":"Support"}],"primary":{"type":"button","label":"Console","href":"https://console.archil.com"}},"footer":{"socials":{"x":"https://x.com/archildata","linkedin":"https://linkedin.com/company/archil","discord":"https://discord.gg/KbXgvpWw7K"}},"seo":{"metatags":{"msvalidate.01":"EF0D87C55567AF7517BCE660F6318971"}},"integrations":{"posthog":{"apiKey":"phc_f4bRADnjXK5UboJFFUq9DIYClzzCl11Z4sdR5EM2UHE"}},"contextual":{"options":["copy","view","assistant","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"regattastorage","hasAudioNarration":false,"actualSubdomain":"regattastorage","customDomains":["docs.archil.com"],"gitSource":{"type":"github","owner":"archil-data","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aecba3fd226238b46021b14","collectionId":"859c668e-fa35-4ba2-ae83-e967da28d741","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aecba3fd226238b46021b14"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aee1e98df6a66dd11193b3e","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"Documentation","count":55},{"language":"default","tag":"API Reference","count":40},{"language":"default","tag":"Guides","count":24},{"language":"default","tag":"Reference","count":24},{"language":"default","tag":"Sandboxes","count":22},{"language":"default","tag":"Use Archil on other platforms","count":10},{"language":"default","tag":"Details","count":8},{"language":"default","tag":"Agents","count":7},{"language":"default","tag":"Disks","count":6},{"language":"default","tag":"Compute","count":6}]},"assistantConfig":{"deflection":{"enabled":true,"email":"support@archil.com","showHelpButton":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":"rbac-expansion","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":"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":"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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":".dark #navbar div.dark\\:bg-gray-900{background-color:#1a1a1c}"}],"page":{"pagePath":"api-reference/disks/prefetch-disk","slug":"/api-reference/disks/prefetch-disk","pageMetadata":{"title":"Prefetch File Ranges","openapi":"POST /api/disks/{id}/prefetch","description":"Warms byte ranges of files on a disk into Archil's storage cache, so\nlater reads from any client, serverless exec, or sandbox are served\nwithout going to the backing object storage.\n\nEach range names one file and an optional `offset` and `length`; a\nfile may appear in several ranges. Paths are relative to the disk\nroot. Ranges must name regular files: a directory is found but warms\nnothing, so list a directory's files to warm its contents.\n\nThe response reports one result per range, in request order, and may\nreturn before the data is fully fetched. A path that does not exist\nreports `found: false`. A failed range does not fail the others;\nretry the ranges whose `error` is `retry`. If the disk is not mounted\nanywhere, prefetching loads it.\n\nWarmed data becomes active data and is metered like data your clients\nread.\n","href":"/api-reference/disks/prefetch-disk"},"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: [_jsx(_components.p, {\n children: \"Warms byte ranges of files on a disk into Archil’s storage cache, so\\nlater reads from any client, serverless exec, or sandbox are served\\nwithout going to the backing object storage.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Each range names one file and an optional \", _jsx(_components.code, {\n children: \"offset\"\n }), \" and \", _jsx(_components.code, {\n children: \"length\"\n }), \"; a\\nfile may appear in several ranges. Paths are relative to the disk\\nroot. Ranges must name regular files: a directory is found but warms\\nnothing, so list a directory’s files to warm its contents.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"The response reports one result per range, in request order, and may\\nreturn before the data is fully fetched. A path that does not exist\\nreports \", _jsx(_components.code, {\n children: \"found: false\"\n }), \". A failed range does not fail the others;\\nretry the ranges whose \", _jsx(_components.code, {\n children: \"error\"\n }), \" is \", _jsx(_components.code, {\n children: \"retry\"\n }), \". If the disk is not mounted\\nanywhere, prefetching loads it.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Warmed data becomes active data and is metered like data your clients\\nread.\"\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":"Prefetch File Ranges","openapi":"POST /api/disks/{id}/prefetch","description":"Warms byte ranges of files on a disk into Archil's storage cache, so\nlater reads from any client, serverless exec, or sandbox are served\nwithout going to the backing object storage.\n\nEach range names one file and an optional `offset` and `length`; a\nfile may appear in several ranges. Paths are relative to the disk\nroot. Ranges must name regular files: a directory is found but warms\nnothing, so list a directory's files to warm its contents.\n\nThe response reports one result per range, in request order, and may\nreturn before the data is fully fetched. A path that does not exist\nreports `found: false`. A failed range does not fail the others;\nretry the ranges whose `error` is `retry`. If the disk is not mounted\nanywhere, prefetching loads it.\n\nWarmed data becomes active data and is metered like data your clients\nread.\n","href":"/api-reference/disks/prefetch-disk"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/regattastorage/7f4d365ae8e61637/rb2b.js"],"openApiReferenceData":{"operation":{"operationId":"prefetchDisk","summary":"Prefetch file ranges","description":"Warms byte ranges of files on a disk into Archil's storage cache, so\nlater reads from any client, serverless exec, or sandbox are served\nwithout going to the backing object storage.\n\nEach range names one file and an optional `offset` and `length`; a\nfile may appear in several ranges. Paths are relative to the disk\nroot. Ranges must name regular files: a directory is found but warms\nnothing, so list a directory's files to warm its contents.\n\nThe response reports one result per range, in request order, and may\nreturn before the data is fully fetched. A path that does not exist\nreports `found: false`. A failed range does not fail the others;\nretry the ranges whose `error` is `retry`. If the disk is not mounted\nanywhere, prefetching loads it.\n\nWarmed data becomes active data and is metered like data your clients\nread.\n","tags":["Disks"],"security":["1d7bb38d-b5f1-4c54-817a-bd2cbf906308","f83450e9-7b71-4bcc-9237-20da512e6ca2"],"parameters":["649a2a86-e321-44c5-be4d-fcca33220282"],"requestBody":"e18fff2a-e5d9-414d-9bd3-00318f8e2101","responses":{"200":"03624b45-1c2e-4d7e-a09a-aca4ffc3fbaa","400":"90bc6342-119f-4ac3-9afc-eb5925930179","401":"4d7c3e80-fab7-43cd-b7ca-c3695ce50d75","404":"506915b2-f37c-4a44-9a2c-375831e70234","500":"a19fd18a-8d56-48d7-ac3f-d3907c24ae9d","503":"43adebd9-cb66-4601-a4ec-579b965a5983"},"method":"post","type":"path","servers":["6db67504-7e31-4ea2-a7c4-b7b1ea1d58a5","d48c79ee-3691-41db-aaf6-5a5837f9a57b","8a274aad-d7f2-4f46-9384-87e7b64d6aae","ce953b08-12f4-44f0-856b-7c905b22aba5"],"path":"/api/disks/{id}/prefetch","baseUrlOptions":["https://control.green.us-east-1.aws.prod.archil.com","https://control.green.eu-west-1.aws.prod.archil.com","https://control.green.us-west-2.aws.prod.archil.com","https://control.blue.us-central1.gcp.prod.archil.com"],"title":"Prefetch file ranges","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"649a2a86-e321-44c5-be4d-fcca33220282":{"name":"id","in":"path","required":true,"description":"Disk ID (format `dsk-{16 hex chars}`)","schema":{"type":"string","pattern":"^dsk-[0-9a-f]{16}$","example":"dsk-0123456789abcdef","isRequired":true,"description":"Disk ID (format `dsk-{16 hex chars}`)","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["ranges"],"properties":{"ranges":{"type":"array","minItems":1,"description":"Byte ranges to warm. A request may name at most 1000.","items":{"type":"object","additionalProperties":false,"required":["path"],"properties":{"path":{"type":"string","minLength":1,"description":"Path of a regular file, relative to the disk root.","example":"models/weights.bin","isRequired":true,"uniqueKey":"ranges.items.[INDEX].path","typeLabel":"string"},"offset":{"type":"integer","format":"int64","minimum":0,"description":"First byte to warm. Defaults to 0.","uniqueKey":"ranges.items.[INDEX].offset","typeLabel":"integer\u003cint64>"},"length":{"type":"integer","format":"int64","minimum":0,"description":"Bytes to warm from `offset`. Defaults to the end of the file.","uniqueKey":"ranges.items.[INDEX].length","typeLabel":"integer\u003cint64>"}},"uniqueKey":"ranges.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"ranges","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"ranges":[{"path":"models/weights.bin"},{"path":"data/2026/events.parquet","offset":0,"length":1048576}]},"examples":{"Example":{"title":"Example","value":{"ranges":[{"path":"models/weights.bin"},{"path":"data/2026/events.parquet","offset":0,"length":1048576}]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"03624b45-1c2e-4d7e-a09a-aca4ffc3fbaa":{"description":"Per-range prefetch results","content":{"application/json":{"schema":{"type":"object","required":["success","data"],"properties":{"success":{"type":"boolean","example":true,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"data":{"type":"object","required":["results"],"properties":{"results":{"type":"array","description":"One result per requested range, in request order.","items":{"type":"object","required":["found","bytesRequested","bytesWarmed"],"properties":{"found":{"type":"boolean","description":"Whether the path exists.","isRequired":true,"uniqueKey":"data.results.items.[INDEX].found","typeLabel":"boolean"},"bytesRequested":{"type":"integer","format":"int64","description":"Bytes of the range being warmed, including bytes that were already cached.\n","isRequired":true,"uniqueKey":"data.results.items.[INDEX].bytesRequested","typeLabel":"integer\u003cint64>"},"bytesWarmed":{"type":"integer","format":"int64","description":"Of `bytesRequested`, the bytes fetched (or still being fetched) from object storage. The rest were already cached.\n","isRequired":true,"uniqueKey":"data.results.items.[INDEX].bytesWarmed","typeLabel":"integer\u003cint64>"},"error":{"type":"string","enum":["retry","failed"],"description":"Set when this range was not warmed: `retry` for a transient failure worth retrying, `failed` otherwise. Other ranges in the request are unaffected.\n","uniqueKey":"data.results.items.[INDEX].error","typeLabel":"enum\u003cstring>"}},"uniqueKey":"data.results.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"data.results","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"success":true,"data":{"results":[{"found":true,"bytesRequested":4294967296,"bytesWarmed":4294967296},{"found":true,"bytesRequested":1048576,"bytesWarmed":0}]}},"examples":{"Example":{"title":"Example","value":{"success":true,"data":{"results":[{"found":true,"bytesRequested":4294967296,"bytesWarmed":4294967296},{"found":true,"bytesRequested":1048576,"bytesWarmed":0}]}}}},"exampleType":"examples"}},"exampleType":"examples"},"90bc6342-119f-4ac3-9afc-eb5925930179":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","required":["success","error"],"properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"string","example":"Invalid request parameters","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable machine-readable error code.","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":"Invalid request parameters","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"4d7c3e80-fab7-43cd-b7ca-c3695ce50d75":{"description":"Invalid or missing authentication credentials","content":{"application/json":{"schema":{"type":"object","required":["success","error"],"properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"string","example":"Invalid request parameters","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable machine-readable error code.","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":"Invalid request parameters","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"506915b2-f37c-4a44-9a2c-375831e70234":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","required":["success","error"],"properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"string","example":"Invalid request parameters","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable machine-readable error code.","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":"Invalid request parameters","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"a19fd18a-8d56-48d7-ac3f-d3907c24ae9d":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","required":["success","error"],"properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"string","example":"Invalid request parameters","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable machine-readable error code.","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":"Invalid request parameters","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"43adebd9-cb66-4601-a4ec-579b965a5983":{"description":"Temporarily unavailable; safe to retry.","content":{"application/json":{"schema":{"type":"object","required":["success","error"],"properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"string","example":"Invalid request parameters","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable machine-readable error code.","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":"Invalid request parameters","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"1d7bb38d-b5f1-4c54-817a-bd2cbf906308":{"ApiKeyAuth":{"type":"http","scheme":"bearer","description":"Archil API key, including its `key-` prefix","scopes":["disk:prefetch:{id}"],"schemeName":"ApiKeyAuth"}},"f83450e9-7b71-4bcc-9237-20da512e6ca2":{"SessionTokenAuth":{"$ref":"58c4d988-d45f-4ac1-ae3b-8e2b7cdae8fa","scopes":[]}}},"servers":{"6db67504-7e31-4ea2-a7c4-b7b1ea1d58a5":{"url":"https://control.green.us-east-1.aws.prod.archil.com","description":"AWS US East (N. Virginia) — aws-us-east-1"},"d48c79ee-3691-41db-aaf6-5a5837f9a57b":{"url":"https://control.green.eu-west-1.aws.prod.archil.com","description":"AWS EU West (Ireland) — aws-eu-west-1"},"8a274aad-d7f2-4f46-9384-87e7b64d6aae":{"url":"https://control.green.us-west-2.aws.prod.archil.com","description":"AWS US West (Oregon) — aws-us-west-2"},"ce953b08-12f4-44f0-856b-7c905b22aba5":{"url":"https://control.blue.us-central1.gcp.prod.archil.com","description":"GCP US Central (Iowa) — gcp-us-central1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Archil API key, including its `key-` prefix","scopes":["disk:prefetch:{id}"],"schemeName":"ApiKeyAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Archil API key, including its `key-` prefix","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"ApiKeyAuth","name":"Authorization"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"api-reference/openapi.yaml"},"subdomain":"regattastorage","siteName":"Archil","title":"Prefetch File Ranges - Archil","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-06T18:15:19.535Z","originalFileLocation":"api-reference/disks/prefetch-disk.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=\"Warms byte ranges of files on a disk into Archil\u0026#x27;s storage cache, so later reads from any client, serverless exec, or sandbox are served without going to the backing object storage. Each range names one file and an optional offset and length; a file may appear in several ranges. Paths are relative to the disk root. Ranges must name regular files: a directory is found but warms nothing, so list a directory\u0026#x27;s files to warm its contents. The response reports one result per range, in request order, and may return before the data is fully fetched. A path that does not exist reports found: false. A failed range does not fail the others; retry the ranges whose error is retry. If the disk is not mounted anywhere, prefetching loads it. Warmed data becomes active data and is metered like data your clients read.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Archil\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_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/regattastorage/2Y7S3E06tG_mFVFw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Prefetch File Ranges - Archil\">\u003cmeta data-mint-head property=\"og:description\" content=\"Warms byte ranges of files on a disk into Archil\u0026#x27;s storage cache, so later reads from any client, serverless exec, or sandbox are served without going to the backing object storage. Each range names one file and an optional offset and length; a file may appear in several ranges. Paths are relative to the disk root. Ranges must name regular files: a directory is found but warms nothing, so list a directory\u0026#x27;s files to warm its contents. The response reports one result per range, in request order, and may return before the data is fully fetched. A path that does not exist reports found: false. A failed range does not fail the others; retry the ranges whose error is retry. If the disk is not mounted anywhere, prefetching loads it. Warmed data becomes active data and is metered like data your clients read.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Archil\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.archil.com/api-reference/disks/prefetch-disk\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://regattastorage.mintlify.site/_mintlify/api/og/v2?division=Disks\u0026amp;title=Prefetch+File+Ranges\u0026amp;description=Warms+byte+ranges+of+files+on+a+disk+into+Archil%27s+storage+cache%2C+so%0Alater+reads+from+any+client%2C+serverless+exec%2C+or+sandbox+are+served%0Awithout+going+to+the+ba\u0026amp;theme=769a6d2c91fa13ef59890af3\u0026amp;signature=2bea10c34e7a942cf7a7fbb2f76f69ff2898c2e4efbde2943807cc374d053307\">\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=\"Prefetch File Ranges - Archil\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Warms byte ranges of files on a disk into Archil\u0026#x27;s storage cache, so later reads from any client, serverless exec, or sandbox are served without going to the backing object storage. Each range names one file and an optional offset and length; a file may appear in several ranges. Paths are relative to the disk root. Ranges must name regular files: a directory is found but warms nothing, so list a directory\u0026#x27;s files to warm its contents. The response reports one result per range, in request order, and may return before the data is fully fetched. A path that does not exist reports found: false. A failed range does not fail the others; retry the ranges whose error is retry. If the disk is not mounted anywhere, prefetching loads it. Warmed data becomes active data and is metered like data your clients read.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://regattastorage.mintlify.site/_mintlify/api/og/v2?division=Disks\u0026amp;title=Prefetch+File+Ranges\u0026amp;description=Warms+byte+ranges+of+files+on+a+disk+into+Archil%27s+storage+cache%2C+so%0Alater+reads+from+any+client%2C+serverless+exec%2C+or+sandbox+are+served%0Awithout+going+to+the+ba\u0026amp;theme=769a6d2c91fa13ef59890af3\u0026amp;signature=2bea10c34e7a942cf7a7fbb2f76f69ff2898c2e4efbde2943807cc374d053307\">\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/regattastorage/2Y7S3E06tG_mFVFw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Archil\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#CA5550\">\u003cmeta data-mint-head name=\"msvalidate.01\" content=\"EF0D87C55567AF7517BCE660F6318971\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.archil.com/api-reference/disks/prefetch-disk\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/disks/prefetch-disk.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.archil.com/#organization\",\"name\":\"Archil\",\"url\":\"https://docs.archil.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/regattastorage/ZgodyIZMQ_rX_qud/logo/archil-black-fullbleed.svg?fit=max\u0026auto=format\u0026n=ZgodyIZMQ_rX_qud\u0026q=85\u0026s=adba0f4983e37336b24452e3ba977724\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.archil.com#website\",\"name\":\"Archil\",\"url\":\"https://docs.archil.com\",\"publisher\":{\"@id\":\"https://docs.archil.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.archil.com/api-reference/disks/prefetch-disk#webpage\",\"url\":\"https://docs.archil.com/api-reference/disks/prefetch-disk\",\"name\":\"Prefetch File Ranges\",\"description\":\"Warms byte ranges of files on a disk into Archil's storage cache, so later reads from any client, serverless exec, or sandbox are served without going to the backing object storage. Each range names one file and an optional offset and length; a file may appear in several ranges. Paths are relative to the disk root. Ranges must name regular files: a directory is found but warms nothing, so list a directory's files to warm its contents. The response reports one result per range, in request order, and may return before the data is fully fetched. A path that does not exist reports found: false. A failed range does not fail the others; retry the ranges whose error is retry. If the disk is not mounted anywhere, prefetching loads it. Warmed data becomes active data and is metered like data your clients read.\",\"dateModified\":\"2026-11-06T18:15:19.535Z\",\"isPartOf\":{\"@id\":\"https://docs.archil.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.archil.com/api-reference/disks/prefetch-disk#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.archil.com/api-reference/disks/prefetch-disk#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Disks\",\"item\":\"https://docs.archil.com/api-reference/disks/list-disks\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Prefetch File Ranges\",\"item\":\"https://docs.archil.com/api-reference/disks/prefetch-disk\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.archil.com/api-reference/disks/prefetch-disk#apireference\",\"headline\":\"Prefetch File Ranges\",\"name\":\"Prefetch File Ranges\",\"description\":\"Warms byte ranges of files on a disk into Archil's storage cache, so later reads from any client, serverless exec, or sandbox are served without going to the backing object storage. Each range names one file and an optional offset and length; a file may appear in several ranges. Paths are relative to the disk root. Ranges must name regular files: a directory is found but warms nothing, so list a directory's files to warm its contents. The response reports one result per range, in request order, and may return before the data is fully fetched. A path that does not exist reports found: false. A failed range does not fail the others; retry the ranges whose error is retry. If the disk is not mounted anywhere, prefetching loads it. Warmed data becomes active data and is metered like data your clients read.\",\"url\":\"https://docs.archil.com/api-reference/disks/prefetch-disk\",\"mainEntityOfPage\":{\"@id\":\"https://docs.archil.com/api-reference/disks/prefetch-disk#webpage\"},\"dateModified\":\"2026-11-06T18:15:19.535Z\",\"publisher\":{\"@id\":\"https://docs.archil.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.archil.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Archil\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Archil","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/getting-started/introduction"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API Reference","href":"/api-reference/introduction"}]},{"group":"Disks","pages":[{"title":"List Disks","openapi":"GET /api/disks","href":"/api-reference/disks/list-disks"},{"title":"Create Disk","openapi":"POST /api/disks","href":"/api-reference/disks/create-disk"},{"title":"Get Disk","openapi":"GET /api/disks/{id}","href":"/api-reference/disks/get-disk"},{"title":"Delete Disk","openapi":"DELETE /api/disks/{id}","href":"/api-reference/disks/delete-disk"},{"title":"Create Share URL","openapi":"POST /api/disks/{id}/share","description":"Creates a signed, time-limited URL for downloading a file without\nauthentication. The URL expires after 24 hours by default; pass\n`expiresIn` to set a custom lifetime up to 7 days.\n\nThe returned URL points to a public endpoint (`GET /api/shared/{token}`)\nthat verifies the signature, checks expiry, and streams the file with a\nsensible `Content-Type` and `Content-Disposition`. Range requests are\nsupported. No credentials are needed to open the URL.\n","href":"/api-reference/disks/create-share-url"},{"title":"Prefetch File Ranges","openapi":"POST /api/disks/{id}/prefetch","href":"/api-reference/disks/prefetch-disk"}]},{"group":"Serverless Execution","pages":[{"title":"Execute Command on Disk","openapi":"POST /api/disks/{id}/exec","description":"Launches a Firecracker microVM with the specified disk mounted, runs the\ngiven command to completion, shuts down the microVM, and returns the\ncommand result.\n","href":"/api-reference/serverless-execution/exec-disk"},{"title":"Execute Command with Multiple Disks","openapi":"POST /api/exec","href":"/api-reference/serverless-execution/exec-multi"},{"title":"Search Files (grep)","sidebarTitle":"Search Files","openapi":"POST /api/disks/{id}/grep","href":"/api-reference/serverless-execution/grep-disk"}]},{"group":"Sandboxes","pages":[{"title":"List Sandboxes","openapi":"GET /api/sandboxes","href":"/api-reference/sandboxes/list-sandboxes"},{"title":"Create Sandbox","openapi":"POST /api/sandboxes","href":"/api-reference/sandboxes/create-sandbox"},{"title":"Get Sandbox","openapi":"GET /api/sandboxes/{sid}","href":"/api-reference/sandboxes/get-sandbox"},{"title":"Delete Sandbox","openapi":"DELETE /api/sandboxes/{sid}","href":"/api-reference/sandboxes/delete-sandbox"},{"title":"Create Sandbox Connection","openapi":"POST /api/sandboxes/{sid}/connections","href":"/api-reference/sandboxes/create-sandbox-connection"},{"title":"Set Sandbox Timeouts","openapi":"POST /api/sandboxes/{sid}/timeout","href":"/api-reference/sandboxes/set-sandbox-timeout"},{"title":"List Sandbox Ports","openapi":"GET /api/sandboxes/{sid}/ports","href":"/api-reference/sandboxes/list-sandbox-ports"},{"title":"Expose Sandbox Port","openapi":"PUT /api/sandboxes/{sid}/ports/{port}","href":"/api-reference/sandboxes/expose-sandbox-port"},{"title":"Unexpose Sandbox Port","openapi":"DELETE /api/sandboxes/{sid}/ports/{port}","href":"/api-reference/sandboxes/unexpose-sandbox-port"},{"title":"List Sandbox Port Tokens","openapi":"GET /api/sandboxes/{sid}/port-tokens","href":"/api-reference/sandboxes/list-sandbox-port-tokens"},{"title":"Create Sandbox Port Token","openapi":"POST /api/sandboxes/{sid}/port-tokens","href":"/api-reference/sandboxes/create-sandbox-port-token"},{"title":"Get Sandbox Port Token","openapi":"GET /api/sandboxes/{sid}/port-tokens/{token_id}","href":"/api-reference/sandboxes/get-sandbox-port-token"},{"title":"Delete Sandbox Port Token","openapi":"DELETE /api/sandboxes/{sid}/port-tokens/{token_id}","href":"/api-reference/sandboxes/delete-sandbox-port-token"},{"title":"Get Sandbox Network","openapi":"GET /api/sandboxes/{sid}/network","href":"/api-reference/sandboxes/get-sandbox-network"},{"title":"Update Sandbox Network","openapi":"PUT /api/sandboxes/{sid}/network","href":"/api-reference/sandboxes/update-sandbox-network"},{"title":"Pause Sandbox","openapi":"POST /api/sandboxes/{sid}/pause","href":"/api-reference/sandboxes/pause-sandbox"},{"title":"Fork Sandbox","openapi":"POST /api/sandboxes/{sid}/fork","href":"/api-reference/sandboxes/fork-sandbox"},{"title":"Resume Sandbox","openapi":"POST /api/sandboxes/{sid}/resume","href":"/api-reference/sandboxes/resume-sandbox"},{"title":"Start Sandbox","openapi":"POST /api/sandboxes/{sid}/start","href":"/api-reference/sandboxes/start-sandbox"},{"title":"Stop Sandbox","openapi":"POST /api/sandboxes/{sid}/stop","href":"/api-reference/sandboxes/stop-sandbox"},{"title":"Build Image","openapi":"POST /api/images","href":"/api-reference/images/build-image"},{"title":"Get Image","openapi":"GET /api/images/{image_id}","href":"/api-reference/images/get-image"}]},{"group":"Disk Users","pages":[{"title":"Add Disk User","openapi":"POST /api/disks/{id}/users","href":"/api-reference/disk-users/add-user"},{"title":"Remove Disk User","openapi":"DELETE /api/disks/{id}/users/{userType}","href":"/api-reference/disk-users/remove-user"}]},{"group":"API Tokens","pages":[{"title":"List API Tokens","openapi":"GET /api/tokens","href":"/api-reference/tokens/list-tokens"},{"title":"Create API Token","openapi":"POST /api/tokens","href":"/api-reference/tokens/create-token"},{"title":"Delete API Token","openapi":"DELETE /api/tokens/{id}","href":"/api-reference/tokens/delete-token"}]},{"group":"Billing","pages":[{"title":"Get Subscription","openapi":"GET /api/billing/subscription","href":"/api-reference/billing/get-subscription"},{"title":"Get Usage","openapi":"GET /api/billing/usage","href":"/api-reference/billing/get-usage"},{"title":"Get Summary","openapi":"GET /api/billing/summary","href":"/api-reference/billing/get-summary"}]}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides/agents/coding-agent"}]}]},"basePath":"","title":"Prefetch File Ranges - Archil","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-Myd8dsju.js","utils-C2HkQgW0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-8rSppmTv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B6MjiCFm.js","snippetPresets-DwrSAONL.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-CxAy5y67.js","ApiExamples-1-a5UQKQ.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C541m7wZ.js","shallow-CWELCZ77.js","getApiPlaygroundDisplay-CTo5Zn03.js","CodeSnippet-D--dzvnl.js","CodeSnippets-DM3cXEDh.js","getPastedJson-C-VECgcL.js","icon-BPq2-Mg3.js","MethodPill-D9J5cUHd.js","DuplicateIcon-BqHaxUnD.js","createIcon-CIbcZHp9.js","DynamicMarkdown-BKiHAm_d.js","SectionHeading-DstQXt3H.js","axios-vUo_bRtp.js","Markdown-CpxgzsKA.js","clsx-C5EfhVm0.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CJ9Oly2E.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Mk6P3qvh.js"]}