{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Vern Documentation","colors":{"primary":"#10B981","light":"#10B981","dark":"#10B981"},"logo":{"light":"https://mintcdn.com/vern/xEWEVl-f4WbHT-6k/logo/light.svg?fit=max\u0026auto=format\u0026n=xEWEVl-f4WbHT-6k\u0026q=85\u0026s=0935c9d27922ebd917cfce0dcb725e8c","dark":"https://mintcdn.com/vern/xEWEVl-f4WbHT-6k/logo/dark.svg?fit=max\u0026auto=format\u0026n=xEWEVl-f4WbHT-6k\u0026q=85\u0026s=be7b12a31aaf3cfacd7691cbf8f468bc"},"favicon":"https://mintcdn.com/vern/VGwZnfx-38Sub0SU/favicon.ico?fit=max\u0026auto=format\u0026n=VGwZnfx-38Sub0SU\u0026q=85\u0026s=74ccbcba180f9f513dea96c094e6ffc4","navbar":{"links":[{"href":"mailto:roupen@vern.so","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.vern.so/companies"}},"footer":{"socials":{"linkedin":"https://linkedin.com/company/vern-so"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"vern","hasAudioNarration":false,"actualSubdomain":"vern","customDomains":["docs.vern.so"],"gitSource":{"type":"github","owner":"vern-so","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6addf340f569cc6b3d4a10a6","collectionId":"b7873acd-4881-4afa-b335-c0a57e907f22","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6addf340f569cc6b3d4a10a6"},"entitlements":{},"buildId":"6addf340f569cc6b3d4a10a6","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":29},{"language":"default","tag":"Developer","count":24},{"language":"default","tag":"Guides","count":22},{"language":"default","tag":"API reference","count":18},{"language":"default","tag":"Runs","count":15},{"language":"default","tag":"Migrations","count":11},{"language":"default","tag":"Catalog","count":8},{"language":"default","tag":"Sources \u0026 templates","count":6},{"language":"default","tag":"Get started","count":5},{"language":"default","tag":"Export","count":5}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/migrations/mint-signed-upload-urls","slug":"/api-reference/migrations/mint-signed-upload-urls","pageMetadata":{"title":"Mint signed upload URLs","description":"Request one signed upload URL per file, then PUT each file's bytes to its `signed_url`. Files are workbook-level — not mapped to templates.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/files","href":"/api-reference/migrations/mint-signed-upload-urls","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Request one signed upload URL per file, then PUT each file’s bytes to its \", _jsx(_components.code, {\n children: \"signed_url\"\n }), \". Files are workbook-level — not mapped to templates.\"]\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":"Mint signed upload URLs","description":"Request one signed upload URL per file, then PUT each file's bytes to its `signed_url`. Files are workbook-level — not mapped to templates.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/files","href":"/api-reference/migrations/mint-signed-upload-urls","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createUploads","summary":"Mint signed upload URLs","description":"Request one signed upload URL per file, then PUT each file's bytes to its `signed_url`. Files are workbook-level — not mapped to templates.","tags":["Migrations"],"requestBody":"e42582e3-119d-4ca5-8123-4c8aac15309d","responses":{"201":"79a90139-1ead-4b4d-b77f-d3b8623ce9d1","400":"ba772518-3106-4564-a780-857bad04a17e","401":"67819f9f-0515-4e5b-bdc5-bee97be1a5f0","404":"968b9111-cdf4-474d-bd36-02a23cc766df","429":"2dd7b741-d692-4d0a-bb8b-29a626c2b798"},"method":"post","type":"path","servers":["c4ccc4f7-91d4-45da-a30a-a259344cad18"],"security":["706e2bc3-a8f5-445d-aa54-75701d3fae02"],"path":"/migrations/{migration_id}/files","baseUrlOptions":["https://app.vern.so/api/v1"],"title":"Mint signed upload URLs","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"225d3c24-3477-44eb-bd9c-7da79024423e":{"name":"migration_id","in":"path","required":true,"description":"The migration ID returned by Create a migration.","schema":{"type":"string","format":"uuid","isRequired":true,"description":"The migration ID returned by Create a migration.","uniqueKey":"","typeLabel":"string\u003cuuid>"},"example":"c0a8012e-4f1b-4d3a-9b2c-7e6f5a4b3c2d"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["files"],"properties":{"files":{"type":"array","minItems":1,"items":{"type":"object","required":["name"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"files.items.[INDEX].name","typeLabel":"string"},"content_type":{"type":"string","uniqueKey":"files.items.[INDEX].content_type","typeLabel":"string"}},"uniqueKey":"files.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"files","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"files":[{"name":"contacts.csv","content_type":"text/csv"}]},"examples":{"Example":{"title":"Example","value":{"files":[{"name":"contacts.csv","content_type":"text/csv"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"79a90139-1ead-4b4d-b77f-d3b8623ce9d1":{"description":"One signed upload per requested file.","content":{"application/json":{"schema":{"type":"object","properties":{"files":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"files.items.[INDEX].name","typeLabel":"string"},"storage_path":{"type":"string","uniqueKey":"files.items.[INDEX].storage_path","typeLabel":"string"},"signed_url":{"type":"string","description":"PUT the file's bytes here.","uniqueKey":"files.items.[INDEX].signed_url","typeLabel":"string"},"token":{"type":"string","uniqueKey":"files.items.[INDEX].token","typeLabel":"string"},"content_type":{"type":"string","uniqueKey":"files.items.[INDEX].content_type","typeLabel":"string"}},"uniqueKey":"files.items.[INDEX]","typeLabel":"object"},"uniqueKey":"files","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"files":[{"name":"contacts.csv","storage_path":"workbooks/b3d9.../\u003cuuid>-contacts.csv","signed_url":"https://storage.vern.so/object/upload/sign/...\u0026token=...","token":"ey...","content_type":"text/csv"}]},"examples":{"Example":{"title":"Example","value":{"files":[{"name":"contacts.csv","storage_path":"workbooks/b3d9.../\u003cuuid>-contacts.csv","signed_url":"https://storage.vern.so/object/upload/sign/...\u0026token=...","token":"ey...","content_type":"text/csv"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"ba772518-3106-4564-a780-857bad04a17e":{"description":"Malformed request.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A human-readable error message.","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"67819f9f-0515-4e5b-bdc5-bee97be1a5f0":{"description":"API key missing, malformed, or revoked.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A human-readable error message.","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"968b9111-cdf4-474d-bd36-02a23cc766df":{"description":"The referenced resource isn't in your account.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A human-readable error message.","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"2dd7b741-d692-4d0a-bb8b-29a626c2b798":{"description":"Rate limit hit. Counted per account, not per API key. Creating a migration and starting a `generate` run are limited to 30/hour each; answering a run is limited to 30/hour; reads allow 30/minute and writes 30/minute. `Retry-After` gives the seconds until the window resets, alongside `X-RateLimit-Limit`, `X-RateLimit-Remaining` and `X-RateLimit-Reset`.","headers":{"Retry-After":{"description":"Seconds until the rate-limit window resets.","schema":{"type":"integer"}},"X-RateLimit-Limit":{"description":"Requests allowed in the current window.","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Unix time (seconds) when the window resets.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"A human-readable error message.","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"example":{"error":"Too many requests"},"examples":{"Example":{"title":"Example","value":{"error":"Too many requests"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"706e2bc3-a8f5-445d-aa54-75701d3fae02":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Your Vern API key. Create one at Settings → API keys.","scopes":[],"schemeName":"apiKey"}}},"servers":{"c4ccc4f7-91d4-45da-a30a-a259344cad18":{"url":"https://app.vern.so/api/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Your Vern API key. Create one at Settings → API keys.","scopes":[],"schemeName":"apiKey"},"schema":{"title":"x-api-key","type":"string","description":"Your Vern API key. Create one at Settings → API keys.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"x-api-key"}],"title":"apiKey"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"vern","siteName":"Vern Documentation","title":"Mint signed upload URLs - Vern Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-22T07:35:29.146Z","originalFileLocation":"api-reference/migrations/mint-signed-upload-urls.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=\"Request one signed upload URL per file, then PUT each file\u0026#x27;s bytes to its signed_url. Files are workbook-level — not mapped to templates.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Vern Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_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/vern/MeorCT6aaGhS-RJw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Mint signed upload URLs - Vern Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Request one signed upload URL per file, then PUT each file\u0026#x27;s bytes to its signed_url. Files are workbook-level — not mapped to templates.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Vern Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://vern.mintlify.app/_mintlify/api/og/v2?division=Migrations\u0026amp;title=Mint+signed+upload+URLs\u0026amp;description=Request+one+signed+upload+URL+per+file%2C+then+PUT+each+file%27s+bytes+to+its+%60signed_url%60.+Files+are+workbook-level+%E2%80%94+not+mapped+to+templates.\u0026amp;theme=36882be2d6b82b8fbd5b4ff7\u0026amp;signature=e079cdaabb9320abff0ac26593e005fc106434592b34a8dfb5da0c3cd311e3f6\">\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=\"Mint signed upload URLs - Vern Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Request one signed upload URL per file, then PUT each file\u0026#x27;s bytes to its signed_url. Files are workbook-level — not mapped to templates.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://vern.mintlify.app/_mintlify/api/og/v2?division=Migrations\u0026amp;title=Mint+signed+upload+URLs\u0026amp;description=Request+one+signed+upload+URL+per+file%2C+then+PUT+each+file%27s+bytes+to+its+%60signed_url%60.+Files+are+workbook-level+%E2%80%94+not+mapped+to+templates.\u0026amp;theme=36882be2d6b82b8fbd5b4ff7\u0026amp;signature=e079cdaabb9320abff0ac26593e005fc106434592b34a8dfb5da0c3cd311e3f6\">\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/vern/MeorCT6aaGhS-RJw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Vern Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#10B981\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/migrations/mint-signed-upload-urls.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.vern.so/#organization\",\"name\":\"Vern Documentation\",\"url\":\"https://docs.vern.so\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/vern/xEWEVl-f4WbHT-6k/logo/light.svg?fit=max\u0026auto=format\u0026n=xEWEVl-f4WbHT-6k\u0026q=85\u0026s=0935c9d27922ebd917cfce0dcb725e8c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.vern.so#website\",\"name\":\"Vern Documentation\",\"url\":\"https://docs.vern.so\",\"publisher\":{\"@id\":\"https://docs.vern.so/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls#webpage\",\"url\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls\",\"name\":\"Mint signed upload URLs\",\"description\":\"Request one signed upload URL per file, then PUT each file's bytes to its signed_url. Files are workbook-level — not mapped to templates.\",\"dateModified\":\"2026-10-22T07:35:29.146Z\",\"isPartOf\":{\"@id\":\"https://docs.vern.so#website\"},\"breadcrumb\":{\"@id\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Migrations\",\"item\":\"https://docs.vern.so/api-reference/migrations/create-a-migration\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mint signed upload URLs\",\"item\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls#apireference\",\"headline\":\"Mint signed upload URLs\",\"name\":\"Mint signed upload URLs\",\"description\":\"Request one signed upload URL per file, then PUT each file's bytes to its signed_url. Files are workbook-level — not mapped to templates.\",\"url\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls\",\"mainEntityOfPage\":{\"@id\":\"https://docs.vern.so/api-reference/migrations/mint-signed-upload-urls#webpage\"},\"dateModified\":\"2026-10-22T07:35:29.146Z\",\"publisher\":{\"@id\":\"https://docs.vern.so/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.vern.so#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Vern Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Vern Documentation","nav":{"global":null,"tabs":[{"tab":"Guides","icon":"book-open","pages":[{"title":"Guides","href":"/help-center/get-started/introduction"}]},{"tab":"Developer","icon":"terminal","pages":[{"title":"Developer","href":"/migration-api/introduction"}]},{"tab":"API Reference","icon":"code","groups":[{"group":"Overview","pages":[{"title":"API Reference","href":"/api-reference/introduction"}]},{"group":"Catalog","pages":[{"title":"List sources","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /sources","href":"/api-reference/catalog/list-sources"},{"title":"Update a source","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /sources/{source}","href":"/api-reference/catalog/update-a-source"},{"title":"Pin a source's recipe","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /sources/{source}/pin","href":"/api-reference/catalog/pin-a-sources-recipe"},{"title":"List templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /templates","href":"/api-reference/catalog/list-templates"},{"title":"Get a template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /templates/{template_slug}","href":"/api-reference/catalog/get-a-template"},{"title":"Update a template","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /templates/{template_slug}","href":"/api-reference/catalog/update-a-template"},{"title":"Read source knowledge","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /sources/{source}/knowledge","href":"/api-reference/knowledge/read-source-knowledge"},{"title":"Replace source knowledge","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /sources/{source}/knowledge","href":"/api-reference/knowledge/replace-source-knowledge"}]},{"group":"Migrations","pages":[{"title":"Create a migration","description":"Create a migration workspace for one customer — a workbook with one sheet per template. Requires API-key auth specifically. `external_id` makes creation idempotent: re-sending the same one (with the same source) returns the existing migration with a 200.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations","href":"/api-reference/migrations/create-a-migration"},{"title":"Mint signed upload URLs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/files","href":"/api-reference/migrations/mint-signed-upload-urls"},{"title":"List uploaded files","description":"List the customer-uploaded files for the migration.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/files","href":"/api-reference/migrations/list-uploaded-files"},{"title":"Create or update the source connection","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/source-connection","href":"/api-reference/migrations/create-or-update-the-source-connection"},{"title":"Get the source connection","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/source-connection","href":"/api-reference/migrations/get-the-source-connection"},{"title":"Delete the source connection","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json delete /migrations/{migration_id}/source-connection","href":"/api-reference/migrations/delete-the-source-connection"},{"title":"Read customer knowledge","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/knowledge","href":"/api-reference/knowledge/read-customer-knowledge"},{"title":"Replace customer knowledge","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /migrations/{migration_id}/knowledge","href":"/api-reference/knowledge/replace-customer-knowledge"}]},{"group":"Runs","pages":[{"title":"Start a run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/runs","href":"/api-reference/runs/start-a-run"},{"title":"Poll a run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/runs/{run_id}","href":"/api-reference/runs/poll-a-run"},{"title":"Cancel a run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /migrations/{migration_id}/runs/{run_id}","href":"/api-reference/runs/cancel-a-run"},{"title":"Answer a blocked run","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/runs/{run_id}/messages","href":"/api-reference/runs/answer-a-blocked-run"},{"title":"Submit source credentials","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/runs/{run_id}/credentials","href":"/api-reference/runs/submit-source-credentials"},{"title":"Get the preview","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/preview","href":"/api-reference/runs/get-the-preview"},{"title":"Get the thread (snapshot)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/thread","href":"/api-reference/runs/get-the-thread-snapshot"},{"title":"Stream the thread (SSE)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/thread/stream","href":"/api-reference/runs/stream-the-thread-sse"},{"title":"Get the session log","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/log","href":"/api-reference/log/get-the-session-log"}]},{"group":"Export","pages":[{"title":"Export a sheet as CSV","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/exports/{file}","href":"/api-reference/export/export-a-sheet-as-csv"},{"title":"Start an export","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /migrations/{migration_id}/exports","href":"/api-reference/exports/start-an-export"},{"title":"Poll an export job","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /migrations/{migration_id}/exports/jobs/{job_id}","href":"/api-reference/exports/poll-an-export-job"}]}]}]},"basePath":"","title":"Mint signed upload URLs - Vern Documentation","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-m07pfKpT.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}