---
schema_version: "1"
id: 2e4258163d5d24a4ced63f09adb517a35e161edb36289fa3d2518c5d80f3410e
title: Create a Managed Package Version of Your App
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/platform-pkg-exchange/managed_packaging/guides/first-generation/build-first-gen-dx/sfdx-dev-build-man-pack-create.md
canonical_url: https://developer.salesforce.com/docs/platform/pkg1-dev/guide/sfdx-dev-build-man-pack-create.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: c4f8372a6768e27afa7aaca65752929ca5e85de6542986d1d90872d4317b37a9
products:
  - First-Generation Managed Packaging Developer Guide
  - merged-docs
---

# Create a Managed Package Version of Your App

After your testing is done, your app is almost ready to be published in your enterprise or on AgentExchange. Generate a new managed package version in your Dev Hub org.

## Before You Begin

Ensure that you’ve authorized the packaging org and can view the existing package versions.

```nolang
sf org login web --instance-url https://test.salesforce.com --set-default org_alias
```

View the existing package versions for a specific package to get the ID for the version you want to install.

```nolang
sf package1 version list --package-id 033...
```

To view details for all packages in the packaging org, run the command with no parameters.

More than one beta package can use the same version number. However, you can use each version number for only one _managed_ package version. You can specify major or minor version numbers.

You can also include URLs for a post-installation script and release notes. Before you create a managed package, make sure that you’ve configured your developer settings, including the namespace prefix.

**note:** After you create a managed package version, you can’t change some attributes of Salesforce components used in the package. See: [Components Available in Managed Packages](https://developer.salesforce.com/docs/atlas.en-us.pkg2_dev.meta/pkg2_dev/packaging_packageable_components.htm) for information on editable components.

1.  Create the managed package. Include the `--managed-released` parameter.

    ```nolang
    sf package1 version create --package-id 033xx00000007oi --name ”Spring 22” --description ”Spring 22 Release” --version 3.2 --managed-released
    ```

    You can use other options, like `--wait` to specify the number of minutes to wait.

    To protect the package with an installation key, include a value for `--installation-key`. Then, you or a subscriber must supply the key before you can install the package in a target org.

    After the managed package version is created, you can retrieve the new package version ID using `sf package1 version list`.
