Get readyz
GET
cURL
Response
All downstream deps healthy
SELECT 1 on Postgres succeeded.
PING on Redis returned PONG.
Per-source freshness so /status can render each row with its own honest age instead of mirroring the global discount timestamp.
"ready" if all downstream deps are healthy; "not_ready" otherwise.
Seconds since the most recent discount_snapshots.ts. None if no
snapshots exist yet.
Previous
GET /v1/meta/webhook-ips — IP allowlist hint for webhook subscribers.Pattern lifted from Linear (`6 static IPs` page) and GitHub
(`GET /meta` with `hooks` field). Subscribers behind enterprise
firewalls need to know which source IPs to trust; without this
they either disable signature-based trust or refuse our deliveries.
Source of truth is the `PEGANA_WEBHOOK_EGRESS_IPS` env var
(comma-separated). Default falls back to the Hetzner production
box's static IP. When we add a second box, set the env to
`49.12.240.164,<new-ip>` — no code change required.
Next
cURL