Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Integrate RouterBase as an OpenAI-compatible model gateway for routing GPT, Claude, Gemini, media, audio, and embedding requests.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 47% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 63% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 57% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 79% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 64% | 0% |
Use routerbase when an application needs one OpenAI-compatible API surface for model routing across GPT, Claude, Gemini, image, video, audio, and embedding workloads. This skill helps agents migrate existing OpenAI SDK calls, document model-selection tradeoffs, and produce safe implementation snippets without exposing credentials.
RouterBase model availability, pricing, and provider capabilities can change, so treat examples as starting points and verify current catalog data before production recommendations.
Identify the modality and hard constraints before choosing a model:
Keep the RouterBase API key server-side in an environment variable such as ROUTERBASE_API_KEY. Do not put keys in browser, mobile, or public repository code.
pythonimport os from openai import OpenAI client = OpenAI( api_key=os.environ["ROUTERBASE_API_KEY"], base_url="https://routerbase.com/v1", ) response = client.chat.completions.create( model="google/gemini-2.5-flash", messages=[{"role": "user", "content": "Write one sentence about model routing."}], ) print(response.choices[0].message.content)
jsimport OpenAI from "openai"; const client = new OpenAI({ apiKey: process.env.ROUTERBASE_API_KEY, baseURL: "https://routerbase.com/v1", }); const response = await client.chat.completions.create({ model: "google/gemini-2.5-flash", messages: [{ role: "user", content: "Write one sentence about model routing." }], }); console.log(response.choices[0].message.content);
When credentials and network access are available, check the live catalog before locking in a model ID or price-sensitive recommendation.
bashcurl "https://routerbase.com/api/v1/models?task=chat" \ -H "Authorization: Bearer $ROUTERBASE_API_KEY"
Confirm feature assumptions with a small request fixture:
stream: true is set.Use explicit application-level fallbacks unless the user's RouterBase account already has a smart-routing policy configured.
jsconst modelPlan = [ "anthropic/claude-sonnet-4-6", "google/gemini-2.5-flash", ]; for (const model of modelPlan) { try { return await client.chat.completions.create({ model, messages }); } catch (error) { if (!isRetryableRouterBaseError(error)) throw error; } }
Treat transient network errors, timeouts, rate limits, and server errors as candidates for retry. Do not blindly retry authentication failures, invalid model IDs, validation errors, or policy refusals.
When converting an existing OpenAI SDK integration:
https://routerbase.com/v1.ROUTERBASE_API_KEY from server-side environment configuration.Use this table when recommending a model strategy:
| Use case | Primary model | Fallback model | Reason | Validation | | --- | --- | --- | --- | --- | | Support chat | Provider/model ID | Provider/model ID | Low latency and acceptable quality | Streaming smoke test | | Deep analysis | Provider/model ID | Provider/model ID | Strong reasoning, higher cost acceptable | Eval prompt plus human review |
Solution: Re-test tool calling, JSON mode, streaming, and multimodal payloads for each selected model.
Solution: Retry only transient failures and fail fast on authentication, validation, and invalid model errors.
Solution: Re-check the RouterBase catalog and pricing page before finalizing the plan.
@api-analyzer - Use when the task is only to validate one API request shape.@langfuse - Use when the task needs production LLM observability, tracing, and evaluation.Other measured skills in the registry, with their headline benchmark lift.