Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The code is one of the project’s non-default locales — see List localizations.
Unit path → translated text. Only the listed units change; a blank value keeps the existing translation. Every path must be one the version currently has (read them first) — unknown paths are rejected, not dropped. Saving re-bases the WHOLE translation's drift tracking on the current source text, so send every unit you intend to fix for this locale in ONE request.
When the translation was last saved; null when it was never saved.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Usertour documention","colors":{"primary":"#0D9373","light":"#07C983","dark":"#0D9373"},"logo":{"light":"https://mintcdn.com/usertour/fGy2waOqk2YYQ2QK/logo-dark.svg?fit=max\u0026auto=format\u0026n=fGy2waOqk2YYQ2QK\u0026q=85\u0026s=841070ff620cff55401ec69cfc514e27","dark":"https://mintcdn.com/usertour/fGy2waOqk2YYQ2QK/logo-light.svg?fit=max\u0026auto=format\u0026n=fGy2waOqk2YYQ2QK\u0026q=85\u0026s=28f06f1ac3d117bd77837574e801ed7b","href":"https://www.usertour.io/"},"favicon":"https://mintcdn.com/usertour/nYBy6MD0LzNhBLol/images/favicon.png?fit=max\u0026auto=format\u0026n=nYBy6MD0LzNhBLol\u0026q=85\u0026s=2d933e312d87107d569af0615a00225b","api":{"playground":{"display":"simple"}},"navbar":{"links":[{"href":"mailto:support@usertour.io","label":"Support"}]},"footer":{"socials":{"x":"https://x.com/usertourio","github":"https://github.com/usertour/usertour","discord":"https://discord.gg/WPVJPX8fJh"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"usertour","hasAudioNarration":false,"actualSubdomain":"usertour","customDomains":["docs.usertour.io"],"gitSource":{"type":"github","owner":"usertour","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae457b0f07304f334661ff9","collectionId":"54f391ea-697b-4bbd-b9b7-0e3285667723","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae457b0f07304f334661ff9"},"entitlements":{},"buildId":"6ae457b0f07304f334661ff9","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"API Reference","count":92},{"language":"default","tag":"Endpoints","count":79},{"language":"default","tag":"Documentation","count":48},{"language":"default","tag":"API Reference (v1)","count":37},{"language":"default","tag":"Usertour.js Reference","count":31},{"language":"default","tag":"How-to Guides","count":30},{"language":"default","tag":"Self-Hosting","count":20},{"language":"default","tag":"Content","count":15},{"language":"default","tag":"Users","count":14},{"language":"default","tag":"Companies","count":13}]},"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},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/content-versions/update-a-translation","slug":"/api-reference/content-versions/update-a-translation","pageMetadata":{"title":"Update a translation","description":"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The `code` is one of the project's non-default locales — see List localizations.","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/content/{contentId}/versions/{versionId}/localizations/{code}","href":"/api-reference/content-versions/update-a-translation","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: [\"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The \", _jsx(_components.code, {\n children: \"code\"\n }), \" is one of the project’s non-default locales — see List localizations.\"]\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 translation","description":"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The `code` is one of the project's non-default locales — see List localizations.","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/content/{contentId}/versions/{versionId}/localizations/{code}","href":"/api-reference/content-versions/update-a-translation","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"ApiVersionLocalizationsController_update","summary":"Update a translation","description":"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The `code` is one of the project's non-default locales — see List localizations.","parameters":["ee70fc11-668f-4ebd-a32b-f79d3e6641b4","c45a951b-fcd4-41d5-a740-86bf3c6d2199","8b0717e3-c21e-4f2d-8882-0a597e0e0382","f51aaf1b-041f-4ab4-8b56-d22e65733de9"],"requestBody":"933f6c6b-de13-469f-8032-3ce41b9f2135","responses":{"200":"b584ad04-af20-4826-a163-47f8a0ead093","400":"daeab190-7e60-4399-bac2-27d29a125546","401":"f4df5a52-4128-4037-8ef7-5ebcf05a6e93","403":"4c9c3a6c-9b87-4cf6-a64b-0df25356bbd9","404":"218bf855-6f5c-4ead-bbcb-67c4f9b90c1f","409":"baa9a8d1-1ffd-47d9-bdab-1ca228691df6","429":"8000e0e0-52dc-4cc6-b7a0-8fd47934cbcc"},"tags":["Content versions"],"security":["75614498-1d9e-4ca1-90bd-37b5288d29d0"],"method":"put","type":"path","servers":["ae7053da-bd87-4bef-9f34-b1cef7f5e8a1"],"path":"/v2/projects/{projectId}/content/{contentId}/versions/{versionId}/localizations/{code}","baseUrlOptions":["https://api.usertour.io"],"title":"Update a translation","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"ee70fc11-668f-4ebd-a32b-f79d3e6641b4":{"name":"projectId","required":true,"in":"path","description":"Project ID","schema":{"type":"string","isRequired":true,"description":"Project ID","uniqueKey":"","typeLabel":"string"}},"c45a951b-fcd4-41d5-a740-86bf3c6d2199":{"name":"contentId","required":true,"in":"path","description":"Content ID","schema":{"type":"string","isRequired":true,"description":"Content ID","uniqueKey":"","typeLabel":"string"}},"8b0717e3-c21e-4f2d-8882-0a597e0e0382":{"name":"versionId","required":true,"in":"path","description":"Content version ID","schema":{"type":"string","isRequired":true,"description":"Content version ID","uniqueKey":"","typeLabel":"string"}},"f51aaf1b-041f-4ab4-8b56-d22e65733de9":{"name":"code","required":true,"in":"path","description":"Localization code (not the default locale)","schema":{"type":"string","isRequired":true,"description":"Localization code (not the default locale)","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"translations":{"description":"Unit path → translated text. Only the listed units change; a blank value keeps the existing translation. Every path must be one the version currently has (read them first) — unknown paths are rejected, not dropped. Saving re-bases the WHOLE translation's drift tracking on the current source text, so send every unit you intend to fix for this locale in ONE request.","type":"object","additionalProperties":{"type":"string","uniqueKey":"translations.additionalProperties","typeLabel":"string"},"uniqueKey":"translations","typeLabel":"object"},"enabled":{"description":"Deliver this translation (true) or fall back to the source language (false). Sent alone it only flips the switch and leaves the translation untouched.","type":"boolean","uniqueKey":"enabled","typeLabel":"boolean"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"translations":{},"enabled":true}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"b584ad04-af20-4826-a163-47f8a0ead093":{"description":"Updated translation","content":{"application/json":{"schema":{"type":"object","properties":{"object":{"type":"string","enum":["contentVersionLocalization"],"isRequired":true,"uniqueKey":"object","typeLabel":"enum\u003cstring>"},"versionId":{"type":"string","isRequired":true,"uniqueKey":"versionId","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"enabled":{"type":"boolean","description":"Whether this translation is delivered. A disabled (or missing) translation means users of that locale see the source language.","isRequired":true,"uniqueKey":"enabled","typeLabel":"boolean"},"stats":{"type":"object","properties":{"total":{"type":"number","description":"Number of translatable units in the version.","uniqueKey":"stats.total","typeLabel":"number"},"missing":{"type":"number","description":"Required (non-optional) units with no translation.","uniqueKey":"stats.missing","typeLabel":"number"},"outdated":{"type":"number","description":"Translated units whose source text changed since.","uniqueKey":"stats.outdated","typeLabel":"number"}},"isRequired":true,"uniqueKey":"stats","typeLabel":"object"},"units":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string","description":"Stable address of this text within the version. Echo it as the key in `translations` when writing. Flow units are `steps/\u003cstep cvid>/\u003cunit path>`.","isRequired":true,"uniqueKey":"units.items.[INDEX].path","typeLabel":"string"},"source":{"type":"string","description":"The text in the source language.","isRequired":true,"uniqueKey":"units.items.[INDEX].source","typeLabel":"string"},"translation":{"type":"string","description":"The current translation, or \"\" when untranslated.","isRequired":true,"uniqueKey":"units.items.[INDEX].translation","typeLabel":"string"},"kind":{"type":"string","enum":["text","destination","media"],"description":"What the value is. `text`: copy to translate. `destination`: a link / button / task navigation target — swap it for the locale-specific page or leave it empty to keep the source; any string the host can route, a relative path included. `media`: an image / embed URL — swap it or leave it empty; must be an absolute http(s) URL.","isRequired":true,"uniqueKey":"units.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"optional":{"type":"boolean","description":"Derived from `kind`: true for destinations and media — they may be swapped per locale but count as neither text to translate nor \"missing\" when left empty.","isRequired":true,"uniqueKey":"units.items.[INDEX].optional","typeLabel":"boolean"},"outdated":{"type":"boolean","description":"true when the source text changed after this translation was saved — the translation still ships, but it was written against older source text and should be re-reviewed.","isRequired":true,"uniqueKey":"units.items.[INDEX].outdated","typeLabel":"boolean"}},"required":["path","source","translation","kind","optional","outdated"],"uniqueKey":"units.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"units","typeLabel":"object[]"},"updatedAt":{"oneOf":[{"type":"string","format":"date-time","description":"When the translation was last saved; null when it was never saved.","isRequired":true,"uniqueKey":"updatedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When the translation was last saved; null when it was never saved.","isRequired":true,"uniqueKey":"updatedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"updatedAt","typeLabel":"string\u003cdate-time> | null"}},"required":["object","versionId","code","name","enabled","stats","units","updatedAt"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"object":"contentVersionLocalization","versionId":"\u003cstring>","code":"\u003cstring>","name":"\u003cstring>","enabled":true,"stats":{"total":123,"missing":123,"outdated":123},"units":[{"path":"\u003cstring>","source":"\u003cstring>","translation":"\u003cstring>","kind":"text","optional":true,"outdated":true}],"updatedAt":"2023-11-07T05:31:56Z"}}},"exampleType":"generated"}},"exampleType":"generated"},"daeab190-7e60-4399-bac2-27d29a125546":{"description":"Invalid request — E1017 validation (may carry `issues`; an invalid orderBy/limit is also E1017), E1015 invalid scope, E0003 invalid against current domain state.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. E1017). Match on this, never on `message`.","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable summary. Wording may change between releases.","uniqueKey":"error.message","typeLabel":"string"},"issues":{"description":"Validation errors (E1017) may carry one entry per problem so every field can be fixed in a single round-trip. Absent on other errors.","type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"Which validation layer rejected it: schema | reactive_condition | action_not_allowed | step_shape | reference_target | auto_start | media_url | destination_url. New values may be added; treat an unknown value as a generic validation failure.","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path into the request body (e.g. `steps[0].triggers[0].when[1]`).","type":"string","uniqueKey":"error.issues.items.[INDEX].path","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.issues","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Base URL of the API documentation.","uniqueKey":"error.doc_url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","issues":[{"rule":"\u003cstring>","message":"\u003cstring>","path":"\u003cstring>"}],"doc_url":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"f4df5a52-4128-4037-8ef7-5ebcf05a6e93":{"description":"Missing or expired API key — E1010, E1020.","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. E1017). Match on this, never on `message`.","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable summary. Wording may change between releases.","uniqueKey":"error.message","typeLabel":"string"},"issues":{"description":"Validation errors (E1017) may carry one entry per problem so every field can be fixed in a single round-trip. Absent on other errors.","type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"Which validation layer rejected it: schema | reactive_condition | action_not_allowed | step_shape | reference_target | auto_start | media_url | destination_url. New values may be added; treat an unknown value as a generic validation failure.","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path into the request body (e.g. `steps[0].triggers[0].when[1]`).","type":"string","uniqueKey":"error.issues.items.[INDEX].path","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.issues","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Base URL of the API documentation.","uniqueKey":"error.doc_url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","issues":[{"rule":"\u003cstring>","message":"\u003cstring>","path":"\u003cstring>"}],"doc_url":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"4c9c3a6c-9b87-4cf6-a64b-0df25356bbd9":{"description":"Refused — E1000 invalid key, E1011 project not in token scope, E1012 insufficient scope, E1029 environment not in token scope, E1032 environment creation needs a token without env-targeted capabilities (its allowlist cannot cover a not-yet-existing environment), E0043 the project's plan does not include the feature (e.g. webhooks require a paid plan on cloud).","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. E1017). Match on this, never on `message`.","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable summary. Wording may change between releases.","uniqueKey":"error.message","typeLabel":"string"},"issues":{"description":"Validation errors (E1017) may carry one entry per problem so every field can be fixed in a single round-trip. Absent on other errors.","type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"Which validation layer rejected it: schema | reactive_condition | action_not_allowed | step_shape | reference_target | auto_start | media_url | destination_url. New values may be added; treat an unknown value as a generic validation failure.","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path into the request body (e.g. `steps[0].triggers[0].when[1]`).","type":"string","uniqueKey":"error.issues.items.[INDEX].path","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.issues","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Base URL of the API documentation.","uniqueKey":"error.doc_url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","issues":[{"rule":"\u003cstring>","message":"\u003cstring>","path":"\u003cstring>"}],"doc_url":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"218bf855-6f5c-4ead-bbcb-67c4f9b90c1f":{"description":"Content version or localization not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. E1017). Match on this, never on `message`.","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable summary. Wording may change between releases.","uniqueKey":"error.message","typeLabel":"string"},"issues":{"description":"Validation errors (E1017) may carry one entry per problem so every field can be fixed in a single round-trip. Absent on other errors.","type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"Which validation layer rejected it: schema | reactive_condition | action_not_allowed | step_shape | reference_target | auto_start | media_url | destination_url. New values may be added; treat an unknown value as a generic validation failure.","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path into the request body (e.g. `steps[0].triggers[0].when[1]`).","type":"string","uniqueKey":"error.issues.items.[INDEX].path","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.issues","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Base URL of the API documentation.","uniqueKey":"error.doc_url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","issues":[{"rule":"\u003cstring>","message":"\u003cstring>","path":"\u003cstring>"}],"doc_url":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"baa9a8d1-1ffd-47d9-bdab-1ca228691df6":{"description":"E0049 the version is published (read-only — fork an editable draft first).","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. E1017). Match on this, never on `message`.","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable summary. Wording may change between releases.","uniqueKey":"error.message","typeLabel":"string"},"issues":{"description":"Validation errors (E1017) may carry one entry per problem so every field can be fixed in a single round-trip. Absent on other errors.","type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"Which validation layer rejected it: schema | reactive_condition | action_not_allowed | step_shape | reference_target | auto_start | media_url | destination_url. New values may be added; treat an unknown value as a generic validation failure.","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path into the request body (e.g. `steps[0].triggers[0].when[1]`).","type":"string","uniqueKey":"error.issues.items.[INDEX].path","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.issues","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Base URL of the API documentation.","uniqueKey":"error.doc_url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","issues":[{"rule":"\u003cstring>","message":"\u003cstring>","path":"\u003cstring>"}],"doc_url":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"8000e0e0-52dc-4cc6-b7a0-8fd47934cbcc":{"description":"Rate limit exceeded — E1013. The limit follows the project's plan (100/500/1000/3000 requests per minute); unknown credentials share a per-IP bucket. Every response also carries X-RateLimit-Limit / -Remaining / -Reset for pacing; a 429 adds the standard Retry-After header (seconds to back off).","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"code":{"type":"string","description":"Stable machine-readable code (e.g. E1017). Match on this, never on `message`.","uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable summary. Wording may change between releases.","uniqueKey":"error.message","typeLabel":"string"},"issues":{"description":"Validation errors (E1017) may carry one entry per problem so every field can be fixed in a single round-trip. Absent on other errors.","type":"array","items":{"type":"object","properties":{"rule":{"type":"string","description":"Which validation layer rejected it: schema | reactive_condition | action_not_allowed | step_shape | reference_target | auto_start | media_url | destination_url. New values may be added; treat an unknown value as a generic validation failure.","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].rule","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.issues.items.[INDEX].message","typeLabel":"string"},"path":{"description":"Path into the request body (e.g. `steps[0].triggers[0].when[1]`).","type":"string","uniqueKey":"error.issues.items.[INDEX].path","typeLabel":"string"}},"required":["rule","message"],"uniqueKey":"error.issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.issues","typeLabel":"object[]"},"doc_url":{"type":"string","description":"Base URL of the API documentation.","uniqueKey":"error.doc_url","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"\u003cstring>","message":"\u003cstring>","issues":[{"rule":"\u003cstring>","message":"\u003cstring>","path":"\u003cstring>"}],"doc_url":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"75614498-1d9e-4ca1-90bd-37b5288d29d0":{"bearer":{"scheme":"bearer","bearerFormat":"utp_... personal API token (opaque)","type":"http","scopes":[],"schemeName":"bearer"}}},"servers":{"ae7053da-bd87-4bef-9f34-b1cef7f5e8a1":{"url":"https://api.usertour.io"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"scheme":"bearer","bearerFormat":"utp_... personal API token (opaque)","type":"http","scopes":[],"schemeName":"bearer"},"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":"bearer","name":"Authorization"}],"title":"bearer"}]},"originalFileLocation":"api-reference-v2/openapi.json"},"subdomain":"usertour","siteName":"Usertour documention","title":"Update a translation - Usertour documention","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T03:07:03.904Z","originalFileLocation":"api-reference/content-versions/update-a-translation.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=\"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The code is one of the project\u0026#x27;s non-default locales — see List localizations.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Usertour documention\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_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/usertour/vM2wRfIVfuMnzscJ/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update a translation - Usertour documention\">\u003cmeta data-mint-head property=\"og:description\" content=\"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The code is one of the project\u0026#x27;s non-default locales — see List localizations.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Usertour documention\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.usertour.io/api-reference/content-versions/update-a-translation\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://usertour.mintlify.app/_mintlify/api/og/v2?division=Content+versions\u0026amp;title=Update+a+translation\u0026amp;description=Write+translations+by+unit+path+and%2For+switch+delivery+on+or+off.+Only+an+editable+draft+accepts+translations+%E2%80%94+fork+a+published+version+first+%28the+fork+carries\u0026amp;theme=e8ff6aa64680886dad37379c\u0026amp;signature=6c7449ce377c4dd682311253d04a07a394a6c11f299098f27f4429fcfb2ec2f1\">\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 translation - Usertour documention\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The code is one of the project\u0026#x27;s non-default locales — see List localizations.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://usertour.mintlify.app/_mintlify/api/og/v2?division=Content+versions\u0026amp;title=Update+a+translation\u0026amp;description=Write+translations+by+unit+path+and%2For+switch+delivery+on+or+off.+Only+an+editable+draft+accepts+translations+%E2%80%94+fork+a+published+version+first+%28the+fork+carries\u0026amp;theme=e8ff6aa64680886dad37379c\u0026amp;signature=6c7449ce377c4dd682311253d04a07a394a6c11f299098f27f4429fcfb2ec2f1\">\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/usertour/vM2wRfIVfuMnzscJ/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Usertour documention\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0D9373\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.usertour.io/api-reference/content-versions/update-a-translation\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/content-versions/update-a-translation.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.usertour.io/#organization\",\"name\":\"Usertour documention\",\"url\":\"https://docs.usertour.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/usertour/fGy2waOqk2YYQ2QK/logo-dark.svg?fit=max\u0026auto=format\u0026n=fGy2waOqk2YYQ2QK\u0026q=85\u0026s=841070ff620cff55401ec69cfc514e27\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.usertour.io#website\",\"name\":\"Usertour documention\",\"url\":\"https://docs.usertour.io\",\"publisher\":{\"@id\":\"https://docs.usertour.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation#webpage\",\"url\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation\",\"name\":\"Update a translation\",\"description\":\"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The code is one of the project's non-default locales — see List localizations.\",\"dateModified\":\"2026-10-08T03:07:03.904Z\",\"isPartOf\":{\"@id\":\"https://docs.usertour.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.usertour.io/api-reference/analytics/get-content-analytics\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Content versions\",\"item\":\"https://docs.usertour.io/api-reference/content-versions/list-content-versions\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update a translation\",\"item\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation#apireference\",\"headline\":\"Update a translation\",\"name\":\"Update a translation\",\"description\":\"Write translations by unit path and/or switch delivery on or off. Only an editable draft accepts translations — fork a published version first (the fork carries every translation with it). Translations merge onto the stored ones server-side; the response is the full translation as now stored. The code is one of the project's non-default locales — see List localizations.\",\"url\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation\",\"mainEntityOfPage\":{\"@id\":\"https://docs.usertour.io/api-reference/content-versions/update-a-translation#webpage\"},\"dateModified\":\"2026-10-08T03:07:03.904Z\",\"publisher\":{\"@id\":\"https://docs.usertour.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.usertour.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Usertour documention\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Usertour documention","nav":{"global":null,"anchors":[{"anchor":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/build-onboarding-with-ai"}]},{"anchor":"Usertour.js Reference","icon":"connectdevelop","pages":[{"title":"Usertour.js Reference","href":"/developers/usertourjs-reference/overview"}]},{"anchor":"API Reference","icon":"terminal","groups":[{"group":"Getting started","pages":[{"title":"Introduction","href":"/api-reference-v2/introduction"},{"title":"Authentication","href":"/api-reference-v2/authentication"},{"title":"Errors","href":"/api-reference-v2/errors"},{"title":"MCP server","href":"/api-reference-v2/mcp"}]},{"group":"Conventions","pages":[{"title":"Pagination","href":"/api-reference-v2/pagination"},{"title":"Ordering","href":"/api-reference-v2/ordering"},{"title":"Expanding objects","href":"/api-reference-v2/expanding-objects"},{"title":"Attributes","href":"/api-reference-v2/attributes"}]},{"group":"Concepts","pages":[{"title":"Content representation","href":"/api-reference-v2/content-representation"},{"title":"Blocks","href":"/api-reference-v2/blocks"},{"title":"Conditions \u0026 actions","href":"/api-reference-v2/conditions-and-actions"},{"title":"Start, hide \u0026 trigger rules","href":"/api-reference-v2/rules"},{"title":"Type-specific data","href":"/api-reference-v2/type-data"}]},{"group":"Endpoints","pages":[{"group":"Analytics","pages":[{"title":"Get content analytics","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{id}/analytics","href":"/api-reference/analytics/get-content-analytics"},{"title":"Get question analytics","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{id}/analytics/questions","href":"/api-reference/analytics/get-question-analytics"}]},{"group":"Content","pages":[{"title":"List content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content","href":"/api-reference/content/list-content"},{"title":"Create content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content","href":"/api-reference/content/create-content"},{"title":"Get content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{id}","href":"/api-reference/content/get-content"},{"title":"Delete content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/content/{id}","href":"/api-reference/content/delete-content"},{"title":"Update content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/content/{id}","href":"/api-reference/content/update-content"},{"title":"Restore deleted content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content/{id}/restore","href":"/api-reference/content/restore-deleted-content"},{"title":"Duplicate content","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content/{id}/duplicate","href":"/api-reference/content/duplicate-content"},{"title":"Publish a version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content/{id}/publish","href":"/api-reference/content/publish-a-version"},{"title":"Unpublish a version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content/{id}/unpublish","href":"/api-reference/content/unpublish-a-version"}]},{"group":"Content versions","pages":[{"title":"List content versions","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{contentId}/versions","href":"/api-reference/content-versions/list-content-versions"},{"title":"Create a content version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content/{contentId}/versions","href":"/api-reference/content-versions/create-a-content-version"},{"title":"Get a content version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{contentId}/versions/{id}","href":"/api-reference/content-versions/get-a-content-version"},{"title":"Update a content version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/content/{contentId}/versions/{id}","href":"/api-reference/content-versions/update-a-content-version"},{"title":"Validate a content version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{contentId}/versions/{id}/validate","href":"/api-reference/content-versions/validate-a-content-version"},{"title":"Restore a content version","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/content/{contentId}/versions/{id}/restore","href":"/api-reference/content-versions/restore-a-content-version"},{"title":"Get a translation","description":"Every translatable unit of the version for one locale: source text, current translation, and whether the source changed since it was translated (`outdated`). A locale that was never translated returns all units with empty translations. The `code` is one of the project's non-default locales — see List localizations.","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/content/{contentId}/versions/{versionId}/localizations/{code}","href":"/api-reference/content-versions/get-a-translation"},{"title":"Update a translation","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/content/{contentId}/versions/{versionId}/localizations/{code}","href":"/api-reference/content-versions/update-a-translation"}]},{"group":"Themes","pages":[{"title":"List themes","description":null,"deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/themes","href":"/api-reference/themes/list-themes"},{"title":"Create a theme","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/themes","href":"/api-reference/themes/create-a-theme"},{"title":"Get a theme","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/themes/{id}","href":"/api-reference/themes/get-a-theme"},{"title":"Delete a theme","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/themes/{id}","href":"/api-reference/themes/delete-a-theme"},{"title":"Update a theme","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/themes/{id}","href":"/api-reference/themes/update-a-theme"},{"title":"Duplicate a theme","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/themes/{id}/duplicate","href":"/api-reference/themes/duplicate-a-theme"},{"title":"Restore a deleted theme","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/themes/{id}/restore","href":"/api-reference/themes/restore-a-deleted-theme"}]},{"group":"Users","pages":[{"title":"List users","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/users","href":"/api-reference/users/list-users"},{"title":"Get a user","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/users/{id}","href":"/api-reference/users/get-a-user"},{"title":"Create or update a user","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/environments/{environmentId}/users/{id}","href":"/api-reference/users/create-or-update-a-user"},{"title":"Delete a user","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{environmentId}/users/{id}","href":"/api-reference/users/delete-a-user"}]},{"group":"Companies","pages":[{"title":"List companies","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/companies","href":"/api-reference/companies/list-companies"},{"title":"Get a company","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/companies/{id}","href":"/api-reference/companies/get-a-company"},{"title":"Create or update a company","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/environments/{environmentId}/companies/{id}","href":"/api-reference/companies/create-or-update-a-company"},{"title":"Delete a company","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{environmentId}/companies/{id}","href":"/api-reference/companies/delete-a-company"},{"title":"Add a company member","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/environments/{environmentId}/companies/{id}/memberships/{userId}","href":"/api-reference/companies/add-a-company-member"},{"title":"Remove a company member","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{environmentId}/companies/{id}/memberships/{userId}","href":"/api-reference/companies/remove-a-company-member"}]},{"group":"Segments","pages":[{"title":"List segments","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/segments","href":"/api-reference/segments/list-segments"},{"title":"Create a segment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/segments","href":"/api-reference/segments/create-a-segment"},{"title":"Get a segment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/segments/{id}","href":"/api-reference/segments/get-a-segment"},{"title":"Delete a segment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/segments/{id}","href":"/api-reference/segments/delete-a-segment"},{"title":"Update a segment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/segments/{id}","href":"/api-reference/segments/update-a-segment"},{"title":"Restore a deleted segment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/segments/{id}/restore","href":"/api-reference/segments/restore-a-deleted-segment"},{"title":"Add a segment member","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json put /v2/projects/{projectId}/environments/{environmentId}/segments/{id}/members/{externalId}","href":"/api-reference/segments/add-a-segment-member"},{"title":"Remove a segment member","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{environmentId}/segments/{id}/members/{externalId}","href":"/api-reference/segments/remove-a-segment-member"}]},{"group":"Sessions","pages":[{"title":"List sessions","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/sessions","href":"/api-reference/sessions/list-sessions"},{"title":"Get a session","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/sessions/{id}","href":"/api-reference/sessions/get-a-session"},{"title":"Delete a session","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{environmentId}/sessions/{id}","href":"/api-reference/sessions/delete-a-session"},{"title":"End a session","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/environments/{environmentId}/sessions/{id}/end","href":"/api-reference/sessions/end-a-session"}]},{"group":"Attribute definitions","pages":[{"title":"List attribute definitions","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/attribute-definitions","href":"/api-reference/attribute-definitions/list-attribute-definitions"},{"title":"Create an attribute definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/attribute-definitions","href":"/api-reference/attribute-definitions/create-an-attribute-definition"},{"title":"Get an attribute definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/attribute-definitions/{id}","href":"/api-reference/attribute-definitions/get-an-attribute-definition"},{"title":"Delete an attribute definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/attribute-definitions/{id}","href":"/api-reference/attribute-definitions/delete-an-attribute-definition"},{"title":"Update an attribute definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/attribute-definitions/{id}","href":"/api-reference/attribute-definitions/update-an-attribute-definition"},{"title":"Restore a deleted attribute definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/attribute-definitions/{id}/restore","href":"/api-reference/attribute-definitions/restore-a-deleted-attribute-definition"}]},{"group":"Event definitions","pages":[{"title":"List event definitions","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/event-definitions","href":"/api-reference/event-definitions/list-event-definitions"},{"title":"Create an event definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/event-definitions","href":"/api-reference/event-definitions/create-an-event-definition"},{"title":"Get an event definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/event-definitions/{id}","href":"/api-reference/event-definitions/get-an-event-definition"},{"title":"Delete an event definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/event-definitions/{id}","href":"/api-reference/event-definitions/delete-an-event-definition"},{"title":"Update an event definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/event-definitions/{id}","href":"/api-reference/event-definitions/update-an-event-definition"},{"title":"Restore a deleted event definition","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/event-definitions/{id}/restore","href":"/api-reference/event-definitions/restore-a-deleted-event-definition"}]},{"group":"Webhooks","pages":[{"title":"List webhooks","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/webhooks","href":"/api-reference/webhooks/list-webhooks"},{"title":"Create a webhook","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/environments/{environmentId}/webhooks","href":"/api-reference/webhooks/create-a-webhook"},{"title":"Get a webhook (includes the signing secret for webhook:manage tokens)","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{environmentId}/webhooks/{id}","href":"/api-reference/webhooks/get-a-webhook-includes-the-signing-secret-for-webhook:manage-tokens"},{"title":"Delete a webhook","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{environmentId}/webhooks/{id}","href":"/api-reference/webhooks/delete-a-webhook"},{"title":"Update a webhook","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/environments/{environmentId}/webhooks/{id}","href":"/api-reference/webhooks/update-a-webhook"},{"title":"Rotate the signing secret","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/environments/{environmentId}/webhooks/{id}/rotate-secret","href":"/api-reference/webhooks/rotate-the-signing-secret"}]},{"group":"Me","pages":[{"title":"Introspect the token","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/me","href":"/api-reference/me/introspect-the-token"}]},{"group":"Localizations","pages":[{"title":"List locales","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/locales","href":"/api-reference/localizations/list-locales"},{"title":"List localizations","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/localizations","href":"/api-reference/localizations/list-localizations"},{"title":"Create a localization","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/localizations","href":"/api-reference/localizations/create-a-localization"},{"title":"Delete a localization","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/localizations/{id}","href":"/api-reference/localizations/delete-a-localization"},{"title":"Update a localization","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/localizations/{id}","href":"/api-reference/localizations/update-a-localization"},{"title":"Restore a deleted localization","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/localizations/{id}/restore","href":"/api-reference/localizations/restore-a-deleted-localization"}]},{"group":"Events","pages":[{"title":"Track an event","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/environments/{environmentId}/events","href":"/api-reference/events/track-an-event"}]},{"group":"Environments","pages":[{"title":"List environments","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments","href":"/api-reference/environments/list-environments"},{"title":"Create an environment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json post /v2/projects/{projectId}/environments","href":"/api-reference/environments/create-an-environment"},{"title":"Get an environment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json get /v2/projects/{projectId}/environments/{id}","href":"/api-reference/environments/get-an-environment"},{"title":"Delete an environment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json delete /v2/projects/{projectId}/environments/{id}","href":"/api-reference/environments/delete-an-environment"},{"title":"Update an environment","deprecated":null,"version":null,"openapi":"/api-reference-v2/openapi.json patch /v2/projects/{projectId}/environments/{id}","href":"/api-reference/environments/update-an-environment"}]}]}]},{"anchor":"Self-Hosting","icon":"github","pages":[{"title":"Self-Hosting","href":"/open-source/self-hosting"}]},{"anchor":"Use Cases","icon":"route","pages":[{"title":"Use Cases","href":"/use-cases/analyze-onboarding-with-ai"}]},{"anchor":"API Reference (v1)","icon":"terminal","pages":[{"title":"API Reference (v1)","href":"/api-reference/introduction"}]},{"anchor":"Changelog","icon":"clock-rotate-left","pages":[{"title":"Changelog","href":"/changelog/2026"}]}]},"basePath":"","title":"Update a translation - Usertour documention","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","Page-Buji1S4J.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js","Markdown-h4cOoD8d.js","clsx-B2v50t8t.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DJnKvr0g.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BHrrjR1K.js"]}