Error map
E403 npm ERR! code E403 — 403 Forbidden - PUT https://registry.npmjs.org/x - You do not have permission to publish
npm · layer 7, Build & delivery
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
HTTP 403 Forbidden
The server understood the request but refuses to authorize it — you (or the server process) are not allowed to access this resour…
npm ERR! code ETIMEDOUT — network request to https://registry.npmjs.org/x failed, reason: connect ETIMEDOUT
npm couldn’t reach the registry in time — network, proxy or firewall issue.
npm ERR! code ECONNRESET — network aborted / socket hang up
The connection to the registry was reset mid-download.
npm ERR! code E402 — 402 Payment Required - PUT https://registry.npmjs.org/@scope%2fpkg - You must sign up for private packages
You published a scoped package without --access public, so npm tried to publish it as private.
npm ERR! 403 — You cannot publish over the previously published versions: 1.2.3
That version number has already been published (or unpublished) and can’t be reused.
npm WARN tar TAR_ENTRY_ERROR / npm ERR! tarball data for x seems to be corrupted
A downloaded package tarball is damaged — cache corruption or a network/proxy problem.
npm ERR! code E401 — Unable to authenticate, need: Basic realm / Incorrect or missing password
The registry rejected your credentials — missing, expired or wrong auth token.
npm ERR! code ENEEDAUTH — need auth This command requires you to be logged in
npm needs credentials (publishing, private packages) but none are configured for that registry.
npm ERR! code EEXIST — EEXIST: file already exists, symlink '../lib/node_modules/x/bin/x' -> '/usr/local/bin/x'
A global install can’t create its command link because a file with that name already exists.
npm ERR! code EOTP — This operation requires a one-time password from your authenticator
Your npm account has 2FA for writes and no one-time password was supplied.
Error: ENOSPC: System limit for number of file watchers reached
Linux ran out of inotify watches — dev servers watching large projects hit the limit.
npm ERR! code EUNSUPPORTEDPROTOCOL — Unsupported URL Type "workspace:": workspace:*
npm met the workspace: protocol used by pnpm/yarn, which npm doesn’t support.
Two steps away (26)
Git: Permission denied (publickey). fatal: Could not read from remote repository.
SSH authentication to GitHub/GitLab/Bitbucket failed — no key, wrong key, or the key isn’t added to your account.
AWS S3: AccessDenied (403) when calling GetObject / PutObject
An IAM policy, bucket policy, ACL/ownership setting, Block Public Access or KMS key policy denied the S3 request.
Linux: Permission denied
Your user (or the service user) lacks read/write/execute permission on a file, directory or one of its parents.
API Request Timed Out (ETIMEDOUT / ReadTimeout / timeout of 30000ms exceeded)
The client gave up waiting — either for the connection to open or for the response to arrive.
npm ERR! code E404 — 404 Not Found: package@version is not in this registry
npm asked the registry for a package (or version) that doesn’t exist there — a typo, a private/scoped package without auth, or th…
npm ERR! code ETARGET — No matching version found for package@^9.9.9
The version range in package.json doesn’t match any published version of the package.
Error: socket hang up / read ECONNRESET
The other side closed the TCP connection abruptly while your client was still using it.
npm ERR! code ENOTFOUND — request to https://registry.npmjs.org/x failed, reason: getaddrinfo ENOTFOUND registry.npmjs.org
npm couldn’t resolve the registry hostname.
SSL error: tlsv1 alert protocol version / unsupported protocol / no protocols available
The client and server couldn’t agree on a TLS version or cipher, so the HTTPS handshake failed before any HTTP was exchanged.
npm ERR! cb() never called!
An old npm crash during install — usually network/cache corruption.
Error: Cannot find matching keyid (Corepack signature verification)
An older Corepack couldn’t verify the signature of a newly published pnpm/yarn release after npm rotated its signing keys.
Error response from daemon: client version 1.45 is too new. Maximum supported API version is 1.41
Your Docker CLI (or SDK) speaks a newer API version than the Docker daemon it’s talking to.
npm ERR! code EINTEGRITY — sha512 integrity checksum failed
A downloaded package’s hash doesn’t match the integrity value in package-lock.json — a corrupted cache, a changed tarball, or a l…
HTTP 401 Unauthorized
The request has no valid authentication credentials — you need to log in or send a valid token.
npm ERR! could not determine executable to run
npx couldn’t find a binary to run for that package.
{"message":"Missing Authentication Token"} / No authorization token was found
The request reached a protected endpoint without credentials — or, on AWS API Gateway, it hit a path/method that doesn’t exist.
OAuth 2.0 Error: invalid_grant
The authorization code, refresh token or credentials sent to the token endpoint are invalid, expired, already used or were issued…
API Error: Invalid API Key / Incorrect API key provided
The API didn’t recognise the key sent with the request — it’s wrong, revoked, from another environment, or sent in the wrong plac…
invalid_token: The access token is invalid (JsonWebTokenError: invalid signature / jwt malformed)
A token was sent but the server couldn’t verify it — bad signature, malformed, revoked, or issued for another audience or environ…
npm ERR! code EACCES — permission denied
npm can’t write to a directory — usually global installs into a root-owned folder.
Error: EEXIST: file already exists, mkdir
Node tried to create a file/directory/symlink that already exists.
denied: Your authorization token has expired. Reauthenticate and try again. (Amazon ECR)
Docker’s login to Amazon ECR has expired — ECR tokens last 12 hours, so pushes and pulls fail until you log in again.
UnrecognizedClientException: The security token included in the request is invalid
The access key or session token isn’t recognised — wrong/deleted key, a session token missing for temporary credentials, or a reg…
denied: requested access to the resource is denied (docker push)
You’re logged in, but not allowed to push to that repository — usually the image isn’t tagged with your own username/organisation.
no space left on device (Docker / Linux)
The disk (or inode table) is full — Docker images, build cache, logs and volumes are common culprits.
yarn: command not found
Yarn isn’t installed (or not enabled through Corepack) on this machine.
Map another error
Popular: 403500400TypeErrorCritical error0xC000007BNullPointerException404