Partial update of an active template. The slug is frozen — renaming changes only the display name, never the address. columns is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with 409 while a migration that uses the template is running. grouping organises the template list in the dashboard and is not returned by template reads.
{"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":"6ad9bcba8f11a1d912252eae","collectionId":"5f121c8f-8b14-46e6-ba48-05cfa89fb79c","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad9bcba8f11a1d912252eae"},"entitlements":{},"buildId":"6addf340f569cc6b3d4a10a6","clientVersion":"0.0.3965","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":{},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/catalog/update-a-template","slug":"/api-reference/catalog/update-a-template","pageMetadata":{"title":"Update a template","description":"Partial update of an active template. The `slug` is frozen — renaming changes only the display name, never the address. `columns` is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with `409` while a migration that uses the template is running. `grouping` organises the template list in the dashboard and is not returned by template reads.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /templates/{template_slug}","href":"/api-reference/catalog/update-a-template","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: [\"Partial update of an active template. The \", _jsx(_components.code, {\n children: \"slug\"\n }), \" is frozen — renaming changes only the display name, never the address. \", _jsx(_components.code, {\n children: \"columns\"\n }), \" is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with \", _jsx(_components.code, {\n children: \"409\"\n }), \" while a migration that uses the template is running. \", _jsx(_components.code, {\n children: \"grouping\"\n }), \" organises the template list in the dashboard and is not returned by template reads.\"]\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":"Update a template","description":"Partial update of an active template. The `slug` is frozen — renaming changes only the display name, never the address. `columns` is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with `409` while a migration that uses the template is running. `grouping` organises the template list in the dashboard and is not returned by template reads.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /templates/{template_slug}","href":"/api-reference/catalog/update-a-template","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"updateTemplate","summary":"Update a template","description":"Partial update of an active template. The `slug` is frozen — renaming changes only the display name, never the address. `columns` is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with `409` while a migration that uses the template is running. `grouping` organises the template list in the dashboard and is not returned by template reads.","tags":["Catalog"],"parameters":["deae94de-9a25-4635-b591-cd4b9999e332"],"requestBody":"ce65d97d-c365-41e9-8e38-9ac74ef8cbf9","responses":{"200":"c2ce0964-fcd1-4225-89e0-9fadafa2fcc3","400":"7ecaea4a-9787-4fad-8864-dc700add5aff","401":"37f8f2ef-a9e0-4145-8e84-012cdb47c60e","404":"d395d3c3-51f5-486a-aa24-9626190cf0ae","409":"6d92c214-720f-494a-89f8-5eabdc5dd5c7","429":"c1dcc860-066f-4231-80ca-907e7792aa8b"},"method":"patch","type":"path","servers":["c4ccc4f7-91d4-45da-a30a-a259344cad18"],"security":["706e2bc3-a8f5-445d-aa54-75701d3fae02"],"path":"/templates/{template_slug}","baseUrlOptions":["https://app.vern.so/api/v1"],"title":"Update a template","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"deae94de-9a25-4635-b591-cd4b9999e332":{"name":"template_slug","in":"path","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"},"example":"contacts"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","minProperties":1,"properties":{"name":{"type":"string","description":"New display name. Does not change the slug.","uniqueKey":"name","typeLabel":"string"},"description":{"oneOf":[{"type":"string","description":"The template's knowledge / description. `null` clears it.","uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","description":"The template's knowledge / description. `null` clears it.","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"grouping":{"oneOf":[{"type":"string","description":"Free-text group label for the dashboard. `null` clears it.","uniqueKey":"grouping.oneOf.0","typeLabel":"string"},{"type":"null","description":"Free-text group label for the dashboard. `null` clears it.","uniqueKey":"grouping.oneOf.1","typeLabel":"null"}],"uniqueKey":"grouping","typeLabel":"string | null"},"columns":{"type":"array","minItems":1,"description":"Full replacement of the column set.","items":{"type":"object","required":["name"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"columns.items.[INDEX].name","typeLabel":"string"},"description":{"type":"string","uniqueKey":"columns.items.[INDEX].description","typeLabel":"string"},"required":{"type":"boolean","uniqueKey":"columns.items.[INDEX].required","typeLabel":"boolean"},"unique":{"type":"boolean","uniqueKey":"columns.items.[INDEX].unique","typeLabel":"boolean"},"desiredRule":{"type":"string","uniqueKey":"columns.items.[INDEX].desiredRule","typeLabel":"string"},"strictRule":{"type":"string","description":"Regex pattern for strict validation.","uniqueKey":"columns.items.[INDEX].strictRule","typeLabel":"string"}},"uniqueKey":"columns.items.[INDEX]","typeLabel":"object"},"uniqueKey":"columns","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"description":"Suppliers master list. One row per active supplier.","columns":[{"name":"Supplier Name","description":"Legal entity name","required":true},{"name":"ABN","description":"Australian Business Number","required":false,"desiredRule":"strict","strictRule":"^\\d{11}$"}]},"examples":{"Example":{"title":"Example","value":{"description":"Suppliers master list. One row per active supplier.","columns":[{"name":"Supplier Name","description":"Legal entity name","required":true},{"name":"ABN","description":"Australian Business Number","required":false,"desiredRule":"strict","strictRule":"^\\d{11}$"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"c2ce0964-fcd1-4225-89e0-9fadafa2fcc3":{"description":"The updated template.","content":{"application/json":{"schema":{"type":"object","properties":{"slug":{"type":"string","description":"Stable public identifier.","uniqueKey":"slug","typeLabel":"string"},"name":{"type":"string","uniqueKey":"name","typeLabel":"string"},"description":{"oneOf":[{"type":"string","uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"description.oneOf.1","typeLabel":"null"}],"uniqueKey":"description","typeLabel":"string | null"},"columns":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","uniqueKey":"columns.items.[INDEX].name","typeLabel":"string"},"description":{"type":"string","maxLength":500,"description":"What the column holds. At most 500 characters for a new or changed value.","uniqueKey":"columns.items.[INDEX].description","typeLabel":"string"},"required":{"type":"boolean","uniqueKey":"columns.items.[INDEX].required","typeLabel":"boolean"},"unique":{"type":"boolean","uniqueKey":"columns.items.[INDEX].unique","typeLabel":"boolean"},"desiredRule":{"type":"string","enum":["none","ai","strict","link"],"uniqueKey":"columns.items.[INDEX].desiredRule","typeLabel":"enum\u003cstring>"},"strictRule":{"type":"string","description":"Regex the value must match (when desiredRule is strict).","uniqueKey":"columns.items.[INDEX].strictRule","typeLabel":"string"},"linkRule":{"type":"array","items":{"type":"object","properties":{"templateId":{"type":"string","uniqueKey":"columns.items.[INDEX].linkRule.items.[INDEX].templateId","typeLabel":"string"},"columnName":{"type":"string","uniqueKey":"columns.items.[INDEX].linkRule.items.[INDEX].columnName","typeLabel":"string"}},"uniqueKey":"columns.items.[INDEX].linkRule.items.[INDEX]","typeLabel":"object"},"description":"Cross-template references (when desiredRule is link).","uniqueKey":"columns.items.[INDEX].linkRule","typeLabel":"object[]"}},"uniqueKey":"columns.items.[INDEX]","typeLabel":"object"},"uniqueKey":"columns","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"slug":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>","columns":[{"name":"\u003cstring>","description":"\u003cstring>","required":true,"unique":true,"desiredRule":"none","strictRule":"\u003cstring>","linkRule":[{"templateId":"\u003cstring>","columnName":"\u003cstring>"}]}]}}},"exampleType":"generated"}},"exampleType":"generated"},"7ecaea4a-9787-4fad-8864-dc700add5aff":{"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"},"37f8f2ef-a9e0-4145-8e84-012cdb47c60e":{"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"},"d395d3c3-51f5-486a-aa24-9626190cf0ae":{"description":"No active template with this slug in your organisation.","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"},"6d92c214-720f-494a-89f8-5eabdc5dd5c7":{"description":"A migration that uses this template is currently running; edits are refused until it settles.","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"},"c1dcc860-066f-4231-80ca-907e7792aa8b":{"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":"Update a template - Vern Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-22T07:35:29.105Z","originalFileLocation":"api-reference/catalog/update-a-template.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=\"Partial update of an active template. The slug is frozen — renaming changes only the display name, never the address. columns is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with 409 while a migration that uses the template is running. grouping organises the template list in the dashboard and is not returned by template reads.\">\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=\"Update a template - Vern Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Partial update of an active template. The slug is frozen — renaming changes only the display name, never the address. columns is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with 409 while a migration that uses the template is running. grouping organises the template list in the dashboard and is not returned by template reads.\">\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/catalog/update-a-template\">\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=Catalog\u0026amp;title=Update+a+template\u0026amp;description=Partial+update+of+an+active+template.+The+%60slug%60+is+frozen+%E2%80%94+renaming+changes+only+the+display+name%2C+never+the+address.+%60columns%60+is+a+full+replacement+of+the+c\u0026amp;theme=36882be2d6b82b8fbd5b4ff7\u0026amp;signature=d0bcd75cb10bd2ad841fd10e61d8666ab678e9353adb74cf43fbb8ea25bfa840\">\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=\"Update a template - Vern Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Partial update of an active template. The slug is frozen — renaming changes only the display name, never the address. columns is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with 409 while a migration that uses the template is running. grouping organises the template list in the dashboard and is not returned by template reads.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://vern.mintlify.app/_mintlify/api/og/v2?division=Catalog\u0026amp;title=Update+a+template\u0026amp;description=Partial+update+of+an+active+template.+The+%60slug%60+is+frozen+%E2%80%94+renaming+changes+only+the+display+name%2C+never+the+address.+%60columns%60+is+a+full+replacement+of+the+c\u0026amp;theme=36882be2d6b82b8fbd5b4ff7\u0026amp;signature=d0bcd75cb10bd2ad841fd10e61d8666ab678e9353adb74cf43fbb8ea25bfa840\">\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/catalog/update-a-template\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/catalog/update-a-template.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/catalog/update-a-template#webpage\",\"url\":\"https://docs.vern.so/api-reference/catalog/update-a-template\",\"name\":\"Update a template\",\"description\":\"Partial update of an active template. The slug is frozen — renaming changes only the display name, never the address. columns is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with 409 while a migration that uses the template is running. grouping organises the template list in the dashboard and is not returned by template reads.\",\"dateModified\":\"2026-10-22T07:35:29.105Z\",\"isPartOf\":{\"@id\":\"https://docs.vern.so#website\"},\"breadcrumb\":{\"@id\":\"https://docs.vern.so/api-reference/catalog/update-a-template#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.vern.so/api-reference/catalog/update-a-template#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Catalog\",\"item\":\"https://docs.vern.so/api-reference/catalog/list-sources\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Update a template\",\"item\":\"https://docs.vern.so/api-reference/catalog/update-a-template\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.vern.so/api-reference/catalog/update-a-template#apireference\",\"headline\":\"Update a template\",\"name\":\"Update a template\",\"description\":\"Partial update of an active template. The slug is frozen — renaming changes only the display name, never the address. columns is a full replacement of the column set when present; cross-cell rules stored on the template are always preserved. Edits are refused with 409 while a migration that uses the template is running. grouping organises the template list in the dashboard and is not returned by template reads.\",\"url\":\"https://docs.vern.so/api-reference/catalog/update-a-template\",\"mainEntityOfPage\":{\"@id\":\"https://docs.vern.so/api-reference/catalog/update-a-template#webpage\"},\"dateModified\":\"2026-10-22T07:35:29.105Z\",\"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","description":"Fetch one active template by its slug.","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","description":"Durable facts about the source software itself — field meanings, enum codes, export quirks. Seeding this means a run does not relearn what you already know.","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","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","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"}]}]}]},"title":"Update a template - Vern Documentation","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":["c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["OpenApiReferenceProvider-Bbp7I60D.js","utils-C3RIvJha.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DqD-vLt8.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B31Loprg.js","snippetPresets-DKpk-b8t.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-n7I5XbKb.js","ApiExamples-Cj65AhOR.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BXtn5gcC.js","shallow-RY2b03Cp.js","getApiPlaygroundDisplay-B0jeiPk3.js","CodeSnippet-CYgBjjwn.js","CodeSnippets-DOngDrYB.js","getPastedJson-DRQbJx-T.js","icon-CQiQCicY.js","MethodPill-BKTLdNtu.js","DuplicateIcon-B9jpAdat.js","createIcon-DCddRrXv.js","DynamicMarkdown-a8hUKrw6.js","SectionHeading-eECVV2eH.js","axios-vUo_bRtp.js","Markdown--GF7ZIpf.js","clsx-DZLdJUrt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-2LoAhjKH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Zwc0ZncM.js"]}