Managing Content & Structure Versioning Your Documentation

Keeping your documentation in sync with your product releases is crucial. By versioning your documentation, you can maintain separate, accurate guides for different releases (like v1.0 and v2.0) simultaneously, ensuring all your users have the right information for the version they are using.

How versioning works

Your documentation is structured hierarchically. Each documentation project can have multiple Versions. Inside each version, you organize content into Sections, which contain individual Doc Entries (the actual pages your users read).

flowchart TD
    Doc[Documentation Project] --> V1["Version 1.0"]
    Doc --> V2["Version 2.0"]
    
    V2 --> S1["Section: Getting Started"]
    V2 --> S2["Section: API Reference"]
    
    S1 --> E1["Doc Entry: Installation"]
    S1 --> E2["Doc Entry: Quickstart"]

Version statuses

To help users navigate your documentation, you can assign specific statuses to your versions to indicate their lifecycle stage:

StatusDescription
DefaultThe version users see automatically when they first navigate to your documentation's base URL.
LatestThe most recent stable release of your product.
DeprecatedOlder versions that are no longer actively updated, but are kept available for users still on older releases.

Instead of deleting older versions, we highly recommend setting them to Deprecated. This prevents broken links for users who have bookmarked older pages and keeps historical context intact.

Managing your documentation lifecycle

Whether you are preparing for a major new release or just making a small patch, the workflow for managing versions remains consistent.

  1. 1

    Create a new version

    Start by creating a new version (for example, v2.0). This creates an isolated space where you can draft updates without affecting your live documentation.

  2. 2

    Organize sections and entries

    Build out your navigation by creating Sections. You can easily reorder these sections to ensure a logical flow. Then, populate the sections with your Doc Entries.

  3. 3

    Update version settings

    Once your content is ready, you can update the version's status. For a new major release, you might set it as both the Latest and Default version.

  4. 4

    Publish your changes

    Trigger a publish job to push your new version live. Publishing runs in the background, ensuring your live site remains fast and responsive.

Publishing and monitoring

Publishing documentation is handled through background jobs. When you are ready to share your updates, you initiate a Publish Job.

Because large documentation sites can take a moment to build, you can monitor the progress of your deployments:

  • Check job status: View the current state of an ongoing publish job to see when it finishes.

  • View publish history: Look back at previous publish jobs to audit when changes went live.

  • Get latest publish: Quickly retrieve the details of the most recently completed publish.

If you notice an issue on the live site, you can always check the publish history to verify exactly when the last update was deployed and who initiated it.

Managing versions via API

If you prefer to manage your documentation lifecycle programmatically, you can use our REST API. The following endpoints are available for version management:

ActionMethodEndpoint
List versionsGET/v1/documentation/{organization_id}/{documentation_id}/version
Create versionPOST/v1/documentation/{organization_id}/{documentation_id}/version
Get versionGET/v1/documentation/{organization_id}/{documentation_id}/version/{version_id}
Update versionPUT/v1/documentation/{organization_id}/{documentation_id}/version/{version_id}
Delete versionDELETE/v1/documentation/{organization_id}/{documentation_id}/version/{version_id}
Set defaultPOST/v1/documentation/{organization_id}/{documentation_id}/version/{version_id}/set-default
Set latestPOST/v1/documentation/{organization_id}/{documentation_id}/version/{version_id}/set-latest
Set deprecatedPOST/v1/documentation/{organization_id}/{documentation_id}/version/{version_id}/set-deprecated
Can I delete a version?

Yes, you can delete a version entirely. However, this is a permanent action and will remove all sections and entries associated with that version. Use this carefully, and consider deprecating the version instead to preserve links.

How do I reorder my navigation?

You can reorder sections within a version at any time. The order you set determines how the sections appear in the sidebar navigation for your readers.