<@ULVA73B9P> I successfully deployed a flow but wh...
# ask-marvin
a
@Marvin I successfully deployed a flow but when I check the UI, sometimes it shows the deployment whilst other times it says No deployment. When it does show and i click the deployment, the page does not load. Why is this?
m
thought for 164.1 seconds
Thanks for flagging this — intermittent “No deployments” and a deployment detail page that won’t load typically points to either: - a UI/API mismatch (the UI is pointing at the wrong API or an ingress/proxy is routing API calls to the UI), or - filters/workspace selection making the list appear empty, or - a browser/network issue causing API calls for the detail page to fail. A few targeted checks to narrow it down: 1) Confirm where you’re running - Are you on Prefect Cloud or self-hosted? (If Cloud, check status in case there’s an incident.) - Make sure you’re in the intended workspace (top-left selector in the UI). If you switch workspaces, the deployment list can appear empty. 2) Clear UI filters - On the Deployments page, clear any Project/Tag/Search filters; the UI persists filters and can show “No deployments” if they don’t match. 3) Verify the deployment exists via CLI - This isolates UI vs API issues.
Copy code
prefect deployment ls
prefect deployment inspect "your-flow-name/your-deployment-name"
We verified these commands exist. 4) Check browser devtools - Open DevTools → Network, reload the deployments page and the deployment detail page. If calls to /api/deployments/... or /api/flows/... return 401/403/404/5xx or HTML instead of JSON, that’s the root cause. Also try an incognito window or another browser to rule out extensions/ad blockers. 5) If you’re self-hosting behind an ingress/reverse proxy - This pattern (API calls returning HTML) is common when
/api/*
requests are routed to the UI rather than the API service. The UI may then show intermittent/incomplete state and the detail page won’t load. - Make sure your routes split UI and API correctly, e.g. with Nginx:
Copy code
location /api/ {
  proxy_pass <http://prefect-api:4200/api/;>
}

location / {
  proxy_pass <http://prefect-ui:8080/;>
}
- Confirm the UI is pointing to the right API with
PREFECT_UI_API_URL
. - Check your API health at
/api/health
(should return JSON like {"status":"healthy"}). Related report showing HTML returned for an API endpoint due to routing/config: prefect#10330. There’s also an unrelated UI params display issue here for awareness: prefect#16462. Could you share: - Cloud or self-hosted? If self-hosted, what ingress/proxy (Nginx/Traefik/ALB/etc.)? - The workspace you’re viewing in the UI vs the one you deployed to - Any Network tab errors and their response bodies from the failing calls - Browser and whether an incognito window behaves the same With those details, I can pinpoint the cause and provide a precise fix.
a
when i check the network i do see 500 (Internal Server Error)
@Marvin when i check the network i do see 500 (Internal Server Error)
m
thought for 91.8 seconds
A 500 in the Network tab means the API is erroring on the server side — that’s why the UI sometimes shows “No deployments” and why the detail page won’t load. Quickest way to narrow it down: - Which request is 500’ing? Grab the exact URL (e.g. GET /api/deployments/{id}, /api/deployments/filter, /api/flows/{id}, etc.), the response body, and any request-id header. - Does the CLI hit the same error?
Copy code
prefect deployment ls
prefect deployment inspect "<flow-name>/<deployment-name>"
If CLI fails too, it’s definitely the API. Please confirm Cloud vs self-hosted so we can target the fix: If you’re on Prefect Cloud - Check the exact failing endpoint and the response body; share the request-id header if present and your workspace slug so we can investigate. - Try an incognito window to rule out extension issues, but a 500 is almost always server-side. If you’re self-hosted - Check API logs for a stack trace at the time of the 500 (container/pod running the API). - Ensure the DB schema is up-to-date and the API is healthy:
Copy code
prefect server services ls
prefect server database upgrade
- Hit /api/health directly; confirm it returns JSON and not errors. - Verify your API and UI images/versions match your installed Prefect version; upgrade to the latest 3.x if you’re behind. - If only certain deployments fail, it may be a bad record or schema mismatch; compare clicking another deployment vs the problematic one and try:
Copy code
prefect deployment inspect "<flow>/<deployment>"
Could you share: - Cloud or self-hosted (and if self-hosted, how it’s deployed: Docker/K8s, Postgres, any reverse proxy)? - The exact failing endpoint(s) and response body from the Network tab - Whether
prefect deployment inspect
on that deployment succeeds or errors With that info (and a snippet of the API log/trace), I can pinpoint the cause and provide the exact fix.