Feed endpoints
This page explains the different feed endpoints available on MyGet. Depending on the client you are using (NuGet.exe, Orchard CMS, npm, pip, rubygems, ...), these endpoints can be configured as the package source or as the publish endpoint.
Feed endpoint basic structure
MyGet feed endpoints all share the same basic structure, regardless of what package management tool you are using with MyGet. You will need specify your MyGet domain, the name of your feed, and the correct endpoint for the package manager you are using (i.e. NuGet, npm, Python, etc.).
- Determining your MyGet domain. If are using a non-enterprise MyGet.org account, your MyGet domain is simply
myget.org
. However, for users on the MyGet Enterprise plan, you will need to specify the custom subdomain used by your company for your MyGet Enterprise instance (i.e.mycompany.myget.org
). You can find your company's MyGet Enterprise subdomain by copying the URL used to log into your MyGet Enterprise instance from the browser.
Public or Community feeds
If your MyGet feed is set to Public or Community access, the feed endpoint structure for your feed will follow the basic format below:
https://<your_myget_domain>/F/<your-feed-name>/<feed_endpoint>
Private feeds
If you have set your MyGet feed security settings to Private, then you will need to authenticate with MyGet using your username/password or API key to access any feed endpoints.
Username/password. the following structure will allow you to access MyGet endpoints to work with your packages from your local machine or CI/CD system using username and password:
https://<username>:<password>@<your_myget_domain>/F/<your-feed-name>/<feed_endpoint>
API key. In the event that you do not use a username/password to authenticate with your MyGet account, you can use a pre-authenticated endpoint URL with an API access key. See the section "Private feed endpoints and authentication" below.
Feed endpoints that can be used
Various endpoints are available for MyGet feeds.
NuGet-compatible feed endpoints
MyGet has the following feed endpoints available for NuGet:
- /F/<your-feed-name>/api/v3/index.json - the NuGet v3 API endpoint
- /F/<your-feed-name>/api/v2 - the NuGet v2 API endpoint for consuming packages
- /F/<your-feed-name>/api/v2/package - the NuGet v2 API endpoint for pushing packages
- /F/<your-feed-name>/api/v1 - the NuGet v1 API endpoint for consuming and pushing packages (still in use by Orchard CMS and some others)
The following table lists which endpoint can be used with which client:
Endpoint | NuGet < v1.6 (VS2010) |
NuGet > v1.6 (VS2013) |
NuGet > v3.0 (VS2015+) |
NuGet Package Explorer | Orchard CMS | Chocolatey / OneGet | Web browser |
/F/<your-feed-name>/api/v3/index.json | no | no | yes | no | no | no | yes |
/F/<your-feed-name>/api/v2 | no | yes | yes | yes | no | yes | yes |
/F/<your-feed-name>/api/v2/package (push) | no | yes | yes | yes | no | yes | no |
/F/<your-feed-name>/api/v1 | yes | yes (no push) | yes | yes | yes | yes | yes |
/RSS/<your-feed-name> | no | no | no | no | no | no | yes |
Symbol server endpoints
MyGet has the following endpoints available for symbol server (debugging in Visual Studio and WinDbg):
- /F/<your-feed-name>/api/v2/package - the symbols package publish endpoint
- /F/<your-feed-name>/symbols - the symbol server endpoint
Npm-compatible feed endpoints
MyGet has the following feed endpoints available for npm:
- /F/<your-feed-name>/npm - the npm API endpoint
Bower-compatible feed endpoints
MyGet has the following feed endpoints available for Bower:
- /F/<your-feed-name>/bower - the Bower API endpoint
Vsix-compatible feed endpoints
MyGet has the following feed endpoints available for Vsix (Visual Studio extensions):
- /F/<your-feed-name>/vsix - the VSIX Atom feed API endpoint
- /F/<your-feed-name>/vsix/package - the VSIX upload endpoint
PHP Composer-compatible feed endpoints
MyGet has the following feed endpoints available for PHP Composer packages:
- /F/<your-feed-name>/composer - the PHP Composer registry API endpoint
- /F/<your-feed-name>/composer/dist/lt;packageid>/lt;packageversion>.zip - the PHP Composer registry API endpoint to which a binary can be uploaded using
HTTP POST
Python (PyPI)-compatible feed endpoints
MyGet supports the following feed endpoints for interacting with Python PyPI and .whl packages on MyGet:
- /F/<your-feed-name>/python - the MyGet API endpoint to install Python packages using tools like
pip
- /F/<yourfeedname>/python/upload - the MyGet API endpoint to upload binary .whl packages using
HTTP POST
or Twine
RubyGems-compatible feed endpoints
MyGet supports the following feed endpoints for interacting with Ruby gems on MyGet:
- /F/<yourfeedname>/geminstall - the MyGet feeds endpoint to install gems using tools like
rubygems
- /F/<yourfeedname>/gem/upload - the MyGet feeds endpoint to upload gems from the command line or your build system using
bundler
orHTTP POST
Private feed endpoints and authentication
When accessing private feeds, these endpoints all require basic authentication. If the client that is being used does not support basic authentication, a pre-authenticated feed URL can be used. The pre-authenticated feed URL is available from the feed's feed details page.
Warning! As pre-authenticated feed URLs contain sensitive information, it is recommended to never use pre-authenticated feed URLs unless absolutely needed. Sharing the pre-authenticated feed URL can potentially give others read and write access to the feed!
Since pre-authenticated feed URLs contain your API key in the URL, we advise to use a separate access token generated specifically for the purpose of using a pre-authenticated feed endpoint so that it can be revoked at any time.
Read our contribution guidance or edit this page's source on GitHub.