---
title: "Models and lifecycle"
description: "Augure API model ids, context windows, output caps and prices in CAD, OpenAI compatibility aliases, and how model retirements are announced and handled."
canonical: https://augureai.ca/docs/models
updated: 2026-10-26
---

# Models and lifecycle

The model ids you can call, what each one costs, and what happens when a model is retired.

Developer Documentation.

## Current models

These are the models listed by `GET /v1/models`. Prices are in Canadian dollars per million tokens (input / output). Ossington 5 cached input tokens: $0.60 per 1M. Other models bill cached input at the standard input rate. Pass `model: "auto"` to let the gateway pick a model for each request.

| Model id | Context | Max output | Price (CAD / 1M) | reasoning_effort |
| --- | --- | --- | --- | --- |
| `ossington-5` (Ossington 5) | 256K | 32,768 | $1.50 / $3.00 | Supported. "none" turns thinking off. |
| `rosedale-1` (Rosedale One) | Up to 1M | 32,768 | $2.50 / $6.00 | Supported. "none" is served as "low". |
| `ossington-4-1` (Ossington 4.1) | 256K | 32,768 | $2.50 / $6.00 | Supported. |
| `ossington-4` (Ossington 4) | 256K | 32,768 | $2.00 / $5.00 | Supported. |
| `tofino-3` (Tofino 3) | 256K | 16,384 | $0.60 / $2.00 | Accepted and ignored. Thinking is always off. |
| `open-glm-5-3` (GLM-5.3) | 256K | 49,152 | $3.00 / $7.00 | Accepted. "none" is served as "low"; no setting shortens the thinking as served today. |
| `open-qwen-3.8-flash-next` (Qwen3.8-Flash-Next) | 256K | 32,768 | $2.00 / $4.00 | Supported. Sent to the model unchanged. |

Context is the input window. Max output is the per-request completion cap for `max_tokens`. Reasoning models return their thinking separately as `reasoning_content`. Details, including `rosedale-1` large-input guidance, are in the [API reference](https://augureai.ca/docs/api).

**Where requests run:** inference runs on Canadian infrastructure first, with a disclosed failover to vetted EU partners under zero data retention, never the US. A response served by failover says so in its `_augure` block. `tofino-3` and the Augure Open models never fail over outside Canada, and keys with a Canada-only residency policy fail rather than leave Canada.

### Augure Open (preview)

Augure Open serves openly licensed models under their published names, hosted in Canada. It is for developer API keys only and is not in the Augure apps. As a preview, it has no SLA and pricing may change.

- Your messages reach the model as sent, with no gateway-added system prompt or sampling defaults.
- Same reasoning response contract as the other reasoning models: thinking comes back in `reasoning_content`.
- GLM-5.3 thinks before every answer, and even a one-line reply can use several hundred tokens of thinking. Omit `max_tokens` or set it to at least 1,024, or a short budget can end in `reasoning_cutoff`. For short mechanical tasks, `reasoning_effort: "low"` skips the thinking.
- Qwen3.8-Flash-Next receives `reasoning_effort` unchanged. The same `max_tokens` advice applies: omit it or set it to at least 1,024. It takes `n: 1` only.
- `response_format` goes to the model's own structured decoding unchanged, so validate the JSON you get back.
- Text only. Image and file content parts get HTTP `400` with code `unsupported_content`.
- Canada only. When capacity is full you get `503` or `429` instead of a failover, so retry with backoff.

See [Models in the API reference](https://augureai.ca/docs/api#models).

## OpenAI compatibility aliases

For drop-in compatibility with OpenAI client libraries, these ids are accepted and served by the Augure model shown. An alias is a compatibility surface, not a promise of a particular backing model: when a model retires, its aliases move to the replacement.

| Alias | Served by |
| --- | --- |
| `gpt-4` | `ossington-4` |
| `gpt-4o` | `ossington-4` |
| `gpt-4o-mini` | `tofino-3` |
| `gpt-3.5-turbo` | `tofino-3` |

## How retirements work

1. **Announcement.** A retirement is announced about 30 days ahead, by email to registered developers and on this page, with the date and the replacement.
2. **Until the date.** Every response on the retiring id, including through its aliases, carries an `_augure.deprecation` block naming the date and the replacement.
3. **From the date.** A developer key that names the retired id gets HTTP `400` with code `model_retired`. Switching is a one-line change to the `model` field. Aliases are served by the replacement and their responses carry `_augure.retired`.

Before the date: `_augure.deprecation`

```json
"_augure": {
  "deprecation": {
    "model": "<model-id>",
    "retires_at": "<YYYY-MM-DD>",
    "replacement": "<replacement-id>",
    "message": "<model-id> retires on <YYYY-MM-DD>. Switch to <replacement-id> …"
  }
}
```

From the date: `400 model_retired`

```json
{
  "error": {
    "message": "Model 'tofino-2.5' was retired on 2026-09-19. Use 'tofino-3' instead (a one-line change).",
    "type": "invalid_request_error",
    "param": "model",
    "code": "model_retired"
  }
}
```

Alias after the date: `_augure.retired`

```json
"_augure": {
  "retired": {
    "model": "tofino-2.5",
    "replacement": "tofino-3",
    "retired_at": "2026-09-19"
  }
}
```

## Retired and retiring models

| Model id | Status | Announced | Retirement date | Replacement |
| --- | --- | --- | --- | --- |
| `ossington-3` | Retired | 2026-09-15 | 2026-10-15 | `rosedale-1` |
| `tofino-2.5` | Retired | 2026-08-20 | 2026-09-19 | `tofino-3` |

Moving from `tofino-2.5` to `tofino-3`: the output cap is 16,384 tokens, so split longer single completions or use `ossington-5`. Moving from `ossington-3` to `rosedale-1`: pass `reasoning_effort: "low"` for fast answers. See also the [changelog](https://augureai.ca/docs/changelog).
