# 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`.
