Quando as pessoas pesquisam OpenRouter Down, geralmente precisam de duas respostas rápidas: o OpenRouter está realmente fora do ar e como mantenho as requisições em andamento sem reescrever meu app?
A resposta mais segura é não entrar em pânico e trocar modelos no código. Primeiro, confirme se o problema é em toda a OpenRouter, específico do provedor, específico da conta ou da sua própria fila de tentativas. Depois, mova o failover para a configuração: verificações de status, orçamento de retries, fallback de provedor, fallback de modelo e uma base_url compatível com OpenAI que possa ser alternada.
Data verificada: 13 de outubro de 2026. Não trate este artigo como prova de que a OpenRouter está fora do ar agora. Verifique a página de status da OpenRouter e seus próprios logs antes de iniciar um incidente.
A Resposta Curta
Se a OpenRouter estiver fora do ar, ou se uma rota da OpenRouter estiver falhando, use esta ordem:
- Verifique
https://status.openrouter.ai/e seus logs de erro. - Separe erros da plataforma OpenRouter de erros do modelo/provedor upstream.
- Respeite
Retry-Afterem respostas429,503e402de orçamento em voo. - Mantenha
provider.allow_fallbackshabilitado, a menos que uma regra de conformidade exija o contrário. - Adicione fallbacks de modelo por meio da configuração da requisição, onde o contrato de qualidade da resposta permitir.
- Coloque seu gateway de API ou endpoint de backup atrás de uma variável de ambiente para que você possa alternar o
base_urlsem editar o código da aplicação.
Esse último ponto é a verdadeira movimentação de "sem mudar o código". Sua aplicação deve ler o endpoint da configuração:
OPENAI_BASE_URL=https://openrouter.ai/api/v1
OPENAI_API_KEY=...
Durante um incidente, sua mudança operacional se torna:
OPENAI_BASE_URL=https://router.flatkey.ai/v1
OPENAI_API_KEY=...
Seu código do SDK permanece o mesmo.
A OpenRouter Está Fora do Ar?
Não conclua OpenRouter Down a partir de uma única requisição falhada. Uma requisição falhada pode significar:
| Sintoma | Escopo provável | O que verificar primeiro |
|---|---|---|
| Incidente na página de status | Plataforma OpenRouter | Página de status, linha do tempo do incidente, atualizações públicas |
502 Bad Gateway |
O modelo/provedor escolhido pode estar fora do ar | Modelo, metadados do provedor, elegibilidade de fallback |
503 Service Unavailable |
Nenhum provedor atende às suas regras de roteamento | Restrições de provedor, only, ZDR, requisitos de parâmetros |
429 Too Many Requests |
Limite de taxa ou capacidade do provedor | Retry-After, concorrência da fila, fallback de provedor |
402 Payment Required |
Créditos ou orçamento de gastos em voo | Retry-After, saldo da conta, limites da chave |
403 Forbidden |
Orçamento, permissões, moderação, proteção | error.metadata, política do workspace/chave |
| O streaming começa, depois aparece um evento de erro | O provedor falhou após HTTP 200 |
Inspecione o corpo SSE, não apenas o status HTTP inicial |
A documentação de erros da OpenRouter afirma que 502 pode significar que o modelo escolhido está fora do ar ou retornou uma resposta inválida, enquanto 503 pode significar que nenhum provedor de modelo disponível atende aos requisitos de roteamento. A mesma documentação diz que a OpenRouter pode retornar Retry-After em 429, 503 e algumas respostas 402 de orçamento em voo. Fonte: Erros e depuração da OpenRouter.
A OpenRouter já teve interrupções públicas antes. Seu postmortem de 17 e 19 de fevereiro de 2026 descreve falhas de API causadas por uma dependência de cache de terceiros e observa que alguns usuários viram erros 401 confusos durante o incidente. Esse post histórico é útil como contexto, mas não é evidência de uma interrupção atual. Fonte: Postmortem da interrupção da OpenRouter.
Primeiros Cinco Minutos: Triagem de OpenRouter Down
Use esta checklist antes de redirecionar o tráfego.
| Minuto | Ação | Decisão |
|---|---|---|
| 0-1 | Verifique a página de status da OpenRouter e sua linha do tempo de alertas. | Se a página de status confirmar um incidente, vá para a preparação do failover. |
| 1-2 | Agrupe erros por código de status, modelo, provedor, rota e SDK. | Se um modelo/provedor estiver falhando, evite suposições sobre toda a plataforma. |
| 2-3 | Verifique Retry-After, contagem de retries e concorrência da fila. |
Interrompa tempestades de retries antes de adicionar mais tráfego de fallback. |
| 3-4 | Compare cargas de trabalho pagas, gratuitas, em lote e de agentes. | Preserve o tráfego interativo antes dos jobs em segundo plano. |
| 4-5 | Escolha a menor ação de failover que restaure o trabalho voltado ao usuário. | Prefira fallback de provedor antes de fallback entre modelos; prefira troca de configuração antes de implantação de código. |
O principal erro durante um incidente OpenRouter Down é fazer com que cada worker tente novamente imediatamente. Uma tempestade de retries pode transformar um erro de provedor em um problema de fila em toda a plataforma dentro do seu próprio app.
Failover Sem Mudar o Código
O padrão sem mudança de código é simples: mantenha o uso do SDK estável e torne a rota configurável.
import OpenAI from "openai";
export const ai = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
baseURL: process.env.OPENAI_BASE_URL,
});
Então mantenha a seleção de endpoint no ambiente, na configuração de implantação, em feature flags ou no seu gerenciador de segredos:
ai_gateway:
primary:
base_url: https://openrouter.ai/api/v1
key_env: OPENROUTER_API_KEY
backup:
base_url: https://router.flatkey.ai/v1
key_env: FLATKEY_API_KEY
switch_policy:
trigger: confirmed_platform_incident_or_error_budget_exhausted
owner: on_call_engineer
rollback: after_30_minutes_below_error_threshold
Isso funciona porque o quickstart do OpenRouter diz que sua API pode ser usada por meio do SDK da OpenAI apontando o SDK para o OpenRouter. A mesma forma de integração é exatamente o que torna prático um gateway OpenAI-compatible de backup. Fonte: OpenRouter quickstart.
Use o fallback de provedor antes de trocar modelos
Se o OpenRouter estiver acessível, mas um provedor estiver com problemas, o fallback de provedor é a opção de menor risco. Você mantém o mesmo contrato de modelo e deixa o roteamento tentar outro provedor elegível.
A documentação de roteamento de provedores do OpenRouter diz que as requisições são balanceadas entre os principais provedores por padrão para maximizar o uptime, e o objeto provider inclui allow_fallbacks, com valor padrão true. A documentação também alerta que definir sort ou order altera o comportamento de balanceamento de carga, e filtros rígidos de provedor podem reduzir a margem de roteamento. Fonte: Roteamento de provedores do OpenRouter.
Comece com isto:
{
"model": "anthropic/claude-sonnet-4.5",
"messages": [{ "role": "user", "content": "..." }],
"provider": {
"allow_fallbacks": true
}
}
Tenha cuidado com isto durante um incidente:
{
"provider": {
"only": ["one-provider"],
"allow_fallbacks": false
}
}
O roteamento rígido pode ser o correto para conformidade, retenção de dados, região ou política de preço. Mas roteamento rígido não é uma configuração de confiabilidade. Se você precisar de roteamento rígido para cargas sensíveis, crie um caminho separado, não sensível, que possa fazer failover com mais liberdade.
Adicione fallback de modelo apenas quando as saídas forem intercambiáveis
O fallback de modelo é mais forte do que o fallback de provedor. Ele pode manter o app ativo quando o modelo primário está fora do ar, com limitação de taxa ou bloqueado, mas também pode mudar o estilo da saída, a latência, o custo, o tamanho do contexto, o comportamento de ferramentas e os resultados de avaliação.
A documentação de fallback de modelo do OpenRouter diz que o parâmetro models permite fornecer IDs de modelos em ordem de prioridade. Se o primeiro modelo retornar um erro, o OpenRouter tenta o próximo modelo. A documentação lista limitação de taxa e indisponibilidade entre os erros que podem acionar o fallback. Fonte: Fallbacks de modelo do OpenRouter.
Use fallback de modelo para tarefas com um contrato de equivalência flexível:
{
"models": [
"anthropic/claude-sonnet-4.5",
"openai/gpt-4o",
"google/gemini-2.5-pro"
],
"messages": [{ "role": "user", "content": "Resuma este thread de suporte." }]
}
Evite fallback silencioso de modelo para tarefas em que o modelo exato faz parte da garantia do produto:
| Workload | Postura em relação ao fallback de modelo |
|---|---|
| Resumo interno | Normalmente seguro com avaliação e logging |
| Planejamento de agente de código | Possível, mas teste o comportamento de chamadas de ferramentas e o seguimento de instruções |
| Extração estruturada | Somente se schemas e validação passarem |
| Texto criativo voltado ao cliente | Possível, mas espere diferenças de estilo |
| Saída regulada ou contratual | Não altere modelos silenciosamente |
| Benchmarking ou avaliações | Não faça fallback a menos que o fallback seja o objeto do teste |
Uma política prática para incidentes
Esta política é intencionalmente sem graça. Ela mantém o trabalho de resposta a OpenRouter Down operacional, em vez de dramático.
openrouter_down_policy:
status_checks:
- openrouter_status_page
- synthetic_chat_completion
- provider_error_rate_by_model
- queue_retry_rate
retry_budget:
max_attempts: 3
honor_retry_after: true
jitter: true
stop_retrying_on:
- invalid_credentials
- spent_budget
- moderation_block
- bad_request
provider_fallback:
default_allow_fallbacks: true
loosen_provider_constraints_for:
- non_sensitive_batch_jobs
- internal_tools
- support_summaries
model_fallback:
require_contract: equivalent_quality_or_validated_schema
log_selected_model: true
disallow_for:
- evals
- compliance_outputs
- customer_promises_about_exact_model
base_url_failover:
primary: OPENAI_BASE_URL
backup_env: OPENAI_BACKUP_BASE_URL
switch_owner: on_call_engineer
switch_requires:
- confirmed_status_incident_or_internal_error_budget
- rollback_plan
- public_request_log_enabled
Os campos principais para registrar são:
| Campo | Por que isso importa |
|---|---|
base_url |
Comprova qual gateway processou a solicitação |
requested_model |
Mostra o modelo pretendido pelo chamador |
served_model |
Mostra o modelo realmente usado após o fallback |
provider |
Separa problemas da plataforma de problemas do provedor |
status_code |
Orienta decisões de retry/failover |
retry_after |
Evita tempestades de retries |
attempt |
Mostra se as tentativas estão amplificando o tráfego |
fallback_reason |
Torna possível a análise do incidente |
cost |
Confirma que o fallback não criou um pico inesperado de gastos |
request_id |
Permite que suporte e engenharia rastreiem uma solicitação |
Onde o Flatkey se encaixa
O Flatkey é útil quando você quer que o playbook OpenRouter Down exista fora do código da aplicação. O posicionamento do projeto para o Flatkey é um gateway unificado de API de LLM: uma chave, um saldo e um endpoint compatível com OpenAI para roteamento entre modelos oficiais de texto, imagem e vídeo. Nesse padrão de incidente, o valor prático é operacional:
- Mantenha sua aplicação em um formato de cliente compatível com OpenAI.
- Roteie uma carga de trabalho por meio de um
base_urlde backup sem alterar a lógica da aplicação. - Centralize listas de अनुमति de modelos, subchaves, logs de solicitações, controles de orçamento e política de fallback.
- Compare o comportamento do gateway usando evidências da solicitação, em vez de anedotas.
Não mova todas as cargas de trabalho durante um incidente pequeno. Mova primeiro uma carga de trabalho representativa, observe a taxa de erro, a latência, o modelo selecionado, o motivo do fallback e o custo; depois decida se amplia a mudança.
Leituras úteis a seguir:
- Limites de taxa do OpenRouter
- Roteamento de fallback para API de LLM
- Estratégia de fallback de modelos
- Gerenciamento de cotas de API de IA
- Início rápido da API do Flatkey
FAQ sobre OpenRouter fora do ar
O OpenRouter está fora do ar agora?
Verifique primeiro a página de status do OpenRouter. Este artigo explica como responder quando buscas por OpenRouter Down correspondem a um incidente real ou a uma falha local do provedor; ele não afirma que o OpenRouter está fora do ar neste momento.
O que devo fazer primeiro se o OpenRouter estiver fora do ar?
Pause retries agressivos, inspecione os status codes e preserve o tráfego interativo. Se o incidente for confirmado, prefira o fallback do provedor antes do fallback de modelo e prefira uma troca de configuração de base_url antes de um deploy de código.
Posso fazer failover do OpenRouter sem mudar o código?
Sim, se sua aplicação já lê o endpoint compatível com OpenAI a partir da configuração. Coloque baseURL ou base_url atrás de uma variável de ambiente, mantenha a forma da chamada do SDK estável e troque o endpoint na configuração de deployment.
Devo usar fallbacks de modelo do OpenRouter durante uma interrupção?
Use fallbacks de modelo apenas quando o modelo de fallback for aceitável para a tarefa. Eles são apropriados para muitos fluxos de trabalho internos, mas não para evals, saídas regulamentadas ou casos em que os clientes foram prometidos um modelo específico.
Qual é a solução de longo prazo mais segura para o risco de OpenRouter Down?
Projete para portabilidade no nível da rota: base_url configurável, logging no nível da requisição, orçamentos de retry, fallback de provedor, contratos de fallback de modelo testados e um caminho de gateway de backup compatível com OpenAI. O objetivo não é evitar toda interrupção; é tornar o failover algo banal.



