Allocate an upload version and backend signed PUT slots
Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset//process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.
POST
/
api
/
v1
/
upload
/
asset
/
init
Allocate an upload version and backend signed PUT slots
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Inspack","description":"Documentation for the Inspack (former GetGenAI) API, MCP server, and skills.","colors":{"primary":"#5F47CE","light":"#9C95FB","dark":"#4D31C1"},"logo":{"light":"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/inspack-logo-light.png?fit=max\u0026auto=format\u0026n=CklDpBHBp-Fdktvd\u0026q=85\u0026s=99b12855ae176e5675045f5bc94df294","dark":"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/inspack-logo-dark.png?fit=max\u0026auto=format\u0026n=CklDpBHBp-Fdktvd\u0026q=85\u0026s=9bc7ab63eb378ad795be09afea1f6dcc"},"favicon":{"light":"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-light-48.png?fit=max\u0026auto=format\u0026n=CklDpBHBp-Fdktvd\u0026q=85\u0026s=06554e4bd3d24100159a474183561103","dark":"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-dark-48.png?fit=max\u0026auto=format\u0026n=CklDpBHBp-Fdktvd\u0026q=85\u0026s=5d8615b2564ee3c37bf4c121755166a6"},"navbar":{"links":[{"href":"mailto:info@inspack.com","label":"Support"}],"primary":{"type":"button","label":"Open app","href":"https://app.inspack.com"}},"footer":{"socials":{"website":"https://www.inspack.com"}},"fonts":{"heading":{"family":"Archivo","weight":600},"body":{"family":"Archivo","weight":400}},"integrations":{"gtm":{"tagId":"GTM-P5NXKZ52"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"getgenai","hasAudioNarration":false,"actualSubdomain":"getgenai","customDomains":["docs.inspack.com"],"gitSource":{"type":"github","owner":"getgenai","repo":"getgen-portal","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae3837f88cdd944cd18f5f3","collectionId":"9fa37e05-99ed-4458-9558-54cc360ac0f9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae3837f88cdd944cd18f5f3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae3c6df32fdfe8182ae1a87","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"API reference","count":15},{"language":"default","tag":"Guides","count":8},{"language":"default","tag":"Upload","count":7},{"language":"default","tag":"Inspector","count":5},{"language":"default","tag":"Get started","count":4},{"language":"default","tag":"MCP server","count":3},{"language":"default","tag":"Changelog","count":2},{"language":"default","tag":"Skills","count":1},{"language":"default","tag":"Documents","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots","slug":"/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots","pageMetadata":{"title":"Allocate an upload version and backend signed PUT slots","description":"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/upload/asset/init","href":"/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/\", \"/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.\"]\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":"Allocate an upload version and backend signed PUT slots","description":"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/upload/asset/init","href":"/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Allocate an upload version and backend signed PUT slots","operationId":"init_upload_api_upload_asset_init_post","requestBody":"ed627098-44bc-4996-8bcd-6ac1d3aabee5","responses":{"201":"f52c423e-4296-47c3-994d-180212c5d38f","400":"bccfca6b-58e2-4491-bd5c-43f891d34540","401":"c94b0cca-fa59-476e-8d6b-564ea3c61d98","403":"0172e042-8aea-4e1c-ae4e-1c4db729d5fc","422":"5b594bf0-2865-4098-9530-604e793a5456","499":"fdb7afef-12b9-4b0a-bb5b-39d2d2df6e70","502":"7dd0a47a-b841-4cd6-bec7-ed97b41431d0","503":"6e6d54cf-1533-4e45-84ac-fd4719b240f8","504":"93bbd36c-70ea-4a6c-b92a-7a63f2e16ee4"},"description":"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.","tags":["Upload"],"x-protected":true,"method":"post","type":"path","servers":[],"security":["fddd0f75-2edc-431f-9e96-44adb7c7da76"],"path":"/api/v1/upload/asset/init","baseUrlOptions":[],"title":"Allocate an upload version and backend signed PUT slots","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"properties":{"readable":{"properties":{"filename":{"type":"string","maxLength":512,"minLength":1,"title":"Filename","description":"Original filename, preserved in the manifest","isRequired":true,"uniqueKey":"readable.filename","typeLabel":"string"},"content_type":{"type":"string","minLength":1,"title":"Content Type","description":"MIME type the client will PUT with","isRequired":true,"uniqueKey":"readable.content_type","typeLabel":"string"},"bytes":{"type":"integer","exclusiveMinimum":0,"title":"Bytes","description":"Exact byte length; enforced by the signed URL","isRequired":true,"uniqueKey":"readable.bytes","typeLabel":"integer"},"sha256":{"oneOf":[{"type":"string","title":"Sha256","description":"SHA-256 of the file. Supplied by the client (which already streams the bytes); computed server-side during the previews stage when absent.","pattern":"^[0-9a-f]{64}$","uniqueKey":"readable.sha256.oneOf.0","typeLabel":"string"},{"type":"null","title":"Sha256","description":"SHA-256 of the file. Supplied by the client (which already streams the bytes); computed server-side during the previews stage when absent.","uniqueKey":"readable.sha256.oneOf.1","typeLabel":"null"}],"uniqueKey":"readable.sha256","typeLabel":"string | null"}},"type":"object","required":["filename","content_type","bytes"],"title":"UploadFileSpec","description":"The one readable source (pdf/docx/pptx/image)","isRequired":true,"uniqueKey":"readable","typeLabel":"UploadFileSpec · object"},"org_id":{"type":"integer","exclusiveMinimum":0,"title":"Org Id","description":"Required for system tokens; customer organization comes from authentication and overrides this value.","uniqueKey":"org_id","typeLabel":"integer"},"asset_id":{"oneOf":[{"type":"string","title":"Asset Id","description":"Existing asset to add a version to. Absent mints a new asset.","format":"uuid","uniqueKey":"asset_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","title":"Asset Id","description":"Existing asset to add a version to. Absent mints a new asset.","uniqueKey":"asset_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"asset_id","typeLabel":"string\u003cuuid> | null"},"originals":{"items":{"properties":{"filename":{"type":"string","maxLength":512,"minLength":1,"title":"Filename","description":"Original filename, preserved in the manifest","isRequired":true,"uniqueKey":"originals.items.[INDEX].filename","typeLabel":"string"},"content_type":{"type":"string","minLength":1,"title":"Content Type","description":"MIME type the client will PUT with","isRequired":true,"uniqueKey":"originals.items.[INDEX].content_type","typeLabel":"string"},"bytes":{"type":"integer","exclusiveMinimum":0,"title":"Bytes","description":"Exact byte length; enforced by the signed URL","isRequired":true,"uniqueKey":"originals.items.[INDEX].bytes","typeLabel":"integer"},"sha256":{"oneOf":[{"type":"string","title":"Sha256","description":"SHA-256 of the file. Supplied by the client (which already streams the bytes); computed server-side during the previews stage when absent.","pattern":"^[0-9a-f]{64}$","uniqueKey":"originals.items.[INDEX].sha256.oneOf.0","typeLabel":"string"},{"type":"null","title":"Sha256","description":"SHA-256 of the file. Supplied by the client (which already streams the bytes); computed server-side during the previews stage when absent.","uniqueKey":"originals.items.[INDEX].sha256.oneOf.1","typeLabel":"null"}],"uniqueKey":"originals.items.[INDEX].sha256","typeLabel":"string | null"}},"type":"object","required":["filename","content_type","bytes"],"title":"UploadFileSpec","description":"One file the caller intends to upload.","uniqueKey":"originals.items.[INDEX]","typeLabel":"UploadFileSpec · object"},"type":"array","maxItems":10,"title":"Originals","description":"Design originals (.ai/.psd/.indd). Archived as-is; no derivatives are produced.","uniqueKey":"originals","typeLabel":"UploadFileSpec · object[]"},"callback_url":{"oneOf":[{"type":"string","title":"Callback Url","description":"Per-stage webhook target. Polling status/latest.json is the fallback.","format":"uri","maxLength":2083,"minLength":1,"uniqueKey":"callback_url.oneOf.0","typeLabel":"string\u003curi>"},{"type":"null","title":"Callback Url","description":"Per-stage webhook target. Polling status/latest.json is the fallback.","uniqueKey":"callback_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"callback_url","typeLabel":"string\u003curi> | null"}},"type":"object","required":["readable"],"title":"InitUploadRequest","uniqueKey":"","typeLabel":"InitUploadRequest · object"},"examples":{"Example":{"title":"Example","value":{"readable":{"filename":"\u003cstring>","content_type":"\u003cstring>","bytes":123,"sha256":"\u003cstring>"},"org_id":123,"asset_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","originals":[{"filename":"\u003cstring>","content_type":"\u003cstring>","bytes":123,"sha256":"\u003cstring>"}],"callback_url":"\u003cstring>"}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"f52c423e-4296-47c3-994d-180212c5d38f":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"asset_id":{"type":"string","format":"uuid","title":"Asset Id","isRequired":true,"uniqueKey":"asset_id","typeLabel":"string\u003cuuid>"},"version":{"type":"integer","title":"Version","isRequired":true,"uniqueKey":"version","typeLabel":"integer"},"folder":{"type":"string","title":"Folder","description":"Bucket prefix holding this version","isRequired":true,"uniqueKey":"folder","typeLabel":"string"},"status_url":{"type":"string","title":"Status Url","description":"URL of status/latest.json for this version","isRequired":true,"uniqueKey":"status_url","typeLabel":"string"},"uploads":{"items":{"properties":{"role":{"type":"string","enum":["readable","original"],"title":"Role","isRequired":true,"uniqueKey":"uploads.items.[INDEX].role","typeLabel":"enum\u003cstring>"},"path":{"type":"string","title":"Path","description":"Version-relative path the bytes will live at","isRequired":true,"uniqueKey":"uploads.items.[INDEX].path","typeLabel":"string"},"url":{"type":"string","title":"Url","description":"V4 signed PUT URL, optionally relayed through the portal storage proxy","isRequired":true,"uniqueKey":"uploads.items.[INDEX].url","typeLabel":"string"},"expires_at":{"type":"string","format":"date-time","title":"Expires At","isRequired":true,"uniqueKey":"uploads.items.[INDEX].expires_at","typeLabel":"string\u003cdate-time>"},"max_bytes":{"type":"integer","title":"Max Bytes","isRequired":true,"uniqueKey":"uploads.items.[INDEX].max_bytes","typeLabel":"integer"},"required_headers":{"additionalProperties":{"type":"string","uniqueKey":"uploads.items.[INDEX].required_headers.additionalProperties","typeLabel":"string"},"type":"object","title":"Required Headers","description":"Headers the PUT must send verbatim. Includes the content-length range and x-goog-if-generation-match: 0, which makes the slot single-use.","isRequired":true,"uniqueKey":"uploads.items.[INDEX].required_headers","typeLabel":"Required Headers · object"}},"type":"object","required":["role","path","url","expires_at","max_bytes","required_headers"],"title":"UploadSlot","description":"A single-use signed PUT target.","uniqueKey":"uploads.items.[INDEX]","typeLabel":"UploadSlot · object"},"type":"array","title":"Uploads","isRequired":true,"uniqueKey":"uploads","typeLabel":"UploadSlot · object[]"}},"type":"object","required":["asset_id","version","folder","status_url","uploads"],"title":"InitUploadResponse","uniqueKey":"","typeLabel":"InitUploadResponse · object"},"examples":{"Example":{"title":"Example","value":{"asset_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","version":123,"folder":"\u003cstring>","status_url":"\u003cstring>","uploads":[{"role":"readable","path":"\u003cstring>","url":"\u003cstring>","expires_at":"2023-11-07T05:31:56Z","max_bytes":123,"required_headers":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"},"bccfca6b-58e2-4491-bd5c-43f891d34540":{"description":"Invalid input or missing system-token org_id","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"c94b0cca-fa59-476e-8d6b-564ea3c61d98":{"description":"Access token is missing or invalid","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","example":"Unauthorized","uniqueKey":"error","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"Unauthorized"}}},"exampleType":"generated"}},"exampleType":"generated"},"0172e042-8aea-4e1c-ae4e-1c4db729d5fc":{"description":"Customer organization is unavailable","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"5b594bf0-2865-4098-9530-604e793a5456":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"type":"array","title":"Location","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"type":"string","title":"Message","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"type":"string","title":"Error Type","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"type":"array","title":"Detail","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"type":"object","title":"HTTPValidationError","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"fdb7afef-12b9-4b0a-bb5b-39d2d2df6e70":{"description":"Request cancelled","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"7dd0a47a-b841-4cd6-bec7-ed97b41431d0":{"description":"Upload service transport failure","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"6e6d54cf-1533-4e45-84ac-fd4719b240f8":{"description":"Upload service not configured, or upstream unavailable","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"93bbd36c-70ea-4a6c-b92a-7a63f2e16ee4":{"description":"Upload service request timed out after 30 seconds","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{"fddd0f75-2edc-431f-9e96-44adb7c7da76":{"bearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"}}},"servers":{},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"https://app.inspack.com/api/v1/docs/json"},"subdomain":"getgenai","siteName":"Inspack","title":"Allocate an upload version and backend signed PUT slots - Inspack","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-29T17:35:28.886Z","originalFileLocation":"api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots.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=\"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Inspack\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-light-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=06554e4bd3d24100159a474183561103\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-light-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=06554e4bd3d24100159a474183561103\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-light-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=06554e4bd3d24100159a474183561103\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/png\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-light-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=06554e4bd3d24100159a474183561103\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-dark-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=5d8615b2564ee3c37bf4c121755166a6\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-dark-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=5d8615b2564ee3c37bf4c121755166a6\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/png\" href=\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/favicon-dark-48.png?fit=max\u0026amp;auto=format\u0026amp;n=CklDpBHBp-Fdktvd\u0026amp;q=85\u0026amp;s=5d8615b2564ee3c37bf4c121755166a6\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Allocate an upload version and backend signed PUT slots - Inspack\">\u003cmeta data-mint-head property=\"og:description\" content=\"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Inspack\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://getgenai.mintlify.app/_mintlify/api/og/v2?division=Upload\u0026amp;title=Allocate+an+upload+version+and+backend+signed+PUT+slots\u0026amp;description=Customer+org_id+comes+from+authentication+and+overrides+supplied+values.+System+tokens+require+explicit+org_id%2C+in+the+init%2Fprocess+body+or+status+query.+Backen\u0026amp;theme=8d2408e69a874ac675292c7b\u0026amp;signature=bf43e2459afa2b7a38e588dab27d37618fb27b4bf53b7debb41e2997cb167bb9\">\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=\"Allocate an upload version and backend signed PUT slots - Inspack\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://getgenai.mintlify.app/_mintlify/api/og/v2?division=Upload\u0026amp;title=Allocate+an+upload+version+and+backend+signed+PUT+slots\u0026amp;description=Customer+org_id+comes+from+authentication+and+overrides+supplied+values.+System+tokens+require+explicit+org_id%2C+in+the+init%2Fprocess+body+or+status+query.+Backen\u0026amp;theme=8d2408e69a874ac675292c7b\u0026amp;signature=bf43e2459afa2b7a38e588dab27d37618fb27b4bf53b7debb41e2997cb167bb9\">\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/getgenai/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Inspack\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5F47CE\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.inspack.com/#organization\",\"name\":\"Inspack\",\"url\":\"https://docs.inspack.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/getgenai/CklDpBHBp-Fdktvd/images/inspack-logo-light.png?fit=max\u0026auto=format\u0026n=CklDpBHBp-Fdktvd\u0026q=85\u0026s=99b12855ae176e5675045f5bc94df294\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.inspack.com#website\",\"name\":\"Inspack\",\"url\":\"https://docs.inspack.com\",\"publisher\":{\"@id\":\"https://docs.inspack.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots#webpage\",\"url\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots\",\"name\":\"Allocate an upload version and backend signed PUT slots\",\"description\":\"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.\",\"dateModified\":\"2026-10-29T17:35:28.886Z\",\"isPartOf\":{\"@id\":\"https://docs.inspack.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Inspack\",\"item\":\"https://docs.inspack.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Allocate an upload version and backend signed PUT slots\",\"item\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots#apireference\",\"headline\":\"Allocate an upload version and backend signed PUT slots\",\"name\":\"Allocate an upload version and backend signed PUT slots\",\"description\":\"Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id, in the init/process body or status query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. PUT every upload slot with all required_headers verbatim, without a bearer token; then POST /api/v1/upload/asset/{asset_id}/process with asset_current_version and an optional ctx, and poll the protected asset route with asset_current_version. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.\",\"url\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots\",\"mainEntityOfPage\":{\"@id\":\"https://docs.inspack.com/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots#webpage\"},\"dateModified\":\"2026-10-29T17:35:28.886Z\",\"publisher\":{\"@id\":\"https://docs.inspack.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.inspack.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Inspack\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Inspack","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/introduction"}]},{"tab":"API reference","groups":[{"group":"API reference","pages":[{"title":"API reference","description":"REST endpoints exposed under /api/v1.","href":"/api-reference/introduction"}]},{"group":"Upload","pages":[{"title":"Allocate an upload version and backend signed PUT slots","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/upload/asset/init","href":"/api-reference/upload/allocate-an-upload-version-and-backend-signed-put-slots"},{"title":"Read upload status once and retrieve latest artifacts","description":"Supply asset_current_version in the query. Customer org_id comes from authentication and overrides supplied values. System tokens require explicit org_id in the query. Backend response bodies, status codes, and URLs are preserved. Upload operations consume no review credits. The portal adapts this route to the current backend versioned path. Status reports the newest run's operation, original_ctx and effective_ctx, its run_id, a waiting_for_run_id while it is parked behind an earlier run, and its steering question with any answer; latest is scoped to that run. A status of awaiting_input is answered through POST /api/v1/upload/asset/{asset_id}/process; cancelled is terminal. Artifact reads use bearer authentication at /storage. Requests propagate cancellation and time out after 30 seconds.","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json get /api/v1/upload/asset/{asset_id}","href":"/api-reference/upload/read-upload-status-once-and-retrieve-latest-artifacts"},{"title":"Retired - supply asset_current_version as a request parameter","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json get /api/v1/upload/asset/{asset_id}/versions/{version}","href":"/api-reference/upload/retired--supply-asset_current_version-as-a-request-parameter"},{"title":"Retired - supply asset_current_version as a request parameter","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/upload/asset/{asset_id}/versions/{version}/start","href":"/api-reference/upload/retired--supply-asset_current_version-as-a-request-parameter-1"},{"title":"Retired - use POST /api/v1/upload/asset/{asset_id}/process","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/upload/asset/{asset_id}/start","href":"/api-reference/upload/retired--use-post-apiv1uploadasset-process"},{"title":"Process an uploaded version for an intent, or answer its steering question","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/upload/asset/{asset_id}/process","href":"/api-reference/upload/process-an-uploaded-version-for-an-intent-or-answer-its-steering-question"},{"title":"Retired - use POST /api/v1/upload/asset/init","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/doc-parse","href":"/api-reference/upload/retired--use-post-apiv1uploadassetinit"}]},{"group":"Inspector","pages":[{"title":"Review content and return inspector results and aggregated summaries","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/inspector/review","href":"/api-reference/inspector/review-content-and-return-inspector-results-and-aggregated-summaries"},{"title":"Retired - use POST /api/v1/inspector/review","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/inspector/inspect_multiple","href":"/api-reference/inspector/retired--use-post-apiv1inspectorreview"},{"title":"Retired - use POST /api/v1/inspector/review","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/inspector/inspect","href":"/api-reference/inspector/retired--use-post-apiv1inspectorreview-1"},{"title":"List inspectors linked to the caller's organization","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json get /api/v1/inspector/get_inspectors","href":"/api-reference/inspector/list-inspectors-linked-to-the-callers-organization"},{"title":"Retired - use POST /api/v1/inspector/review","deprecated":true,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json post /api/v1/inspector/aggregate","href":"/api-reference/inspector/retired--use-post-apiv1inspectorreview-2"}]},{"group":"Documents","pages":[{"title":"Generate an Insights Report PDF","deprecated":null,"version":null,"openapi":"https://app.inspack.com/api/v1/docs/json get /api/v1/documents/report-export","href":"/api-reference/documents/generate-an-insights-report-pdf"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"Allocate an upload version and backend signed PUT slots - Inspack","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-26-lDe7V.js","utils-CWQmgYtH.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-4-Aw3rSD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C2zjXYA5.js","snippetPresets-DFmpFA7C.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-FJpQavWq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D_GvPF7k.js","shallow-Bs2ZB0NO.js","getApiPlaygroundDisplay-DCcqJJk-.js","CodeSnippet-DzDxawVe.js","CodeSnippets-aUr7fU-7.js","Page-CT9uE8Ip.js","getPastedJson-Y1fKsj_I.js","icon-DI4zTsDr.js","MethodPill-C0nDlmSQ.js","DuplicateIcon-NUXbx2nQ.js","createIcon-BdTHrPAi.js","DynamicMarkdown-CtpgKJwj.js","SectionHeading-B3x35tOt.js","axios-vUo_bRtp.js","Markdown-3OmurJMP.js","clsx-DMKzROTp.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-1ms6tsT-.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Ke9xIMFx.js"]}