{"data":{"id":"333b1a96-3b54-463b-adfe-aeac18809cd2","category":"apis","name":"UnoRouter","summary":"Open source LLM gateway that keeps apps and agents answering through provider outages, behind one OpenAI-compatible key","description":"UnoRouter is a failover-first model gateway for engineering teams and AI agents that need model calls to keep succeeding when one provider has an outage or hits a rate limit. It exposes a single OpenAI-compatible endpoint and key; each request goes to a healthy upstream and is retried on another provider if the first one fails.\n\nIntegration is a base URL change. The official OpenAI SDKs, Claude Code, Cline, OpenCode and other AI clients work unchanged, and moving to a different model means changing the model name in the request.\n\nThe gateway, web app and sync tooling are open source. The hosted chat is local-first, so conversation history stays in the user's browser. Free models are available on the free tier, and usage beyond it is billed pay-as-you-go.","website":"https://unorouter.com","country":"Worldwide","languages":["English"],"tags":["LLM gateway","OpenAI compatible API","model routing","failover","open source"],"attributes":{"limits":"Free tier limits, then usage based billing","operations":"Chat completions, model listing, OpenAI compatible endpoints","documentation":"https://unorouter.com/docs","sdk_languages":"Any OpenAI SDK (Python, JavaScript, Go and others)","authentication":"API key (Bearer token)"},"source_kind":"owner_declared","source_url":null,"source_external_id":null,"owner_confirmed":true,"logo_url":null,"version":2,"confirmed_at":"2026-11-12T20:15:40.184Z","created_at":"2026-11-11T23:56:31.868Z","updated_at":"2026-11-12T20:15:40.184Z","url":"https://relaydataai.com/listing/333b1a96-3b54-463b-adfe-aeac18809cd2","freshness":{"last_owner_confirmation":"2026-11-12T20:15:40.184Z","source_checked_at":"2026-11-12T20:15:40.184Z","confirmation_age_days":0,"needs_confirmation":false},"verification":{"identity":"account_authenticated","content":"owner_declared","independently_verified":false}}}