Summary
Once a provider registers a webhook via POST /api/webhooks/low-balance there is no way to see which URLs are registered. Add a read endpoint so admins can audit and debug webhook configuration.
Acceptance Criteria
GET /api/webhooks returns { webhooks: [{ url, registered_at }] }
- Protected by
requireAdminKey middleware
- Returns an empty array when no webhooks are registered
Files to touch
backend/src/routes/webhooks.ts
backend/src/lib/webhookRegistry.ts — add a listWebhooks() export
Summary
Once a provider registers a webhook via
POST /api/webhooks/low-balancethere is no way to see which URLs are registered. Add a read endpoint so admins can audit and debug webhook configuration.Acceptance Criteria
GET /api/webhooksreturns{ webhooks: [{ url, registered_at }] }requireAdminKeymiddlewareFiles to touch
backend/src/routes/webhooks.tsbackend/src/lib/webhookRegistry.ts— add alistWebhooks()export