'npm ERR! 403 403 Forbidden npm publish

I try to publish public package on npm but I have this error

npm ERR! code E403
npm ERR! 403 403 Forbidden - PUT https://registry.npmjs.org/@clem_b%2fweather - Forbidden
npm ERR! 403 In most cases, you or one of your dependencies are requesting
npm ERR! 403 a package version that is forbidden by your security policy, or
npm ERR! 403 on a server you do not have access to.

So in first watch my package.jsonbelow.

{
  "name": "@clem_b/weather",
  "version": "1.0.6",
  "description": "weather cli",
  "main": "build/main.js",
  "types": "build/main.d.ts",
  "homepage": "https://github.com/ClementBolin/weatherCLI#readme",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/ClementBolin/weatherCLI.git"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "rimraf ./build && tsc",
    "start": "npm run build && node build/mai.js"
  },
  "bin": {
    "app": "bin/weatherCLI"
  },
  "keywords": [
    "weather",
    "today",
    "rain",
    "sun"
  ],
  "author": "clem_b",
  "license": "MIT",
  "devDependencies": {
    "@types/minimist": "^1.2.0",
    "@types/node": "^14.14.6",
    "@types/oauth": "^0.9.1",
    "@types/ora": "^3.2.0",
    "rimraf": "^3.0.2",
    "tslint": "^6.1.3",
    "typescript": "^4.0.5"
  },
  "prepublish": "npm run build",
  "dependencies": {
    "minimist": "^1.2.5",
    "oauth": "^0.9.15",
    "ora": "^0.3.0"
  }
}

So after end to write my code, I decide to publish my code on npm, so I create npm account, I use npm loginfor connect to my account. After this I run the following command npm publish --access publicand I have error write in top. I search on many topics, but I don't find solution



Solution 1:[1]

just ran into this myself. I created a new NPM account and then immediately authenticated via npm login.

Then, I ran npm publish --access public and received the exact same error message.

I was able to resolve the issue by verifying my email account for NPM (doh).

Solution 2:[2]

In npm profile, in ACCOUNT section, you must activate 2FA and after select "Enabled for authorization and publishing" inside of 2FA options.

If already do this, verify if your project has the same name of another project registered. In this case if has, just change the name.

Solution 3:[3]

check if the name is reserved in npm in my case the name was alrady used also try

sudo npm install -g https://tls-test.npmjs.com/tls-test-1.0.0.tgz

Solution 4:[4]

Probably there is already a package with the same name present on npm. Change package name in package.json and try again.

Solution 5:[5]

just verify your email. try again to publish the packages

Solution 6:[6]

In my case, the problem was resolved after I created a team (within my NPM organization) and added myself as a member to that team.

see: https://github.com/npm/cli/issues/1012#issuecomment-629546298

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 pnl data
Solution 2
Solution 3 LeulAria
Solution 4 sudip-modi
Solution 5 Nicolas Pepinster
Solution 6