> ## Documentation Index
> Fetch the complete documentation index at: https://docs.usehasp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Model Selection

> The Anthropic and OpenAI models the HASP AI API serves — relative cost, standard vs. premium access, and how to opt into premium models.

The HASP AI API serves models from **both Anthropic and OpenAI**, routed through the HASP compliance substrate. Every model runs behind the same BAA validation, PHI Guard, credit accounting, and audit chain — the provider you pick changes the underlying weights, not the compliance guarantees.

Pass the HASP model identifier in the `model` field of your request:

```json theme={null}
{
  "model": "claude-sonnet-4-6",
  "messages": [{ "role": "user", "content": "..." }]
}
```

The same identifiers work on every surface — native (`/v1/ai/chat`), Anthropic-compat (`/v1/messages`), and OpenAI-compat (`/v1/chat/completions`).

## Available models

Models are grouped into two access tiers:

* **Standard** — enabled by default. Available to any org with an active BAA and the `ai:chat` scope.
* **Premium** — default-off. An org admin must enable the model before requests are accepted (see [Premium model access](#premium-model-access)).

**Relative cost** is the model's cost multiplier versus Claude Sonnet 4.6 (the credit anchor at `1.0×`). It is a display hint for comparing per-token spend — the exact credit rate is the token-proportional formula in [Budget Controls](/ai-api/concepts/budget-controls).

| Model ID            | Provider  | Relative cost | Access   |
| ------------------- | --------- | ------------- | -------- |
| `claude-sonnet-4-6` | Anthropic | 1.0×          | Standard |
| `claude-haiku-4-5`  | Anthropic | 0.3×          | Standard |
| `claude-opus-4-6`   | Anthropic | 1.7×          | Premium  |
| `claude-opus-4-7`   | Anthropic | 1.7×          | Premium  |
| `gpt-5.5`           | OpenAI    | 1.7×          | Premium  |
| `gpt-5.5-pro`       | OpenAI    | 10.0×         | Premium  |
| `gpt-5.4`           | OpenAI    | 0.8×          | Standard |
| `gpt-5.4-mini`      | OpenAI    | 0.25×         | Standard |
| `gpt-5.3-codex`     | OpenAI    | 0.6×          | Standard |

`claude-opus-4-7` is the current Opus flagship (extended thinking); `claude-opus-4-6` remains available for pinned workloads. `gpt-5.3-codex` is a code-optimized standard model; `gpt-5.5-pro` is the highest-cost model in the catalog (extended thinking) and is default-off to contain cost-surprise risk.

## Default model

If you omit `model`, the request resolves to your organization's configured default (Claude Sonnet 4.6 unless an admin has changed it). The default is always drawn from your allowed-model list, so it is never a model you have not enabled.

## Premium model access

Premium models (`claude-opus-4-6`, `claude-opus-4-7`, `gpt-5.5`, `gpt-5.5-pro`) are **not** in the default allowed-model list. An org admin enables them under **Settings → AI Workspace → Models** in the HASP dashboard. Once enabled, any API key with the `ai:chat` scope can use them.

A request for a model your org has not enabled — or for an unrecognized identifier — fails with:

```json theme={null}
{
  "error": {
    "code": "MODEL_ACCESS_DENIED",
    "message": "Model 'claude-opus-4-7' is not in the allowed model list for organization <org-id>."
  }
}
```

`MODEL_ACCESS_DENIED` (HTTP 403) also covers unknown identifiers and models pulled platform-wide during an incident.

## Choosing a model

For most regulated-industry workloads — clinical documentation assistance, compliance summarization, patient communication drafts — a standard mid-tier model (Sonnet 4.6 or GPT-5.4) delivers the best capability/cost tradeoff. Use the cheapest models (Haiku 4.5, GPT-5.4 mini) for preprocessing, classification, and routing. Reserve premium models for final reasoning steps where accuracy is the primary constraint, and `gpt-5.3-codex` for code-generation workloads.

## Deprecation policy

Model versions are deprecated with **6 months advance notice** and a **12-month overlap period** during which both the old and new versions are available. The model identifier you pass always resolves to a specific model version — HASP does not silently upgrade you to a newer version without your opt-in.

When a model version is retired, requests using the retired identifier return:

```json theme={null}
{
  "error": {
    "code": "MODEL_RETIRED",
    "message": "Model claude-X-Y-retired was retired on 2026-MM-DD. Migrate to claude-X-latest."
  }
}
```

Subscribe to the [Changelog](/ai-api/changelog) to receive advance notice of upcoming retirements.
