{"protocolVersion":"0.3.0","name":"UnoRouter","description":"Unified AI model gateway. One OpenAI-compatible endpoint for every major model (OpenAI, Anthropic, Google, DeepSeek, and more) with automatic failover and intelligent routing.","url":"https://api.unorouter.com/v1","version":"1.0.0","provider":{"organization":"UnoRouter","url":"https://unorouter.com"},"documentationUrl":"https://unorouter.com/en/docs","capabilities":{"streaming":true,"pushNotifications":false,"stateTransitionHistory":false},"defaultInputModes":["text/plain","application/json"],"defaultOutputModes":["text/plain","application/json","text/event-stream"],"preferredTransport":"HTTP+JSON","supportedInterfaces":[{"url":"https://api.unorouter.com/v1","protocolBinding":"HTTP+JSON","protocolVersion":"0.3.0"}],"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Two options. (1) UnoRouter API key: generate in the dashboard and send as Authorization: Bearer sk-... . (2) OAuth 2.1 + PKCE for agents acting on behalf of a signed-in user; the agent can then mint its own API key via the tokens:write scope. Discover the authorization server at /.well-known/oauth-authorization-server on the API origin and the resource metadata at /.well-known/oauth-protected-resource on this origin."},"oauth2":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://api.unorouter.com/oauth/v1/authorize","tokenUrl":"https://api.unorouter.com/oauth/v1/token","refreshUrl":"https://api.unorouter.com/oauth/v1/token","scopes":{"models:read":"List available models and their pricing","balance:read":"Read your current balance and quota","tokens:read":"List your API keys","tokens:write":"Create new API keys on your behalf","subscription:read":"View your active subscriptions and purchase history","subscription:cancel":"Cancel an active subscription","checkout:create":"Open a checkout page so you can buy credits or subscriptions (you confirm each purchase)"}}}}},"security":[{"bearer":[]},{"oauth2":["models:read","balance:read","tokens:read","tokens:write","subscription:read","subscription:cancel","checkout:create"]}],"skills":[{"id":"chat_completion","name":"Chat completion","description":"OpenAI-compatible chat completion across every supported model. Supports streaming, tool calls, and vision where the underlying model does.","tags":["chat","llm","completion","streaming"],"inputModes":["application/json"],"outputModes":["application/json","text/event-stream"]},{"id":"image_generation","name":"Image generation","description":"Generate images through supported image models.","tags":["image","generation"],"inputModes":["application/json"],"outputModes":["application/json","image/png","image/jpeg"]},{"id":"video_generation","name":"Video generation","description":"Generate videos through supported video models, including async task polling for long-running renders.","tags":["video","generation"],"inputModes":["application/json"],"outputModes":["application/json","video/mp4"]},{"id":"audio","name":"Audio","description":"Text-to-speech, speech-to-text transcription, and audio understanding through supported audio models.","tags":["audio","speech","tts","transcription"],"inputModes":["application/json","audio/mpeg","audio/wav","audio/webm"],"outputModes":["application/json","audio/mpeg","audio/wav","text/plain"]},{"id":"embeddings","name":"Embeddings","description":"Text embedding generation through supported embedding models.","tags":["embeddings","vector"],"inputModes":["application/json"],"outputModes":["application/json"]},{"id":"model_catalog","name":"Model catalog","description":"List all available models with live pricing. Useful for dynamic model selection based on cost, context window, or capability.","tags":["models","pricing","discovery"],"inputModes":["application/json"],"outputModes":["application/json"]}]}