{"id":24305718,"url":"https://github.com/niniyas/ntfy-action","last_synced_at":"2025-09-26T09:30:57.793Z","repository":{"id":45505066,"uuid":"509694559","full_name":"NiNiyas/ntfy-action","owner":"NiNiyas","description":"Send GitHub Action workflow notifications to ntfy.","archived":false,"fork":false,"pushed_at":"2025-01-10T22:59:01.000Z","size":4531,"stargazers_count":12,"open_issues_count":1,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-16T08:00:12.560Z","etag":null,"topics":["actions","github","notifications","ntfysh","workflow"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NiNiyas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"publiccode":null,"codemeta":null}},"created_at":"2022-07-02T07:56:43.000Z","updated_at":"2024-12-20T05:33:14.000Z","dependencies_parsed_at":"2023-10-11T07:57:02.267Z","dependency_job_id":"efa213cc-21dd-4955-a496-202f66716ede","html_url":"https://github.com/NiNiyas/ntfy-action","commit_stats":{"total_commits":137,"total_committers":3,"mean_commits":"45.666666666666664","dds":0.07299270072992703,"last_synced_commit":"342609e88cb70aca72e6b563261c4e7c4bb5b709"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NiNiyas%2Fntfy-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NiNiyas%2Fntfy-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NiNiyas%2Fntfy-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NiNiyas%2Fntfy-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NiNiyas","download_url":"https://codeload.github.com/NiNiyas/ntfy-action/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":234300470,"owners_count":18810610,"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":["actions","github","notifications","ntfysh","workflow"],"created_at":"2025-01-17T02:15:33.843Z","updated_at":"2025-09-26T09:30:57.080Z","avatar_url":"https://github.com/NiNiyas.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ntfy action\n\nSend GitHub action notifications to [ntfy.sh](https://ntfy.sh).\n\nThis is currently only available for `push`, `release`, `schedule`, `workflow`, `repository_dispatch` and `workflow_dispatch` events. This action will send a default message wich can be extended with your input `details`.\n\nForked from [Form_Data_HTTP_POST_Action](https://github.com/alikamal1/Form_Data_HTTP_POST_Action).\n\n## Inputs\n\n| Input    | Required | Description                                                   | Example                                                                                                                                                                             |\n| -------- | -------- | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| url      | Yes      | ntfy URL                                                      | `www.ntfy.sh`                                                                                                                                                                       |\n| topic    | Yes      | ntfy topic                                                    | `test`                                                                                                                                                                              |\n| tags     | No       | Tags for the message seperated by commas                      | `partying_face,+1`                                                                                                                                                                  |\n| title    | No       | Message title                                                 | `GitHub`. Default is `GitHub Actions`.                                                                                                                                              |\n| priority | No       | Message priority                                              | `5`. Default is 3.                                                                                                                                                                  |\n| details  | No       | Additional text after the notification message.               | `Workflow has failed!`. Default is None.                                                                                                                                            |\n| headers  | No       | Additional Headers                                            | `{\"authorization\": \"Basic 123456\"}`                                                                                                                                                 |\n| actions  | No       | Custom action buttons                                         | `[{\"action\": \"view\",\"label\": \"Open portal\",\"url\": \"https://home.nest.com/\"}, {action 2}]`. Default is `disabled`. Available values: `disabled`, `default` or JSON array of buttons. |\n| icon     | No       | An icon that will appear next to the text of the notification | `https://example.com/example.png`                                                                                                                                                   |\n| image    | No       | An image of your workflow page.                               | Default is `false` Available values: `true`, `false`.                                                                                                                               |\n\n\u003e [!TIP]\n\u003e If you are using CloudFlare infront of your ntfy server, you should turn off `Bot Fight Mode` in `Security-\u003eBots`. Otherwise you probably will get 503 status.\n\n\u003e [!NOTE]\n\u003e The image taken is uploaded to [nokonoko/uguu](https://github.com/nokonoko/uguu)'s official server.\n\n## Example Usage\n\n```yaml\n- name: ntfy-notifications\n  uses: niniyas/ntfy-action@master\n  with:\n    url: 'https://ntfy.sh' or '${{ secrets.NTFY_URL }}'\n    topic: 'test' or '${{ secrets.NTFY_TOPIC }}'\n```\n\n### Send with headers\n\n```yaml\n- name: ntfy-notifications\n  uses: niniyas/ntfy-action@master\n  with:\n    url: 'https://ntfy.sh' or '${{ secrets.NTFY_URL }}'\n    topic: 'test' or '${{ secrets.NTFY_TOPIC }}'\n    headers: '{\"authorization\": \"Basic 123456\", \"another-one\": \"Basic 123456\"}' or '${{ secrets.NTFY_HEADERS }}'\n```\n\n### Send with tags, priority and details\n\n#### Success\n\n```yaml\n- name: ntfy-success-notifications\n  uses: niniyas/ntfy-action@master\n  if: success()\n  with:\n    url: 'https://ntfy.sh' or '${{ secrets.NTFY_URL }}'\n    topic: 'test' or '${{ secrets.NTFY_TOPIC }}'\n    priority: 4\n    headers: '{\"authorization\": \"Basic 123456\", \"another-one\": \"Basic 123456\"}' or '${{ secrets.NTFY_HEADERS }}'\n    tags: +1,partying_face,action,successfully,completed\n    details: Workflow has been successfully completed!\n    icon: 'https://styles.redditmedia.com/t5_32uhe/styles/communityIcon_xnt6chtnr2j21.png'\n    image: true\n```\n\n#### Failed\n\n```yaml\n- name: ntfy-failed-notifications\n  uses: niniyas/ntfy-action@master\n  if: failure()\n  with:\n    url: 'https://ntfy.sh' or '${{ secrets.NTFY_URL }}'\n    topic: 'test' or '${{ secrets.NTFY_TOPIC }}'\n    priority: 5\n    headers: '{\"authorization\": \"Basic 123456\", \"another-one\": \"Basic 123456\"}' or '${{ secrets.NTFY_HEADERS }}'\n    tags: +1,partying_face,action,failed\n    details: Workflow has failed!\n    actions: 'default'\n```\n\n#### Cancelled\n\n```yaml\n- name: ntfy-cancelled-notifications\n  uses: niniyas/ntfy-action@master\n  if: cancelled()\n  with:\n    url: 'https://ntfy.sh' or '${{ secrets.NTFY_URL }}'\n    topic: 'test' or '${{ secrets.NTFY_TOPIC }}'\n    priority: 3\n    headers: '{\"authorization\": \"Basic 123456\", \"another-one\": \"Basic 123456\"}' or '${{ secrets.NTFY_HEADERS }}'\n    tags: +1,partying_face,action,cancelled\n    details: Workflow has been cancelled!\n    actions: '[{\"action\": \"view\", \"label\": \"Open portal\", \"url\": \"https://home.nest.com/\", \"clear\": true}]'\n```\n\n## Default messages\n\n#### push\n\n```js\n`Author: ${payload.head_commit.author.username}\\n` +\n`Committer: ${payload.head_commit.committer.name}\\n` +\n`Ref: ${context.ref}\\n` +\n`Pushed by: ${payload.pusher.name}\\n` +\n`Workflow Job Name: ${context.job}\\n` +\n`Workflow Name: ${context.workflow}\\n\\n` +\n`Commit Message\\n${payload.head_commit.message}`\n```\n\n#### release\n\n```js\n`${payload.release.author.login} has ${payload.action} $\n{payload.release.tag_name} on ${payload.repository.full_name}.\n\\n\\n` +\n`Repo: ${payload.repository.html_url}\\n` +\n`Name: ${payload.release.name}\\n` +\n`Author: ${payload.release.author.login}\\n` +\n`Prerelease: ${payload.release.prerelease}\\n` +\n`Workflow Job Name: ${context.job}\\n` +\n`Workflow Name: ${context.workflow}\\n\\n` +\n`Release Message\\n${payload.release.body}`;\n```\n\n#### schedule\n\n```js\n`Scheduled task '${context.job}' has been executed in ${process.\nenv.GITHUB_REPOSITORY}.\\n\\n` +\n`Workflow Name: ${context.workflow}\\n` +\n`Cron: ${payload.schedule}`;\n```\n\n#### workflow, repository_dispatch, workflow_dispatch, default\n\n```js\n`Workflow '${context.workflow}' has been executed in ${payload.\nrepository.full_name}\\n\\n` +\n`Repository: ${payload.repository.full_name}\\n` +\n`Workflow Job Name: ${context.job}\\n` +\n`Event Name: ${context.eventName}`;\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniniyas%2Fntfy-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fniniyas%2Fntfy-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fniniyas%2Fntfy-action/lists"}