diegosouzapw/OmniRoute · error · WebSearchExecutionError
No credentials configured for any search provider. Add an AP
Error message
No credentials configured for any search provider. Add an API key for a search provider (${Object.keys(SEARCH_PROVIDERS).join(", ")}) in the dashboard. What it means
Error "No credentials configured for any search provider. Add an API key for a search provider (${Object.keys(SEARCH_PROVIDERS).join(", ")}) in the dashboard." thrown in diegosouzapw/OmniRoute.
Source
Thrown at src/lib/search/executeWebSearch.ts:226
const sortedIds = Object.values(SEARCH_PROVIDERS)
.filter((provider) => supportsSearchType(provider, searchType))
.sort((a, b) => a.costPerQuery - b.costPerQuery)
.map((provider) => provider.id);
for (const providerId of sortedIds) {
if (providerId === providerConfig.id) continue;
const altConfig = getSearchProvider(providerId);
const altCreds = await resolveSearchCredentials(providerId);
if (altConfig && altCreds) {
providerConfig = altConfig;
credentials = altCreds;
break;
}
}
}
if (!credentials) {
throw new WebSearchExecutionError(
`No credentials configured for any search provider. Add an API key for a search provider (${Object.keys(
SEARCH_PROVIDERS
).join(", ")}) in the dashboard.`,
400
);
}
const otherIds = Object.values(SEARCH_PROVIDERS)
.filter((provider) => supportsSearchType(provider, searchType))
.sort((a, b) => a.costPerQuery - b.costPerQuery)
.map((provider) => provider.id)
.filter((providerId) => providerId !== providerConfig!.id);
for (const providerId of otherIds) {
const creds = await resolveSearchCredentials(providerId);
if (creds) {
alternateProviderId = providerId;
alternateCredentials = creds;View on GitHub (pinned to a179ffed5b)
When it happens
Trigger: Thrown at src/lib/search/executeWebSearch.ts:226 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/8af9c79fcaf08dd9.
Report an issue: GitHub.