Skip to content

feat(webhooks): add ntfy-token preset for authenticated ntfy access#409

Merged
CybotTM merged 1 commit intomainfrom
feature/ntfy-token-preset
Dec 18, 2025
Merged

feat(webhooks): add ntfy-token preset for authenticated ntfy access#409
CybotTM merged 1 commit intomainfrom
feature/ntfy-token-preset

Conversation

@CybotTM
Copy link
Member

@CybotTM CybotTM commented Dec 18, 2025

Summary

  • Add new ntfy-token preset with Bearer token authentication for self-hosted ntfy instances or private topics
  • Clarify that the existing ntfy preset is for public topics only
  • Remove unused secret variable from the ntfy preset (it was defined but never used in headers)

Changes

File Change
middlewares/presets/ntfy-token.yaml New preset with Authorization: Bearer {secret} header
middlewares/presets/ntfy.yaml Updated description, removed unused secret variable
docs/webhooks.md Added documentation for both presets with examples
middlewares/preset_test.go Added tests for ntfy-token preset

Usage

Public topics (no auth):

[webhook "ntfy-public"]
preset = ntfy
id = my-public-topic

Private topics or self-hosted with tokens:

[webhook "ntfy-private"]
preset = ntfy-token
url = https://ntfy.example.com/my-topic
secret = tk_AgQdq7mVBoFD37zQVN29RhuMzNIz2

Related

Partially addresses #407 - This PR adds authentication support for ntfy. A separate PR will address the private network access (SSRF) configuration.

Test plan

  • All existing preset tests pass
  • New ntfy-token preset loads correctly
  • Authorization header is correctly set with Bearer token
  • ntfy preset correctly excludes Authorization header
  • Documentation examples are accurate

Add a new ntfy-token preset that includes Bearer token authentication
for self-hosted ntfy instances or private topics. The existing ntfy
preset remains for public topics without authentication.

Changes:
- Add middlewares/presets/ntfy-token.yaml with Authorization header
- Update ntfy.yaml to clarify it's for public topics only
- Remove unused secret variable from ntfy preset
- Update documentation with examples for both presets
- Add tests for ntfy-token preset

Closes #407 (partial - authentication support)
Copilot AI review requested due to automatic review settings December 18, 2025 10:05
@github-actions
Copy link

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@CybotTM CybotTM added this pull request to the merge queue Dec 18, 2025
Merged via the queue into main with commit aea158a Dec 18, 2025
23 of 24 checks passed
@CybotTM CybotTM deleted the feature/ntfy-token-preset branch December 18, 2025 12:10
github-merge-queue bot pushed a commit that referenced this pull request Dec 22, 2025
## Summary

Updates CHANGELOG.md with release notes for v0.17.0 including:

- **Secure Web Authentication** (#408)
- **Doctor Command Enhancements** (#408)
- **ntfy-token Preset** (#409)
- **Webhook Host Whitelist** (#410)
- **CronClock Interface** (#412)
- **Cookie Security Hardening** (#411)
- **GitHub Actions Pinning** (#411)
- **Test Infrastructure Improvements** (#412)
- **Performance Optimizations** (#412)
- **Linting Audit** (#413)

## Test Plan

- [x] Changelog follows Keep a Changelog format
- [x] All PR references are correct
- [x] Date is correct (2025-12-22)
@CybotTM CybotTM added the released:v0.17.0 Included in v0.17.0 release label Dec 22, 2025
@CybotTM
Copy link
Member Author

CybotTM commented Dec 22, 2025

🚀 Released in v0.17.0

Thank you for your contribution! 🙏

This is now available in the latest release. Please test and verify everything works as expected in your environment.

If you encounter any issues, please open a new issue.

github-merge-queue bot pushed a commit that referenced this pull request Dec 22, 2025
## Summary

Adds links to PRs and Issues in each release's notes, making it easy for
users to see what changed.

### Changes

1. **Workflow update**: The `notify-released` job now adds an "Included
in this release" section with:
   - Links to all merged PRs labeled with `released:vX.Y.Z`
   - Links to all closed Issues labeled with `released:vX.Y.Z`

2. **Backfill script**: `scripts/update-release-notes.sh` updates past
release notes

### Example output in release notes

```markdown
---

## Included in this release

### Pull Requests

- [#408](#408) feat: secure web auth
- [#409](#409) feat: ntfy-token preset

### Issues

- [#407](#407) Add token auth for ntfy
```

## Test Plan

- [x] Dry-run script tested
- [ ] Run update script after merge to backfill all releases
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

released:v0.17.0 Included in v0.17.0 release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants