diegosouzapw/OmniRoute · error · Error
HTTP ${res.status}
Error message
HTTP ${res.status} What it means
Error "HTTP ${res.status}" thrown in diegosouzapw/OmniRoute.
Source
Thrown at src/app/(dashboard)/dashboard/free-provider-rankings/page.tsx:94
const [availableOnly, setAvailableOnly] = useState(false);
const [typeFilter, setTypeFilter] = useState<ProviderAuthType | "">("");
const [groupByType, setGroupByType] = useState(false);
const fetchRankings = useCallback(
async (category?: string, opts?: { configuredOnly?: boolean; availableOnly?: boolean }) => {
setLoading(true);
setError("");
try {
const params = new URLSearchParams();
if (category) params.set("category", category);
if (opts?.configuredOnly) params.set("configuredOnly", "1");
if (opts?.availableOnly) params.set("availableOnly", "1");
const qs = params.toString();
const url = qs
? `/api/free-provider-rankings?${qs}`
: "/api/free-provider-rankings";
const res = await fetch(url);
if (!res.ok) throw new Error(`HTTP ${res.status}`);
const data = await res.json();
setRankings(data.rankings || []);
} catch (err) {
setError(err instanceof Error ? err.message : t("errorLoading"));
} finally {
setLoading(false);
}
},
[t]
);
useEffect(() => {
fetchRankings(filter || undefined, { configuredOnly, availableOnly });
}, [filter, configuredOnly, availableOnly, fetchRankings]);
// Client-side Type filter + "group by type" sort (#6915) — purely derived
// from the already-fetched `rankings`, never trigger a refetch.
const displayedRankings = useMemo(() => {View on GitHub (pinned to a179ffed5b)
When it happens
Trigger: Thrown at src/app/(dashboard)/dashboard/free-provider-rankings/page.tsx:94 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of diegosouzapw/OmniRoute@a179ffed5b (2026-08-25).
Data as JSON: /api/errors/59e71973ce1dc6a5.
Report an issue: GitHub.