diegosouzapw/OmniRoute · error

Ineligible free provider IDs: ${invalidIds.join(", ")}

Error message

Ineligible free provider IDs: ${invalidIds.join(", ")}

What it means

Error "Ineligible free provider IDs: ${invalidIds.join(", ")}" thrown in diegosouzapw/OmniRoute.

Source

Thrown at src/lib/providers/freeOnboarding.ts:110

}

interface SetupFreeProviderConnectionsOptions {
  requestedIds: string[];
  candidates: FreeOnboardingProvider[];
  listExisting: () => Promise<ExistingProviderConnection[]>;
  create: (input: FreeProviderConnectionInput) => Promise<{ id?: unknown } | null>;
}

function validateRequestedIds(
  requestedIds: string[],
  candidates: FreeOnboardingProvider[]
): Map<string, FreeOnboardingProvider> {
  const candidatesById = new Map(candidates.map((candidate) => [candidate.id, candidate]));
  const invalidIds = [...new Set(requestedIds)]
    .filter((providerId) => !candidatesById.has(providerId))
    .sort((left, right) => left.localeCompare(right));
  if (invalidIds.length > 0) {
    throw new Error(`Ineligible free provider IDs: ${invalidIds.join(", ")}`);
  }
  return candidatesById;
}

export async function setupFreeProviderConnections(
  options: SetupFreeProviderConnectionsOptions
): Promise<{ results: FreeProviderSetupResult[] }> {
  const candidatesById = validateRequestedIds(options.requestedIds, options.candidates);
  const results: FreeProviderSetupResult[] = [];

  for (const providerId of [...new Set(options.requestedIds)]) {
    const existing = await options.listExisting();
    if (existing.some((connection) => connection.provider === providerId)) {
      results.push({ providerId, status: "skipped", reason: "already-configured" });
      continue;
    }

    const candidate = candidatesById.get(providerId)!;

View on GitHub (pinned to a179ffed5b)

When it happens

Trigger: Thrown at src/lib/providers/freeOnboarding.ts:110 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/ab52a9445c167cdd. Report an issue: GitHub.