> For the complete documentation index, see [llms.txt](https://docs.meganova.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.meganova.ai/enterprise/enterprise-endpoint.md).

# Enterprise Endpoint

The Enterprise Endpoint serves the same models as the standard Inference API, but from **dedicated enterprise deployments** rather than the shared pool. Everything else is identical: the same OpenAI-compatible API, the same model ids, and the same API key.

* **BASE URL:** `https://enterprise.api.meganova.ai/v1`
* **OpenAI Compatible:** Use OpenAI SDKs and tools with this API.

Switching an integration over is a one-line change to the base URL. You do **not** rename models, request access, or provision a separate key.

## Who can use it

Any account with billing enabled. There are two ways usage is paid for:

| You have                                               | Usage on the enterprise endpoint is                                  |
| ------------------------------------------------------ | -------------------------------------------------------------------- |
| A [Token Plan](/enterprise/token-plan.md) subscription | Drawn from your monthly plan allowance — **call it with a plan key** |
| No subscription (pay-as-you-go)                        | Charged to your wallet at the enterprise rate for that model         |

Token Plan subscribers must use one of their plan keys for plan-covered models. Calling a covered model with an ordinary key returns `403 libra_os_key_required` rather than quietly billing your wallet — see the [Libra OS Integration Guide](/enterprise/token-plan.md).

## Quickstart

```python
from openai import OpenAI

client = OpenAI(
    api_key="<your MegaNova API key>",
    base_url="https://enterprise.api.meganova.ai/v1",
)

response = client.chat.completions.create(
    model="anthropic/claude-fable-5",   # the ordinary model id
    messages=[{"role": "user", "content": "Hello"}],
)
```

```bash
curl https://enterprise.api.meganova.ai/v1/chat/completions \
  -H "Authorization: Bearer $MEGANOVA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic/claude-fable-5",
    "messages": [{"role": "user", "content": "Hello"}]
  }'
```

Tools that take a bare host and append the path themselves can be pointed at `https://enterprise.api.meganova.ai` — both that and the explicit `/v1` form are served.

## Endpoints

| Endpoint                | Method | Description                                    |
| ----------------------- | ------ | ---------------------------------------------- |
| `/v1/chat/completions`  | POST   | Chat completions (streaming and non-streaming) |
| `/v1/embeddings`        | POST   | Embeddings                                     |
| `/v1/rerank`            | POST   | Reranking                                      |
| `/v1/models`            | GET    | List the models available on this endpoint     |
| `/v1/models/{model_id}` | GET    | Retrieve one model                             |

Image, video and audio are served on the standard endpoint.

Calling one of them here returns `404` rather than falling through to the shared pool, so a base URL pointed at the wrong host fails visibly instead of quietly serving your request from shared capacity:

```json
{
  "error": {
    "message": "This endpoint is not available on the enterprise API. The enterprise API serves chat completions, embeddings and rerank; use https://api.meganova.ai/v1 for the rest.",
    "type": "invalid_request_error",
    "code": "404"
  }
}
```

## Which models are available

Not every model has an enterprise deployment. `GET https://enterprise.api.meganova.ai/v1/models` returns exactly the ones that do, using their ordinary ids:

```bash
curl https://enterprise.api.meganova.ai/v1/models \
  -H "Authorization: Bearer $MEGANOVA_API_KEY"
```

In the console, models with an enterprise deployment carry an **Enterprise** badge in the model list, and their model page shows the enterprise price alongside the standard one.

Requesting a model that has no enterprise deployment returns `404` naming the endpoint — the request is never silently served from the shared pool instead:

```json
{
  "error": {
    "message": "Requested model 'some/model' is not available on the enterprise endpoint. Use GET /v1/models on this endpoint to list the available enterprise models.",
    "type": "model_not_found",
    "param": "model",
    "code": "404"
  }
}
```

## Data handling

Enterprise deployments are configured for **zero data retention (ZDR)**, and that holds however the usage is paid for — a pay‑as‑you‑go call and a [Token Plan](/enterprise/token-plan.md) call reach the same deployment.

* **No provider‑side caching or reuse** — provider data caching is disabled in the serving environments, and we never turn on prompt caching on your behalf, so prompts and responses are processed transiently and are not held for reuse.
* **Caching stays your call** — if your own request explicitly asks for prompt caching (for example Anthropic `cache_control` blocks), the provider keeps that prompt prefix for the cache lifetime you requested. That is an opt‑in you control per request; omit those blocks and enterprise traffic stays strictly transient.
* **No training** — your inputs and outputs are never used to train models.
* **Content is not logged on our side** — MegaNova records usage metadata (model id, token counts, timestamps, spend). Message content is redacted from our operational logs and is never shared with anyone beyond the provider serving the request.

> Note: with provider‑side caching switched off, enterprise deployments do not accrue the automatic cached‑input discounts the shared pool sees — a provider that retains nothing has nothing to serve a cache hit from. Prompt caching you request yourself is the exception, and it is priced as usual.

The statements above cover every Gemini and Claude id on this endpoint. They hold even more strongly for the open‑weight chat models, embeddings and rerank models, which run on MegaNova's own GPUs — that content never leaves MegaNova infrastructure at all.

One listed model sits outside those guarantees: `Qwen/Qwen3.5-Plus` carries no zero‑retention commitment. Its serving arrangement rules out training on your data and does not log request or response content by default, but it is not a contractual guarantee.

**Model-specific exception.** `anthropic/claude-fable-5` and `anthropic/claude-fable-5-1` are **partial ZDR**: Anthropic mandates safety data sharing for the Fable model class, so prompts and responses may be retained by Anthropic for up to 60 days for abuse monitoring. Every other measure above still applies. If your compliance posture requires strict ZDR, use another Claude id (for example `anthropic/claude-opus-5-5`).

## Pricing

Enterprise pricing is per model and can differ from the standard rate, so check the model page or `GET /v1/models` on this endpoint rather than assuming the standard price. Usage appears in your normal usage records; Token Plan usage draws the allowance as described in the [Libra OS Integration Guide](/enterprise/token-plan.md).

## Errors

Error responses follow the same conventions as the rest of the Inference API — see [Errors & Response Conventions](/api-reference/platform-api/errors.md). Two are specific to this endpoint:

| Code                        | Meaning                                                                 |
| --------------------------- | ----------------------------------------------------------------------- |
| `404 model_not_found`       | The model has no enterprise deployment (see above)                      |
| `403 libra_os_key_required` | A Token-Plan-covered model was called with a key that is not a plan key |

## Migrating from enterprise model ids

Enterprise models were previously reached on the standard endpoint by calling a separate model id with an `-Ent` suffix. That still works and is not being switched off, but new integrations should use the enterprise endpoint with the ordinary model id instead:

```diff
- base_url = "https://api.meganova.ai/v1"
- model    = "anthropic/claude-fable-5-Ent"
+ base_url = "https://enterprise.api.meganova.ai/v1"
+ model    = "anthropic/claude-fable-5"
```

The two are equivalent — same deployments, same pricing, same billing. The endpoint form means you no longer maintain a second set of model ids, and a model that gains an enterprise deployment later becomes available to you without a config change.
