Internet Explorer is no longer supported. Many things will still work, but your experience will be degraded and some things won't function. Please use a modern browser such as Edge, Chrome, or Firefox.

Repackage Package

view on GitHub

The Repackaging API is available as both a pgutil command and an HTTP Request, and provides the programmatic ability to repackage prerelease packages by posting JSON-encoded or Form-encoded data.

This API requires ProGet 2023.0 or later.

Command Specification (CLI)

The packages repackage command is used to repackage a package to a package with a different version.

The --package and --version options are always required, and the --qualifier option is required for multifile packages like Debian and RubyGems.

Repackaging a NuGet Package requires the feed (e.g. myNugetFeed), name (e.g. myNugetPackage) current version (e.g. 1.0.0-rc.1) and new version (e.g. 1.0.0):

pgutil packages repackage --feed=myNugetFeed --package=myNugetPackage --version=1.0.0-rc.1 --new-version=1.0.0

Repackaging an npm Package requires the feed (e.g. MyNpmFeed), name (e.g. myNpmPackage), scope (e.g. myScope), current version (e.g. 2.0.0-rc.1) and new version (e.g. 2.0.0):

pgutil packages repackage --feed=MyNpmFeed --package=@myScope/myNpmPackage --version=2.0.0-rc.1 --new-version=2.0.0

Note source options must also be specified unless you have the "Default" source configured, and that a feed may be instead specified in the source. See Working with Sources to learn more.

HTTP Request Specification

To repackage a package, simply POST to the following URL with an appropriate API Key and a RepackageInput object (see RepackageInput.cs) object as the request body.

POST /api/repackaging/repackage

You can also POST to the URL with Form-encoded data:

POST /api/repackaging/repackage

Content-Type: application/x-www-form-urlencoded

feed=myFeed&packageName=myPackage&version=4.3.2-rc.1&newVersion=4.3.2&comments=This+package+was+repackaged+by+an+automated+process

HTTP Response Specification

A successful 200 creates a new "repackaged" package in the same feed, ortoFeed when specified. A 403 response indicates a missing, unknown, or unauthorized API Key.