Openrouter Fallback Config
Overview
This skill shows how to configure fallback model chains so requests automatically retry with alternative models when the primary model is unavailable or errors.
Prerequisites
- OpenRouter integration
- Multiple models identified as primary and fallback options
Instructions
- Use OpenRouter's native fallback: Pass an array of model IDs in the
modelsfield (instead ofmodel) — OpenRouter will try each in order until one succeeds - Set per-model parameters: Use the
routefield with"fallback"strategy to let OpenRouter handle failover automatically - Implement client-side fallback: For more control, catch 5xx or timeout errors and retry with the next model in your own fallback list
- Configure timeout thresholds: Set
request_timeoutper attempt so slow models fail fast and the fallback triggers quickly - Test the chain: Temporarily use an invalid model ID as primary to verify your fallback chain activates correctly
Output
- A fallback chain that transparently retries with alternative models
- Reduced downtime when individual models or providers have outages
- Logs showing which model ultimately served each request
Error Handling
| Error | Cause | Fix |
|---|---|---|
| All fallbacks exhausted | Every model in the chain failed | Add more diverse fallbacks across providers; alert on full chain failure |
| Slow cascading retries | Each model timing out sequentially | Reduce per-model timeout to 10-15 seconds; use parallel fallback instead |
| Inconsistent responses | Different models in the chain have different capabilities | Ensure all fallback models support the features your prompt uses (e.g., tool calling) |
See ${CLAUDE_SKILL_DIR}/references/errors.md for full error reference.
Examples
See ${CLAUDE_SKILL_DIR}/references/examples.md for runnable code samples.