{"id":19658307,"url":"https://github.com/cdaringe/webhookup","last_synced_at":"2026-01-31T23:05:08.211Z","repository":{"id":33112523,"uuid":"152180823","full_name":"cdaringe/webhookup","owner":"cdaringe","description":"create or delete GitHub webhooks, real fast, real easy :zap:","archived":false,"fork":false,"pushed_at":"2024-07-23T23:37:37.000Z","size":481,"stargazers_count":1,"open_issues_count":17,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-08T01:53:54.076Z","etag":null,"topics":["cli","github","library","webhook"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cdaringe.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-10-09T03:15:52.000Z","updated_at":"2019-09-19T08:52:41.000Z","dependencies_parsed_at":"2023-09-24T07:43:30.400Z","dependency_job_id":"b6fa3c25-8696-472b-bb8f-bce57402963e","html_url":"https://github.com/cdaringe/webhookup","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdaringe%2Fwebhookup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdaringe%2Fwebhookup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdaringe%2Fwebhookup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdaringe%2Fwebhookup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cdaringe","download_url":"https://codeload.github.com/cdaringe/webhookup/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdaringe%2Fwebhookup/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259200393,"owners_count":22820613,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","github","library","webhook"],"created_at":"2024-11-11T15:37:01.133Z","updated_at":"2026-01-31T23:05:03.165Z","avatar_url":"https://github.com/cdaringe.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# webhookup\n\nsetup webhooks _quickly_ for your GitHub/GHE projects.\n\n[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release) [![Greenkeeper badge](https://badges.greenkeeper.io/cdaringe/pg-subscribe.svg)](https://greenkeeper.io/)\n\n## usage\n\n`npx webhookup [options]`.  you can also `npm install -g webhookup` or `yarn global add webhookup`\n\n## configuration\n\n`webhookup` can be **configured through the CLI or the environment**.  my preference is to set a few env vars and simply run `webhookup` in the current project to setup my most commonly used webhook, then override it only as needed with the CLI.\n\n### env\n\na common env config could be:\n\n```sh\nexport WEBHOOK_GITHUB_TOKEN=\u003cTOKEN\u003e\nexport WEBHOOK_ENDPOINT=https://\u003cWEBHOOK_HOST\u003e/payload\nexport WEBHOOK_SECRET=\u003cHOOK_SECRET\u003e\nexport WEBHOOK_EVENTS=status,pull_request # https://developer.github.com/webhooks/#events\n# export GITHUB_ENDPOINT # assume api.github.com\n# export GITHUB_OWNER # let the cli discover it from your project\n# export GITHUB_REPOSITORY # let the cli discover it from your project\n```\n\nthen `cd /my/project \u0026\u0026 webhookup`.  **please tread with caution** putting secrets in your env.\n\n### cli\n\nyou can provide and/or squash any settings from the CLI:\n\n```sh\n$ webhookup --help\n  github webhooks library \u0026 cli\n\n  Usage\n    $ webhookup [options]\n\n  Options\n\n  --github, -g or env GITHUB_ENDPOINT. defaults to github.com's api\n  --owner, -o or env GITHUB_OWNER. repo owner/org. if none provided, tries to read owner from working directory\n  --repository, -r or env GITHUB_REPOSITORY. repo name. if none provided, tries to read from working directory\n  --token, -t or env WEBHOOK_GITHUB_TOKEN or GITHUB_TOKEN. github api token. must provide admin:repo_hook permission\n  --endpoint, -h or env WEBHOOK_ENDPOINT. url to the origin (host:\u003cport\u003e) where your webhook listener lives\n  --secret, -s or env WEBHOOK_SECRET. github webhook secret. your hook service uses this secret to verify that request is legitimate.\n  --events, -e or env WEBHOOK_EVENTS. csv list of events. e.g. `status,push`\n  --purge, -p delete all webhooks for repo.\n\n  Examples\n    # minimal, if you configure your env for everything\n    $ webhookup\n\n    # pragmatic option 1, specify just events, cd to your github/.git enabled project,\n    # use your env for the rest\n    $ webhookup -e status,push\n\n    # pragmatic option 2, if your PWD is a github \u0026 .git enabled project\n    $ webhookup -t \u003ctoken\u003e -h my.webhook.host.com -s \u003csuper-secret\u003e -e status,push\n\n    # ignore PWD, specify org \u0026 repo\n    $ webhookup -o cdaringe -r webhookup\n```\n\n### tokens\n\nyour github token _must_ provide `admin:repo_hook` permission.  you can visit [https://github.com/settings/tokens/new](https://github.com/settings/tokens/new) to create new github API tokens.\n\n![](./img/token_config.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdaringe%2Fwebhookup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcdaringe%2Fwebhookup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdaringe%2Fwebhookup/lists"}