Troubleshooting

Solutions to common problems with authentication, package restore, and client configuration.

401 Unauthorized on restore or push

A 401 means the client sent credentials that Feedz did not accept. Check the following:

  • Token is correct — only the first 7 characters of a token are shown in the portal after creation. If you are not sure whether you copied it correctly, deactivate the old token and create a new one.
  • Token has sufficient access — a Read token cannot push packages. A Read/Write token cannot call management API endpoints. See Personal Access Tokens for access levels.
  • Token has not expired — if you set an expiry date, the token stops working after that date.
  • Token is active — deactivated tokens stop working within 15 seconds. Reactivate it in Your Account → Personal Access Tokens.
  • Username is not empty — Feedz ignores the username value, but most NuGet and npm clients require a non-empty string. Use any value such as feedz or your email address.

NuGet packages not restoring

If dotnet restore or Visual Studio cannot find packages in your Feedz repository:

  • Source is registered — run dotnet nuget list source to confirm the Feedz URL appears. If not, add it with dotnet nuget add source.
  • Credentials are stored — on Windows, credentials may need --store-password-in-clear-text if you are not using the Azure Artifact Credential Provider. On macOS and Linux, --store-password-in-clear-text is required unless the credential provider is installed.
  • NuGet cache is stale — clear the local cache and retry:
dotnet nuget locals all --clear

To clear individual caches:

dotnet nuget locals http-cache --clear
dotnet nuget locals global-packages --clear

npm packages not found or 404

If npm cannot find scoped packages from Feedz:

  • Scope is configured — your .npmrc must contain a line mapping your scope to the Feedz registry, for example:
@my-company:registry=https://f.feedz.io/my-org/my-repo/npm/
  • Scope matches package names — the scope in .npmrc must match the prefix in your package names (e.g. @my-company/my-package). npm routes un-scoped packages to the public registry.
  • Auth token is set — the .npmrc entry for //f.feedz.io/...:_authToken must contain a valid token. See the npm page for the full configuration.

Package not appearing after push

Packages are indexed within a few seconds of a successful push. If the package does not appear:

  • Confirm the push returned HTTP 201 Created. A 200 or 204 may indicate a no-op (e.g. the version already existed).
  • Hard-refresh the repository page in the portal (Ctrl+Shift+R or Cmd+Shift+R).
  • Check that the package ID and version in the filename match what you expect — the portal groups packages by ID.

Upstream packages not resolving

If packages that should be proxied from an upstream source are not available:

  • Confirm the upstream is enabled on the repository settings page.
  • The upstream is fetched on demand — the first restore may be slower while the package is cached.
  • If the upstream source itself is unavailable, requests will fail. Check the upstream URL is reachable.

See Upstream Sources for configuration details.

Getting help

If the above steps do not resolve your issue, contact support. Include:

  • The error message or HTTP status code you are seeing
  • The client you are using (dotnet CLI version, npm version, etc.)
  • The repository URL (with any token values removed)