OpenRouter ↗ is a platform that provides a unified interface for accessing and using large language models (LLMs).
https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/openrouterWhen making requests to OpenRouter ↗, replace https://openrouter.ai/api/v1/chat/completions in the URL you are currently using with https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/openrouter/chat/completions.
When making requests to OpenRouter, ensure you have the following:
- Your AI Gateway Account ID.
- Your AI Gateway gateway name.
- An active OpenRouter API token or a token from the original model provider.
- The name of the OpenRouter model you want to use.
curl -X POST https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}/openrouter/v1/chat/completions \
--header 'content-type: application/json' \
--header 'Authorization: Bearer OPENROUTER_TOKEN' \
--data '{
"model": "openai/gpt-5-mini",
"messages": [
{
"role": "user",
"content": "What is Cloudflare?"
}
]
}'If you are using the OpenAI SDK with JavaScript, you can set your endpoint like this:
import OpenAI from "openai";
const openai = new OpenAI({
apiKey: env.OPENROUTER_TOKEN,
baseURL:
"https://gateway.ai.cloudflare.com/v1/ACCOUNT_TAG/GATEWAY/openrouter",
});
try {
const chatCompletion = await openai.chat.completions.create({
model: "openai/gpt-5-mini",
messages: [{ role: "user", content: "What is Cloudflare?" }],
});
const response = chatCompletion.choices[0].message;
return new Response(JSON.stringify(response));
} catch (e) {
return new Response(e);
}