ruvnet/ruflo · error · HttpError
Missing 'url' parameter
Error message
Missing 'url' parameter
What it means
SvelteKit 400 error thrown by the fetch-url GET handler when the required 'url' query parameter is absent, so there is nothing to fetch or validate.
Source
Thrown at ruflo/src/ruvocal/src/routes/api/fetch-url/+server.ts:54
try {
assertSafeIp(entry.address, hostname);
} catch (e) {
return callback(e as Error, "", 4);
}
}
}
return callback(null, address, family);
});
},
},
});
export async function GET({ url }) {
const targetUrl = url.searchParams.get("url");
if (!targetUrl) {
logger.warn("Missing 'url' parameter");
throw error(400, "Missing 'url' parameter");
}
if (!isValidUrl(targetUrl)) {
logger.warn({ targetUrl }, "Invalid or unsafe URL (only HTTPS is supported)");
throw error(400, "Invalid or unsafe URL (only HTTPS is supported)");
}
// Fetch with timeout, following redirects manually to validate each hop
const controller = new AbortController();
const timeoutId = setTimeout(() => controller.abort(), FETCH_TIMEOUT);
let currentUrl = targetUrl;
let response: Awaited<ReturnType<typeof fetch>>;
let redirectCount = 0;
try {
// eslint-disable-next-line no-constant-condition
while (true) {View on GitHub (pinned to fa13ee4ad6)
Solutions
- Pass the 'url' query parameter or JSON field in the request to /api/fetch-url.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at ruflo/src/ruvocal/src/routes/api/fetch-url/+server.ts:54 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18).
Data as JSON: /api/errors/21ba411342d2d393.
Report an issue: GitHub.