Skip to content

feat:webhook-subscription-ui - #462

Merged
Wilfred007 merged 2 commits into
Protocol-Guild:mainfrom
LamsOfJos:feat/webhook-subscription-ui
Aug 20, 2026
Merged

feat:webhook-subscription-ui#462
Wilfred007 merged 2 commits into
Protocol-Guild:mainfrom
LamsOfJos:feat/webhook-subscription-ui

Conversation

@LamsOfJos

Copy link
Copy Markdown
Contributor

Summary

  • Add a webhook subscriptions page under Settings so org admins can create, view, and delete their own webhook subscriptions from the product UI (previously only the backend API existed).
  • New webhookApi.ts service wired to the existing /webhooks/subscribe, /webhooks/subscriptions endpoints.
  • New WebhookSettings.tsx page: create form (target URL, signing secret, event-type selection), subscription list with delete/revoke action, and loading/empty/error states matching existing UI patterns.
  • Linked from Settings.tsx and routed at /settings/webhooks.
  • All UI copy added as i18n keys in en and es translation files — no hardcoded strings, consistent with Complete i18n coverage: replace hardcoded UI strings with translation keys #416.

Test plan

  • npm run build / tsc --noEmit in frontend/
  • Manually create a subscription from the UI and confirm it's persisted via GET /webhooks/subscriptions (or DB, once persistence lands)
  • Confirm delete removes the subscription from the list and backend
  • Verify loading/empty/error states render correctly
  • Toggle language (en/es) and confirm no hardcoded strings remain

Closes #449

@Wilfred007

Copy link
Copy Markdown
Contributor

@LamsOfJos thank you for the work done so far, kindly check failing checks
Run npm run lint
Once fixed I will gladly merge

no-misused-promises flagged the async handleCreate passed directly to
form onSubmit, and exhaustive-deps flagged loadSubscriptions being
called from useEffect without being a listed dependency. Wrap the
submit handler and move the loader inside the effect, matching the
pattern already used elsewhere in the app (TransactionHistory,
Forecasting). Verified npm run lint, prettier --check, and npm run
build all pass locally.
@Wilfred007
Wilfred007 merged commit e98813d into Protocol-Guild:main Aug 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No frontend UI for webhook subscription management despite a complete backend API

2 participants