diff --git a/.changeset/fix-openrouter-referer-header.md b/.changeset/fix-openrouter-referer-header.md new file mode 100644 index 00000000000..cd0d110d446 --- /dev/null +++ b/.changeset/fix-openrouter-referer-header.md @@ -0,0 +1,5 @@ +--- +"@effect/ai-openrouter": patch +--- + +Fix typo in HTTP header name: `HTTP-Referrer` → `HTTP-Referer`. The HTTP spec spells it "Referer" (single r), and OpenRouter expects this exact header name for app attribution. diff --git a/packages/ai/openrouter/src/OpenRouterClient.ts b/packages/ai/openrouter/src/OpenRouterClient.ts index ecf1f56c649..9cd54a6c56d 100644 --- a/packages/ai/openrouter/src/OpenRouterClient.ts +++ b/packages/ai/openrouter/src/OpenRouterClient.ts @@ -102,7 +102,7 @@ export const make: (options: { request.pipe( HttpClientRequest.prependUrl(options.apiUrl ?? "https://openrouter.ai/api/v1"), options.apiKey ? HttpClientRequest.bearerToken(options.apiKey) : identity, - options.referrer ? HttpClientRequest.setHeader("HTTP-Referrer", options.referrer) : identity, + options.referrer ? HttpClientRequest.setHeader("HTTP-Referer", options.referrer) : identity, options.title ? HttpClientRequest.setHeader("X-Title", options.title) : identity, HttpClientRequest.acceptJson )