earendil-works/pi · error · Error
No API key for provider: ${model.provider}
Error message
No API key for provider: ${model.provider} What it means
Error "No API key for provider: ${model.provider}" thrown in earendil-works/pi.
Source
Thrown at packages/ai/src/api/openrouter-images.ts:57
export const generateImages: ImagesFunction<"openrouter-images", ImagesOptions> = async (
model: ImagesModel<"openrouter-images">,
context: ImagesContext,
options?: ImagesOptions,
) => {
const output: AssistantImages = {
api: model.api,
provider: model.provider,
model: model.id,
output: [],
stopReason: "stop",
timestamp: Date.now(),
};
try {
const apiKey = options?.apiKey;
if (!apiKey) {
throw new Error(`No API key for provider: ${model.provider}`);
}
const client = createClient(model, apiKey, options?.headers, options?.fetch);
let params = buildParams(model, context);
const nextParams = await options?.onPayload?.(params, model);
if (nextParams !== undefined) {
params = nextParams as typeof params;
}
const requestOptions = {
...(options?.signal ? { signal: options.signal } : {}),
...(options?.timeoutMs !== undefined ? { timeout: options.timeoutMs } : {}),
maxRetries: 0,
};
const { data: response, response: rawResponse } = await retryProviderRequest(
() =>
client.chat.completions
.create(params as unknown as ChatCompletionCreateParamsNonStreaming, requestOptions)
.withResponse(),
{View on GitHub (pinned to 4af9d21d3b)
Solutions
- Set OPENROUTER_API_KEY or provide an API key for the provider.
When it happens
Trigger: Thrown at packages/ai/src/api/openrouter-images.ts:57 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of earendil-works/pi@4af9d21d3b (2026-08-24).
Data as JSON: /api/errors/1da25c0070c9286a.
Report an issue: GitHub.