Studio HTTPS → Localhost HTTP blocked (PNA/Mixed Content) despite Next.js proxy CORS
- Issue
- From Novu Studio, calls to
http://localhost:8004/api/novu are blocked with “unknown address space” / net::ERR_FAILED (health-check and discover). Looks like HTTPS→HTTP mixed-content/Private Network blocking before CORS.
- Environment
- macOS 15, Node 22.x, Next.js 16.0.1, @novu/framework 2.7.1, @novu/nextjs 3.11.0
- Setup
- App Router endpoint at /api/novu via serve({ workflows })
- Root proxy.ts (Next.js v16 convention) with matcher ['/api/novu', '/api/novu/:path*']
- CORS allowlist includes eu.dashboard-v2.novu.co, dashboard-v2.novu.co, dashboard-v0.novu.co
- Preflight OPTIONS returns 204 with Access-Control-Allow-Private-Network: true
- Scripts
- What works
- Direct GET: http://localhost:8004/api/novu?action=health-check → { "status": "ok", "sdkVersion": "2.7.1", ... }
- Curl preflight succeeds (204, echoes origin, includes PNA)
- What fails
- From Studio (often origin https://dashboard-v0.novu.co), requests to localhost are blocked before CORS is applied
- Tried
- Moved to proxy.ts, expanded allowlist, verified preflight/PNA
- Ran npx novu@latest dev --port 8004 --route /api/novu and opened the printed link; still sometimes lands on v0-origin and remains blocked

7 Replies
Gurami
Could you please share the browser details?
Could you please share the browser details?
It’s chrome latest version on mac
@Gurami
Could you please check if you get the same error on using 4000 port as bridge application port?
Tried on port 4000, but got exact same error. Chrome version is: 142.0.7444.135 (Official Build) (arm64)
Apologies for back and forth on this.
Could you please check with using below script
I tried but I'm getting exactly the same result
@Gurami
DMed you