> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://doc.enterpriserouter.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://doc.enterpriserouter.com/_mcp/server.

# Enterprise Router

Enterprise Router is an LLM gateway that gives your team access to OpenAI, Anthropic, and Google Gemini through a single API. Every request is authenticated, rate-limited, cost-tracked, and audit-logged — with zero prompt retention.

You get **below-market pricing** on every model because we aggregate demand and pass bulk discounts directly to you.

## Why Enterprise Router?

* **Save money.** Pay below standard provider rates on every API call. See exactly how much you saved in your dashboard.
* **Stay compliant.** Append-only, immutable audit log on every request. Zero prompt data retained. Access policies enforced at the gateway.
* **One integration.** Connect to OpenAI, Anthropic, and Gemini through a single gateway. Manage all your API keys, budgets, and usage in one place.

## Two Ways to Integrate

### Native Mode

Point your existing provider SDK at Enterprise Router. Change two lines of config — your code stays exactly the same.

```python
from openai import OpenAI

client = OpenAI(
    api_key="sk-proxy-...",                          # your ER key
    base_url="https://api.enterpriserouter.com/openai/v1"   # your ER gateway
)

# everything else is identical
response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Hello"}]
)
```

Native mode supports every feature of each provider's API: streaming, function calling, vision, tool use, and more. Nothing is translated or modified.

### Unified Mode

Use the OpenAI SDK to call any provider. Switch models by changing a string.

```python
from openai import OpenAI

client = OpenAI(
    api_key="sk-proxy-...",
    base_url="https://api.enterpriserouter.com/v1"
)

# Call Anthropic with the OpenAI SDK
response = client.chat.completions.create(
    model="anthropic/claude-sonnet-4-6",
    messages=[{"role": "user", "content": "Hello"}]
)
```

Unified mode translates requests and responses between OpenAI's format and each provider's native format, so you can use one SDK for everything.

## Architecture

```
Your Code (any SDK)
       │
       ▼
Enterprise Router Gateway
  ├── Authenticate (proxy key)
  ├── Enforce policies (rate limits, budgets, IP allowlists)
  ├── Route to provider
  ├── Track usage & cost
  └── Log audit trail
       │
       ▼
LLM Provider (OpenAI / Anthropic / Gemini)
```

## Next Steps

Ready to start? The [Quick Start](/getting-started) guide gets you from zero to your first request in under 60 seconds.