Overview

Axora is a unified AI gateway. Send one request to /v1/chat and it routes through your configured providers with automatic fallback. Every request is authenticated, rate-limited, and logged.

Base URL

https://api.aivorylabs.in

Auth

Bearer API key

Rate Limit

20 req/min per key

Architecture

Axora is a self-hosted platform with a chat UI, an admin dashboard, and a developer API. A single FastAPI gateway powers all of it — routing LLM requests, serving the web app, and persisting usage to PostgreSQL with Redis behind the scenes. Your app only talks to the gateway; Axora handles callbacks, caching, and failover.

Product Architecture

Clients

Chat UIAPI KeysUsageAdminDocsExternal apps → API
HTTPS / REST + SSE

FastAPI Gateway

middleware (security · rate limit)routers (chat · keys · usage · admin…)auth (JWT · API keys)
services: RAG · fallback · intentproviders: adapters + embeddings
reads / writes

Persistence

PostgreSQL — users, keys, requests, conversations, knowledgeRedis — rate limiting, lockoutknowledge/*.md — watcher → chunks
provider call

LLM Providers

GroqOpenRouterGeminiOpenAIClaudeHuggingFace

Request Flow

Client / Web UIFastAPI Gatewaymiddleware · auth · quota · rate-limit
/v1/chat/v1/embeddings/v1/conversations/v1/keys/v1/usage/v1/admin/v1/models · providers
LLM-facingRAG contextfallback chainGroq · OpenRouter · Gemini · OpenAI · Claude · HuggingFace
Data-facingPostgreSQLRedisknowledge chunks
Unified Response { model, provider_used, content, usage }

Every endpoint passes through the same middleware and auth layer. Only the LLM-facing routes (/v1/chat, /v1/embeddings ) add RAG context and the fallback chain; the rest read and write data in PostgreSQL and Redis. /v1/chat is just one of many endpoints on the same gateway.

Fallback Chain

If the primary provider fails, Axora automatically retries with the next provider in the chain. Configure your fallback order in the dashboard (or via the fallback-chain endpoints), and use provider_preference to force the primary provider. The response includes provider_used and model fields so you always know which model served the request. When fallback occurs in the built-in Chat UI, an amber warning banner is shown.

PriorityProviderModels
1Groqllama-3.3-70b-versatile, llama-3.1-8b-instant
2OpenRouterGemma 4 26B, Gemma 4 31B, Nemotron, GPT-OSS
3Geminigemini-2.0-flash
4OpenAIgpt-4o, gpt-4o-mini
5Claudeclaude-3-5-sonnet, claude-3-5-haiku, claude-3-opus

Authentication

All requests require a valid API key in the Authorization header using Bearer token format.

Header

Authorization: Bearer ax_live_YOUR_API_KEY

Keys use the ax_live_ prefix and are scoped to your account. Generate and manage keys in your API Keys dashboard.