---
title: episerver.packaging
slug: cms-11/dev-docs/configuring-episerverpackaging-legacy
docTags: 
createdAt: 2026-07-22T19:45:20.632Z
---

The [Configure CMS](docId:-eEADlLWvxOYZN97jCo8N) topic describes the syntax of the configuration elements.

```xml
<episerver.packaging>
  <packageRepositories/>
</episerver.packaging>
```

## \<episerver.packaging>

```xml
<episerver.packaging repositoryPath="string"
                     publicVirtualPath="string" 
                     publicPath="string" 
                     protectedVirtualPath="string" 
                     protectedPath="string" 
                     packagesTemporaryFolder="string"
                     packageListCacheTime="TimeSpan"
                     allowPrereleaseVersions="bool"
                     allowUnlisted="bool"
                     installationMode="InstallationMode">
  <packageRepositories/>
</episerver.packaging>
```

### \<episerver.packaging> element attributes

| Name                                                                                                                                                       | Default value | Description                                                                                                                                                                                                                                                        |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [allowPrereleaseVersions](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/d454ec66-cb4b-40c4-dab1-cab6a8386f6c) | false         | Indicates whether you can install pre-release package versions on-site.                                                                                                                                                                                            |
| [allowUnlisted](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/c8028ae6-8bbb-9791-10d4-d5956a71fe92)           | false         | Indicates whether unlisted packages can be installed on site.                                                                                                                                                                                                      |
| `installationMode`                                                                                                                                         | UI            | Indicates where to install add-ons. Set to **Code** to manage add-ons from Visual Studio; also, see [Install add-ons](https://world.optimizely.com/documentation/developer-guides/CMS/add-ons/Installing-add-ons/).                                                |
| [packageListCacheTime](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/21e4c3e5-3a11-5681-a044-ab47ab6cd6cc)    | 0.0:5:0       | The length of time that package listings from remote repositories are cached.                                                                                                                                                                                      |
| [packagesTemporaryFolder](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/e9e0915d-3faf-9287-ad75-3c3b531df081) |               | Uploaded and cached packages are temporarily stored in this location. If no value is configured the system designated temporary directory is used.                                                                                                                 |
| [protectedPath](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/f7ba85d0-6e39-79c7-ccc9-6a647f2536ff)           |               | Indicates the physical path where to install the protected add-ons. The installation sets this value to `*Siteroot\modules\_protected*`.                                                                                                                           |
| [protectedVirtualPath](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/f3dde9c5-55e1-395d-170d-47d17709e0df)    |               | Indicates the virtual path where to install protected add-ons. The installation sets this value to `~/<EPiServerProtectedPath>/modules` where `~/<EPiServerProtectedPath>` equals the protected virtual root path for the Optimizely dashboard and user interface. |
| [publicPath](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/6f739f46-8e08-2f4e-cd61-dc343ba1985c)              |               | Indicates the physical path where to install public add-ons. The installation sets this value to the physical path `_modules` subfolder in the site root directory.                                                                                                |
| [publicVirtualPath](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/7999e30f-caa0-8f44-0d18-3117551287e6)       |               | Indicates the virtual path where to install public add-ons. The installation sets this value to `_~/modules` and is equal to the virtual root path to public Shell modules.                                                                                        |
| [repositoryPath](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/ef36f654-1ef1-04b7-fb45-44eab015ac20)          |               | Indicates where to store installed packages. The installation sets this value to a subpath in the site `VPP` directory, for example, `C:\\EPiServer\\VPP\&lt;SiteName>\\ModulesRepository`.                                                                        |

:::hint{type="info"}
**Note**
Virtual path providers should be configured to map virtual paths of public and protected add-ons to corresponding physical paths where public and protected add-ons are installed. By default, additional virtual path provider is registered to map virtual and physical paths for protected add-ons.
:::

## \<packageRepositories>

```xml
<packageRepositories>
          <add name="string"
               url="string"
               isEnabled="bool"
               apiKey="string"
               requestApiKey="bool"
               sendLicense="bool"
               filterTag="string" />
          ...
    </packageRepositories>
```

### \<add> element attributes

| Name                                                                                                                                             | Default value | Description                                                                                                                                                                 |
| ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                                                                                                                                           |               | ***Required*** – A unique name identifying this package repository.                                                                                                         |
| `url`                                                                                                                                            |               | ***Required*** – The full URL or path to the package repository.                                                                                                            |
| `isEnabled`                                                                                                                                      | true          | Enables or disables this repository.                                                                                                                                        |
| [apiKey](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/de00fbca-e2cb-6909-9f05-b888ad1a856c)        |               | If you have a static API key for accessing this repository, set it here.                                                                                                    |
| [filterTag](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/741e1958-da08-edb1-9c23-260cdaa99760)     |               | If this is set, only packages with this tag set are included in the listing. (Separate listings based on the same repository URL.)                                          |
| [requestApiKey](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/dddef4e1-9e09-d600-6326-cd6bb0b4f627) | false         | Enable this option to request an API key from the repository. (You must enable this element attribute for the default Optimizely repository.)                               |
| [sendLicense](https://world.optimizely.com/documentation/Class-library/?documentId=episerverframework/10/241cf8c4-107e-ff86-03c4-58f4b596f3c8)   | false         | Enable this option to include your Optimizely license information with the API key request. (You must enable this element attribute for the default Optimizely repository.) |

### Default Optimizely repository

CMS adds the Optimizely central repository feed to the `packageRepositories` collection implicitly by default. You can remove this default repository using the`<clear />` statement.

```xml
<packageRepositories>
  <clear />
  <add name="string" 
       url="string" />
</packageRepositories>
```
