Sign in or sign up before continuing. Don't have an account yet? Register now to get started.
Register now

NPM virtual registry: manage APIs

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

  • Work on this issue
  • Close this issue

In virtual registries, we usually have two set of APIs:

  1. APIs to manage the virtual registry objects. This issue deals with this part.
  2. APIs for the clients, $ npm or $ yarn, so that they can pull files through the virtual registry.

This issue is for (1.). (2.) is handled in the different issue.

1️⃣ Registries

Route Notes
GET /groups/:id/-/virtual_registries/packages/npm/registries List virtual registries for the given top level group
POST /groups/:id/-/virtual_registries/packages/npm/registries Create a new virtual registry
GET /virtual_registries/packages/npm/registries/:id Get the details of the virtual registry
PATCH /virtual_registries/packages/npm/registries/:id Update a virtual registry
DELETE /virtual_registries/packages/npm/registries/:id Delete a virtual registry

2️⃣ Remote Upstreams

Route Notes
GET /virtual_registries/packages/npm/registries/:id/remote/upstreams Get the remote upstreams of a given registry
POST /virtual_registries/packages/npm/registries/:id/remote/upstreams Create a remote upstream for a given registry
GET /virtual_registries/packages/npm/remote/upstreams/:id Get the remote upstream details
PATCH /virtual_registries/packages/npm/remote/upstreams/:id Update the remote upstream details
DELETE /virtual_registries/packages/npm/remote/upstreams/:id Delete a remote upstream

3️⃣ Registry Upstreams

Route Notes
POST /virtual_registries/packages/npm/registry_upstreams Associate an upstream with a registry
PATCH /virtual_registries/packages/npm/registry_upstreams/:id Update the registry upstream details (position)
DELETE /virtual_registries/packages/npm/registry_upstreams/:id Disassociate an upstream from a registry

4️⃣ Remote Cache Entries

Route Notes
GET /virtual_registries/packages/npm/remote/upstreams/:id/cache_entries List all remote cache entries of a given upstream
DELETE /virtual_registries/packages/npm/remote/cache_entries/*id Delete a given remote cache entry

🔮 Other considerations

Use a feature flag

Edited Feb 13, 2026 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading