/usr/share/doc/nodejs/npm/docs/content/commands
--- title: npm-hook section: 1 description: Manage registry hooks --- ### Synopsis ```bash npm hook add <pkg> <url> <secret> [--type=<type>] npm hook ls [pkg] npm hook rm <id> npm hook update <id> <url> <secret> ``` Note: This command is unaware of workspaces. ### Description Allows you to manage [npm hooks](https://blog.npmjs.org/post/145260155635/introducing-hooks-get-notifications-of-npm), including adding, removing, listing, and updating. Hooks allow you to configure URL endpoints that will be notified whenever a change happens to any of the supported entity types. Three different types of entities can be watched by hooks: packages, owners, and scopes. To create a package hook, simply reference the package name. To create an owner hook, prefix the owner name with `~` (as in, `~youruser`). To create a scope hook, prefix the scope name with `@` (as in, `@yourscope`). The hook `id` used by `update` and `rm` are the IDs listed in `npm hook ls` for that particular hook. The shared secret will be sent along to the URL endpoint so you can verify the request came from your own configured hook. ### Example Add a hook to watch a package for changes: ```bash $ npm hook add lodash https://example.com/ my-shared-secret ``` Add a hook to watch packages belonging to the user `substack`: ```bash $ npm hook add ~substack https://example.com/ my-shared-secret ``` Add a hook to watch packages in the scope `@npm` ```bash $ npm hook add @npm https://example.com/ my-shared-secret ``` List all your active hooks: ```bash $ npm hook ls ``` List your active hooks for the `lodash` package: ```bash $ npm hook ls lodash ``` Update an existing hook's url: ```bash $ npm hook update id-deadbeef https://my-new-website.here/ ``` Remove a hook: ```bash $ npm hook rm id-deadbeef ``` ### Configuration #### `registry` * Default: "https://registry.npmjs.org/" * Type: URL The base URL of the npm registry. #### `otp` * Default: null * Type: null or String This is a one-time password from a two-factor authenticator. It's needed when publishing or changing package permissions with `npm access`. If not set, and a registry response fails with a challenge for a one-time password, npm will prompt on the command line for one. ### See Also * ["Introducing Hooks" blog post](https://blog.npmjs.org/post/145260155635/introducing-hooks-get-notifications-of-npm)
.
Edit
..
Edit
npm-access.md
Edit
npm-adduser.md
Edit
npm-audit.md
Edit
npm-bin.md
Edit
npm-bugs.md
Edit
npm-cache.md
Edit
npm-ci.md
Edit
npm-completion.md
Edit
npm-config.md
Edit
npm-dedupe.md
Edit
npm-deprecate.md
Edit
npm-diff.md
Edit
npm-dist-tag.md
Edit
npm-docs.md
Edit
npm-doctor.md
Edit
npm-edit.md
Edit
npm-exec.md
Edit
npm-explain.md
Edit
npm-explore.md
Edit
npm-find-dupes.md
Edit
npm-fund.md
Edit
npm-help-search.md
Edit
npm-help.md
Edit
npm-hook.md
Edit
npm-init.md
Edit
npm-install-ci-test.md
Edit
npm-install-test.md
Edit
npm-install.md
Edit
npm-link.md
Edit
npm-logout.md
Edit
npm-ls.md
Edit
npm-org.md
Edit
npm-outdated.md
Edit
npm-owner.md
Edit
npm-pack.md
Edit
npm-ping.md
Edit
npm-pkg.md
Edit
npm-prefix.md
Edit
npm-profile.md
Edit
npm-prune.md
Edit
npm-publish.md
Edit
npm-query.md
Edit
npm-rebuild.md
Edit
npm-repo.md
Edit
npm-restart.md
Edit
npm-root.md
Edit
npm-run-script.md
Edit
npm-search.md
Edit
npm-set-script.md
Edit
npm-shrinkwrap.md
Edit
npm-star.md
Edit
npm-stars.md
Edit
npm-start.md
Edit
npm-stop.md
Edit
npm-team.md
Edit
npm-test.md
Edit
npm-token.md
Edit
npm-uninstall.md
Edit
npm-unpublish.md
Edit
npm-unstar.md
Edit
npm-update.md
Edit
npm-version.md
Edit
npm-view.md
Edit
npm-whoami.md
Edit
npm.md
Edit
npx.md
Edit