Versions capture the state of your integration at a specific point in time. They give you a reliable way to track
changes, roll back safely, and deploy with confidence. This guide covers how to create, manage, and deploy versions in
the Versori Platform.
When you save files in the editor, your changes are moved into the latest draft. The latest draft represents the
current working state of your integration. When you deploy, unless deploying froma version, it is the latest draft
that gets deployed — so always ensure your latest draft reflects the state you intend to release.
As your integration evolves — new workflows, updated mappings, revised error handling — you need a way to track what
changed and when. Without versions, every edit overwrites the previous state with no way to recover it.Versions solve this by giving you:
Change history: See exactly what your integration looked like at any point in its development.
Safe rollbacks: Revert to a known working state instantly if a change introduces issues.
Deployment control: Choose precisely which version of your integration runs in each environment.
Team coordination: Give collaborators a clear record of what changed and why through version names and
descriptions.
Audit trail: Maintain a log of how your integration has evolved over time for compliance and troubleshooting.
Create versions frequently — especially before and after significant changes. Treat them like save points that you
can return to at any time.
A version requires a name and accepts an optional description. The name identifies the version at a glance,
while the description provides a summary of what changed — making it easier to understand the purpose of each version
when reviewing history.
Versions are shared across all available environments and can be deployed to any environment.
You can create a version at any point during the development of your integration. This is useful when you want to
checkpoint your work before making a large change, or when you reach a stable milestone worth preserving.
1
Open the Version History popover
Navigate to your project and select the Version History popover in the header.
The Version History popover shows all versions with their status and deployment info
2
Create a new version
Click +, enter a name for the version, and optionally provide a description summarising the changes included.
Enter a name and optional description for the new version
3
Confirm the version
The version is created as a snapshot of the current integration state. You can continue developing without affecting
the saved version.
Use the description field to record the reason for the version — for example, “Added retry logic to order sync
workflow” or “Fixed field mapping for customer addresses”. This context is invaluable when reviewing versions later.
When you deploy an integration, a new version is automatically created. This ensures every deployment is tied to a
specific, immutable snapshot of your integration code and configuration.You do not need to create a version manually before deploying — the platform handles it for you. However, you are still
prompted to provide a name and optional description so the deployment version is clearly identifiable.
Deploying creates a new version automatically — you provide the name and description at deploy time
Even though versions are created automatically on deployment, you can still create manual versions at any time.
Manual versions are useful for checkpointing work-in-progress that you are not yet ready to deploy.
You can switch between any previously created version to review its state or restore it as the active working version.
This is particularly useful when comparing changes across versions or when you need to return to an earlier
implementation.
1
Select a version
Choose the version you want to switch to. You can use the name and description to identify the correct version.
2
Review or restore
Review the integration state captured in that version. If you want to you can continue working from this version.
If a recent change causes issues — failed executions, incorrect data mappings, or unexpected behaviour — you can roll
back to a previous version to restore a known working state.Rolling back replaces the current integration state with the selected version. This is the fastest way to recover from a
problematic change without manually undoing edits.
Rolling back does not delete any versions. All previously created versions remain available, including the one you
rolled back from. You can always switch forward again if needed.
When you deploy an integration, the platform creates a new version. This means every deployment is traceable back to a
specific version.You can also deploy a previously created version to an environment without making further changes — useful when
promoting a tested version from development to production.
1
Choose the version to deploy
From the Version History popover, select the version you want to deploy. If you are deploying your current work, the
platform creates a new version automatically.
2
Select the target environment
Choose which environment to deploy to (e.g. development, staging, production). Each environment runs independently
with its own connections and credentials.
3
Confirm the deployment
Review the version details and confirm the deployment. The selected version becomes the active version in the
target environment.
Combine versions with environments to build a robust promotion
pipeline. Create and test versions in development, then deploy the verified version to staging and production.
A consistent naming convention makes it easier to identify versions at a glance, communicate changes across teams, and
maintain an organised version history. Below are some common strategies.
You can combine approaches to get the best of both worlds.
Version
Description
1.2.0-order-retry-logic
Semantic version with feature context
2026-03-09-hotfix-auth
Date-based with change summary
2.0.0-rc1
Release candidate before a major version
Pick a naming convention early and stick with it across your team. Consistent naming makes it significantly easier
to navigate version history as your integration grows.
⌘I
{"docsConfig":{"theme":"almond","$schema":"https://mintlify.com/docs.json","name":"Versori User Documentation","colors":{"primary":"#6EB0D8","light":"#6EB0D8","dark":"#6EB0D8"},"logo":{"light":"https://mintcdn.com/versori/PWNCaMS5nGiiWoff/logo/versori-logo-wordmark.svg?fit=max\u0026auto=format\u0026n=PWNCaMS5nGiiWoff\u0026q=85\u0026s=be10819ca139d000a6edaef35334c0af","dark":"https://mintcdn.com/versori/PWNCaMS5nGiiWoff/logo/versori-logo-wordmark-white.svg?fit=max\u0026auto=format\u0026n=PWNCaMS5nGiiWoff\u0026q=85\u0026s=1568a99dadb6fa8dfc83009eba877497"},"favicon":"https://mintcdn.com/versori/PWNCaMS5nGiiWoff/logo/versori-logo.svg?fit=max\u0026auto=format\u0026n=PWNCaMS5nGiiWoff\u0026q=85\u0026s=1765cb3e4363526dd85cf7c576a8f68f","api":{"openapi":["openapi/connect-api-v1.yaml","openapi/embedded-api-v1.yaml","openapi/organisations-api-v1.yaml","openapi/switchboard-api-v1alpha1.yaml","openapi/platform-api.yaml"],"playground":{"display":"interactive","proxy":false},"mdx":{"auth":{"method":"bearer","name":"Authorization"},"server":["https://platform.versori.com/api"]}},"background":{"decoration":"gradient","color":{"light":"#ffffff","dark":"#151919"}},"search":{"prompt":"Search the docs..."},"interaction":{"drilldown":false},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"versori","hasAudioNarration":false,"actualSubdomain":"versori","customDomains":["docs.versori.com"],"gitSource":{"type":"github","owner":"versori","repo":"user-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ad09d9413e5d952c6a7407c","collectionId":"314b2d25-0631-41c2-aeae-fdf8104d942c","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ad09d9413e5d952c6a7407c"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ad09d9413e5d952c6a7407c","clientVersion":"0.0.3965","searchFilterCounts":[{"language":"default","tag":"API Reference","count":525},{"language":"default","tag":"Platform API","count":115},{"language":"default","tag":"Switchboard API","count":82},{"language":"default","tag":"Endpoints","count":62},{"language":"default","tag":"Connect API","count":41},{"language":"default","tag":"Organisations API","count":38},{"language":"default","tag":"Documentation","count":32},{"language":"default","tag":"projects","count":32},{"language":"default","tag":"User Guide","count":31},{"language":"default","tag":"CLI","count":27}]},"assistantConfig":{},"hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":true},"customCss":[{"filePath":"style.css","content":"#content-area.max-w-xl{max-width:64rem}.whitespace-pre-line{white-space:unset}"}],"page":{"pagePath":"latest/guides/getting-started/build/versions","slug":"/latest/guides/getting-started/build/versions","pageMetadata":{"title":"Version control","sidebarTitle":"Version control","description":null,"href":"/latest/guides/getting-started/build/versions"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Frame,Heading,Info,Note,OptimizedImage,Step,Steps,Table,Tip,Warning}=_components;if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Note)_missingMdxReference(`Note`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`Versions capture the state of your integration at a specific point in time. They give you a reliable way to track\nchanges, roll back safely, and deploy with confidence. This guide covers how to create, manage, and deploy versions in\nthe Versori Platform.`}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`When you save files in the editor, your changes are moved into the `,_jsx(_components.strong,{children:`latest draft`}),`. The latest draft represents the\ncurrent working state of your integration. When you deploy, unless deploying froma version, it is the latest draft\nthat gets deployed — so always ensure your latest draft reflects the state you intend to release.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`why-use-versions`,children:`Why use versions`}),`\n`,_jsx(_components.p,{children:`As your integration evolves — new workflows, updated mappings, revised error handling — you need a way to track what\nchanged and when. Without versions, every edit overwrites the previous state with no way to recover it.`}),`\n`,_jsx(_components.p,{children:`Versions solve this by giving you:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Change history`}),`: See exactly what your integration looked like at any point in its development.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Safe rollbacks`}),`: Revert to a known working state instantly if a change introduces issues.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Deployment control`}),`: Choose precisely which version of your integration runs in each environment.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Team coordination`}),`: Give collaborators a clear record of what changed and why through version names and\ndescriptions.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Audit trail`}),`: Maintain a log of how your integration has evolved over time for compliance and troubleshooting.`]}),`\n`]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Create versions frequently — especially before and after significant changes. Treat them like save points that you\ncan return to at any time.`})}),`\n`,_jsx(Heading,{level:`2`,id:`creating-versions`,children:`Creating versions`}),`\n`,_jsxs(_components.p,{children:[`A version requires a `,_jsx(_components.strong,{children:`name`}),` and accepts an optional `,_jsx(_components.strong,{children:`description`}),`. The name identifies the version at a glance,\nwhile the description provides a summary of what changed — making it easier to understand the purpose of each version\nwhen reviewing history.`]}),`\n`,_jsx(Note,{children:`Versions are shared across all available environments and can be deployed to any environment.`}),`\n`,_jsx(Heading,{level:`3`,id:`manual-version-creation`,children:`Manual version creation`}),`\n`,_jsx(_components.p,{children:`You can create a version at any point during the development of your integration. This is useful when you want to\ncheckpoint your work before making a large change, or when you reach a stable milestone worth preserving.`}),`\n`,_jsxs(Steps,{children:[_jsxs(Step,{title:`Open the Version History popover`,children:[_jsxs(_components.p,{children:[`Navigate to your project and select the `,_jsx(_components.strong,{children:`Version History`}),` popover in the header.`]}),_jsx(Frame,{caption:`The Version History popover shows all versions with their status and deployment info`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=74a79ba97d61fccd5ffd2438b508cf21`,alt:`Version History popover showing a list of versions with their status, date, and description`,\"data-og-width\":`606`,width:`606`,\"data-og-height\":`708`,height:`708`,\"data-path\":`images/guides/building/version-history-001.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?w=280\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=aff8b460f52bb406c35a729225fb685c 280w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?w=560\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=2c0d187c866e028de757f41ffe7cc8a2 560w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?w=840\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=18ff127b7b20735b8788d1b68f1e0c04 840w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?w=1100\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=fbe999d6e897783be8834c5021b588a9 1100w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?w=1650\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=8925451264476dd4345526457ec09ac8 1650w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-history-001.png?w=2500\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=b5f650a83a76f941293f7afd15339d84 2500w`})})]}),_jsxs(Step,{title:`Create a new version`,children:[_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`+`}),`, enter a name for the version, and optionally provide a description summarising the changes included.`]}),_jsx(Frame,{caption:`Enter a name and optional description for the new version`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=7c0be9125348294567f2feebd05d3b87`,alt:`Create New Version dialog with fields for version name and description`,\"data-og-width\":`902`,width:`902`,\"data-og-height\":`682`,height:`682`,\"data-path\":`images/guides/building/version-create-001.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?w=280\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=aea908721c4304cdafacaa45d341e4ab 280w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?w=560\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=f7523660aa9fda3fe3b2e006ab857401 560w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?w=840\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=67a82674ecc79aaf037abadfe5421196 840w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?w=1100\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=89f03759f738364978976529aaab010d 1100w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?w=1650\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=b82d5f7d82907d2e8081f722bd4c8a0e 1650w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-create-001.png?w=2500\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=4c294a4493a468f84780d6df5df8ea65 2500w`})})]}),_jsx(Step,{title:`Confirm the version`,children:_jsx(_components.p,{children:`The version is created as a snapshot of the current integration state. You can continue developing without affecting\nthe saved version.`})})]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Use the description field to record the reason for the version — for example, “Added retry logic to order sync\nworkflow” or “Fixed field mapping for customer addresses”. This context is invaluable when reviewing versions later.`})}),`\n`,_jsx(Heading,{level:`3`,id:`automatic-version-creation-on-deployment`,children:`Automatic version creation on deployment`}),`\n`,_jsx(_components.p,{children:`When you deploy an integration, a new version is automatically created. This ensures every deployment is tied to a\nspecific, immutable snapshot of your integration code and configuration.`}),`\n`,_jsx(_components.p,{children:`You do not need to create a version manually before deploying — the platform handles it for you. However, you are still\nprompted to provide a name and optional description so the deployment version is clearly identifiable.`}),`\n`,_jsx(Frame,{caption:`Deploying creates a new version automatically — you provide the name and description at deploy time`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=bf895e2db7c0ccf59a8ceefcfa331332`,alt:`Deploy Latest Draft to production dialog showing version name, description, and the latest version number`,\"data-og-width\":`802`,width:`802`,\"data-og-height\":`736`,height:`736`,\"data-path\":`images/guides/building/version-deploy-001.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?w=280\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=fd2ba2f69dbe565bf19468d0b92f5123 280w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?w=560\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=0a1e372ef396c3dbbaff1499b6356d35 560w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?w=840\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=cc0620974aab95d7323b5628f94dd56f 840w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?w=1100\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=f3f25c5a1b82c2408aa6ed0f52ed1533 1100w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?w=1650\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=5c469e7d090902b19212c59c6054c329 1650w, https://mintcdn.com/versori/pwRgjD1FWkWIspq7/images/guides/building/version-deploy-001.png?w=2500\u0026fit=max\u0026auto=format\u0026n=pwRgjD1FWkWIspq7\u0026q=85\u0026s=b8b17caa880fe7ca07e6cf235ddeb40f 2500w`})}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`Even though versions are created automatically on deployment, you can still create manual versions at any time.\nManual versions are useful for checkpointing work-in-progress that you are not yet ready to deploy.`})}),`\n`,_jsx(Heading,{level:`2`,id:`switching-between-versions`,children:`Switching between versions`}),`\n`,_jsx(_components.p,{children:`You can switch between any previously created version to review its state or restore it as the active working version.\nThis is particularly useful when comparing changes across versions or when you need to return to an earlier\nimplementation.`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Select a version`,children:_jsx(_components.p,{children:`Choose the version you want to switch to. You can use the name and description to identify the correct version.`})}),_jsx(Step,{title:`Review or restore`,children:_jsx(_components.p,{children:`Review the integration state captured in that version. If you want to you can continue working from this version.`})})]}),`\n`,_jsx(Heading,{level:`2`,id:`rolling-back-to-a-previous-version`,children:`Rolling back to a previous version`}),`\n`,_jsx(_components.p,{children:`If a recent change causes issues — failed executions, incorrect data mappings, or unexpected behaviour — you can roll\nback to a previous version to restore a known working state.`}),`\n`,_jsx(_components.p,{children:`Rolling back replaces the current integration state with the selected version. This is the fastest way to recover from a\nproblematic change without manually undoing edits.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Rolling back does not delete any versions. All previously created versions remain available, including the one you\nrolled back from. You can always switch forward again if needed.`})}),`\n`,_jsx(Heading,{level:`2`,id:`deploying-a-version`,children:`Deploying a version`}),`\n`,_jsx(_components.p,{children:`When you deploy an integration, the platform creates a new version. This means every deployment is traceable back to a\nspecific version.`}),`\n`,_jsx(_components.p,{children:`You can also deploy a previously created version to an environment without making further changes — useful when\npromoting a tested version from development to production.`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Choose the version to deploy`,children:_jsxs(_components.p,{children:[`From the `,_jsx(_components.strong,{children:`Version History`}),` popover, select the version you want to deploy. If you are deploying your current work, the\nplatform creates a new version automatically.`]})}),_jsx(Step,{title:`Select the target environment`,children:_jsx(_components.p,{children:`Choose which environment to deploy to (e.g. development, staging, production). Each environment runs independently\nwith its own connections and credentials.`})}),_jsx(Step,{title:`Confirm the deployment`,children:_jsx(_components.p,{children:`Review the version details and confirm the deployment. The selected version becomes the active version in the\ntarget environment.`})})]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`Combine versions with `,_jsx(_components.a,{href:`/latest/guides/getting-started/build/environments`,children:`environments`}),` to build a robust promotion\npipeline. Create and test versions in development, then deploy the verified version to staging and production.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`version-naming-strategies`,children:`Version naming strategies`}),`\n`,_jsx(_components.p,{children:`A consistent naming convention makes it easier to identify versions at a glance, communicate changes across teams, and\nmaintain an organised version history. Below are some common strategies.`}),`\n`,_jsx(Heading,{level:`3`,id:`semantic-versioning`,children:`Semantic versioning`}),`\n`,_jsxs(_components.p,{children:[`Use a structured `,_jsx(_components.code,{children:`major.minor.patch`}),` format to communicate the scope of changes.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Version`}),_jsx(_components.th,{children:`When to use`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1.0.0`})}),_jsx(_components.td,{children:`Initial stable release`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1.1.0`})}),_jsx(_components.td,{children:`New feature added (e.g. added product sync workflow)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1.1.1`})}),_jsx(_components.td,{children:`Bug fix or minor correction (e.g. fixed date format mapping)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2.0.0`})}),_jsx(_components.td,{children:`Breaking change or major rework (e.g. migrated to v2 API)`})]})]})]}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`Semantic versioning works well when your integration has external consumers or when you need to clearly signal the\nimpact of each change.`})}),`\n`,_jsx(Heading,{level:`3`,id:`date-based-versioning`,children:`Date-based versioning`}),`\n`,_jsx(_components.p,{children:`Use the release date as the version name for a chronological record.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Version`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2026-03-09`})}),_jsx(_components.td,{children:`Daily release snapshot`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2026-03-09.1`})}),_jsx(_components.td,{children:`Second release on the same day`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2026-Q1`})}),_jsx(_components.td,{children:`Quarterly milestone release`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`feature-or-milestone-naming`,children:`Feature or milestone naming`}),`\n`,_jsx(_components.p,{children:`Name versions after the feature or milestone they represent for a human-readable history.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Version`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`order-sync-v1`})}),_jsx(_components.td,{children:`First version of order synchronisation`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`multi-tenant-support`})}),_jsx(_components.td,{children:`Added multi-tenant capabilities`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`api-v2-migration`})}),_jsx(_components.td,{children:`Migrated all endpoints to API v2`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pre-launch-final`})}),_jsx(_components.td,{children:`Final version before go-live`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`combining-strategies`,children:`Combining strategies`}),`\n`,_jsx(_components.p,{children:`You can combine approaches to get the best of both worlds.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Version`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`1.2.0-order-retry-logic`})}),_jsx(_components.td,{children:`Semantic version with feature context`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`2026-03-09-hotfix-auth`})}),_jsx(_components.td,{children:`Date-based with change summary`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`2.0.0-rc1`})}),_jsx(_components.td,{children:`Release candidate before a major version`})]})]})]}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`Pick a naming convention early and stick with it across your team. Consistent naming makes it significantly easier\nto navigate version history as your integration grows.`})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Version control","sidebarTitle":"Version control","description":null,"href":"/latest/guides/getting-started/build/versions"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Why use versions","slug":"why-use-versions","depth":2,"children":[]},{"title":"Creating versions","slug":"creating-versions","depth":2,"children":[{"title":"Manual version creation","slug":"manual-version-creation","depth":3,"children":[]},{"title":"Automatic version creation on deployment","slug":"automatic-version-creation-on-deployment","depth":3,"children":[]}]},{"title":"Switching between versions","slug":"switching-between-versions","depth":2,"children":[]},{"title":"Rolling back to a previous version","slug":"rolling-back-to-a-previous-version","depth":2,"children":[]},{"title":"Deploying a version","slug":"deploying-a-version","depth":2,"children":[]},{"title":"Version naming strategies","slug":"version-naming-strategies","depth":2,"children":[{"title":"Semantic versioning","slug":"semantic-versioning","depth":3,"children":[]},{"title":"Date-based versioning","slug":"date-based-versioning","depth":3,"children":[]},{"title":"Feature or milestone naming","slug":"feature-or-milestone-naming","depth":3,"children":[]},{"title":"Combining strategies","slug":"combining-strategies","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"versori","siteName":"Versori User Documentation","title":"Version control - Versori User Documentation","navMaps":{"firstHrefInVersion":{"Latest":{"href":"/latest/guides/getting-started/build/versions","matchLevel":0},"Legacy":{"href":"/legacy/welcome","matchLevel":4},"v2":{"href":"/v2/introduction","matchLevel":4}},"firstHrefInLanguage":{}},"lastModified":"2026-10-14T11:02:55.156Z","originalFileLocation":"latest/guides/getting-started/build/versions.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=\"application-name\" content=\"Versori User 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/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_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/versori/JHvcKEOb4limbJz2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Version control - Versori User Documentation\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Versori User Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.versori.com/latest/guides/getting-started/build/versions\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://versori.mintlify.app/_mintlify/api/og/v2?division=Build\u0026amp;title=Version+control\u0026amp;theme=1ac70f2532992ffb34bd6aef\u0026amp;signature=d91310a1301177244b90b6e70337c9a4556aee327c5e5f2aa3f1d794ca80f6e4\">\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=\"Version control - Versori User Documentation\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://versori.mintlify.app/_mintlify/api/og/v2?division=Build\u0026amp;title=Version+control\u0026amp;theme=1ac70f2532992ffb34bd6aef\u0026amp;signature=d91310a1301177244b90b6e70337c9a4556aee327c5e5f2aa3f1d794ca80f6e4\">\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/versori/JHvcKEOb4limbJz2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Versori User Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#6EB0D8\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.versori.com/latest/guides/getting-started/build/versions\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/latest/guides/getting-started/build/versions.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.versori.com/#organization\",\"name\":\"Versori User Documentation\",\"url\":\"https://docs.versori.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/versori/PWNCaMS5nGiiWoff/logo/versori-logo-wordmark.svg?fit=max\u0026auto=format\u0026n=PWNCaMS5nGiiWoff\u0026q=85\u0026s=be10819ca139d000a6edaef35334c0af\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.versori.com#website\",\"name\":\"Versori User Documentation\",\"url\":\"https://docs.versori.com\",\"publisher\":{\"@id\":\"https://docs.versori.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.versori.com/latest/guides/getting-started/build/versions#webpage\",\"url\":\"https://docs.versori.com/latest/guides/getting-started/build/versions\",\"name\":\"Version control\",\"dateModified\":\"2026-10-14T11:02:55.156Z\",\"isPartOf\":{\"@id\":\"https://docs.versori.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.versori.com/latest/guides/getting-started/build/versions#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.versori.com/latest/guides/getting-started/build/versions#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Build\",\"item\":\"https://docs.versori.com/latest/guides/getting-started/build\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Version control\",\"item\":\"https://docs.versori.com/latest/guides/getting-started/build/versions\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.versori.com/latest/guides/getting-started/build/versions#article\",\"headline\":\"Version control\",\"name\":\"Version control\",\"url\":\"https://docs.versori.com/latest/guides/getting-started/build/versions\",\"mainEntityOfPage\":{\"@id\":\"https://docs.versori.com/latest/guides/getting-started/build/versions#webpage\"},\"dateModified\":\"2026-10-14T11:02:55.156Z\",\"publisher\":{\"@id\":\"https://docs.versori.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.versori.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Versori User Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Versori User Documentation","nav":{"global":null,"versions":[{"version":"Latest","tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/latest/home"}]},{"tab":"User Guide","anchors":[{"anchor":"Getting Started","pages":[{"title":"The Chat: Plan and Build in One Conversation","sidebarTitle":"Chat","href":"/latest/guides/getting-started/chat"},{"group":"Plan","pages":[{"title":"Starting your plan","href":"/latest/guides/getting-started/plan"},{"title":"Plan Questions","sidebarTitle":"Questions","href":"/latest/guides/getting-started/plan/questions"}]},{"group":"Connect","pages":[{"title":"Connecting","sidebarTitle":"Connecting","href":"/latest/guides/getting-started/connect"},{"title":"Embedded connectors","sidebarTitle":"Embedded connectors","href":"/latest/guides/getting-started/connect/embedded-connectors"},{"title":"Bypass authentication","sidebarTitle":"Bypass authentication","href":"/latest/guides/getting-started/connect/bypass-auth"}]},{"group":"Build","pages":[{"title":"Building your integration","sidebarTitle":"Building your integration","description":null,"href":"/latest/guides/getting-started/build"},{"title":"Version control","sidebarTitle":"Version control","href":"/latest/guides/getting-started/build/versions"},{"title":"Environments","sidebarTitle":"Environments","description":null,"href":"/latest/guides/getting-started/build/environments"},{"title":"Testing","sidebarTitle":"Testing","href":"/latest/guides/getting-started/build/test"},{"title":"Field Mapping","href":"/latest/guides/getting-started/build/field-mapping"}]},{"group":"Deploy","pages":[{"title":"Deploy","tag":"coming soon","href":"/latest/guides/getting-started/deploy"}]},{"group":"Monitor","pages":[{"title":"Monitoring your integration","sidebarTitle":"Monitor","href":"/latest/guides/getting-started/monitor"},{"title":"Issue Watcher: Fixes Proposed From Real Failures","sidebarTitle":"Issue Watcher","href":"/latest/guides/getting-started/monitor/issue-watcher"}]},{"group":"Miscellaneous","pages":[{"title":"Prompting tips","tag":"coming soon","href":"/latest/guides/getting-started/misc/prompting-tips"}]}]},{"anchor":"Single Sign-On","pages":[{"title":"Single Sign-On","href":"/latest/guides/sso/overview"}]},{"anchor":"Use cases","pages":[{"title":"Use cases","href":"/latest/guides/use-cases/real-time"}]},{"anchor":"Authentication Methods","pages":[{"title":"Authentication Methods","href":"/latest/guides/auth-methods/introduction"}]},{"anchor":"Advanced","pages":[{"title":"Advanced","href":"/latest/guides/advanced/ip-allowlist"}]}]},{"tab":"Run SDK","dropdowns":[{"dropdown":"Latest (0.4.x)","groups":[{"group":"Getting Started","expanded":true,"pages":[{"title":"Run SDK","sidebarTitle":"Introduction","href":"/latest/run-sdk/latest/introduction"},{"title":"Connections","href":"/latest/run-sdk/latest/connections"},{"group":"Workflows, Triggers and Tasks","pages":[{"title":"Workflows, Triggers and Tasks","sidebarTitle":"Overview","href":"/latest/run-sdk/latest/workflows"},{"title":"Inputs and outputs","href":"/latest/run-sdk/latest/workflows/inputs-outputs"},{"title":"Task Types","href":"/latest/run-sdk/latest/workflows/task-types"},{"title":"Background","href":"/latest/run-sdk/latest/workflows/background"},{"title":"Catch","href":"/latest/run-sdk/latest/workflows/catch"}]},{"title":"The Context Object","href":"/latest/run-sdk/latest/context"},{"title":"Durable Workflows","href":"/latest/run-sdk/latest/durable-workflows"}]},{"group":"Developers","pages":[{"title":"Developers Overview","sidebarTitle":"Overview","href":"/latest/run-sdk/latest/developers/overview"}]}]}]},{"tab":"CLI","pages":[{"title":"CLI","href":"/latest/cli/introduction"}]},{"tab":"AI Tooling","pages":[{"title":"AI Tooling","href":"/latest/ai-tooling/cloud-agents"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/latest/api-reference/getting-started"}]}]},{"version":"Legacy","pages":[{"title":"Legacy","href":"/legacy/welcome"}]},{"version":"v2","pages":[{"title":"v2","href":"/v2/introduction"}]}]},"title":"Version control - Versori User Documentation","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-Cz91mEGH.js","DynamicMarkdown-a8hUKrw6.js","zoom-image-lightbox-CaUwvYH3.js","lightbox-handle-r17bVUz3.js"]}