---
title: "The native-app agent orchestration model setting."
method: GET
path: "/v1/orgs/{orgId}/admin/agent-model"
tags: ["dashboards"]
---

# The native-app agent orchestration model setting.

`GET /v1/orgs/{orgId}/admin/agent-model`

## Request

- Base URL: `http://localhost:8080`
- URL: `http://localhost:8080/v1/orgs/{orgId}/admin/agent-model`
- Auth: one of:
  - API key in cookie `dvt_session`
  - HTTP bearer

The Cortex Agent orchestration model the install is configured to use
(`auto` by default), its status (`ok`, `fallback` when the requested
model is not available on the account, `unverified` when availability
could not be checked, `pending` when the saved model is not applied
to the agent yet, which the admin card shows as "Not applied yet"; save again to retry), plus which models the org's newest 50 terminal
agent turns actually ran on. Snowflake mode only: outside it this route
does not exist (404). Admin or owner only, own org only. Runs under the
caller's own Snowflake session: 409 when that session has no usable warehouse.

## Response `200`

The current setting and recent per-turn model usage.

- object
  - `data` AgentModelState, required: The native-app agent orchestration model setting and recent per-turn model usage (GET /v1/orgs/{orgId}/admin/agent-model, DVT-5501).
    - `setting` object, required: The engine's `get_agent_model` result: `requested`, `model` (what is applied; `auto` on fallback), `status` (`ok` | `fallback` | `unverified` | `pending`; `pending` = saved but not applied to the agent yet, save again to retry), optional `message`, `set_at`, `set_by`.
    - `recentTurns` object, required
      - `window` integer, required: How many of the newest terminal turns were examined (max).
      - `models` object[], required
        - `model` string, required
        - `turns` integer, required
      - `lastModel` string, nullable, required
      - `lastAt` string, date-time, nullable, required
  - `meta` Meta, required: Response metadata.
    - `requestId` string, required: Correlates with the X-Request-Id header.
    - `total` integer: Item count, present on collection responses.
    - `nextCursor` string, nullable: Opaque keyset-pagination cursor, present on paginated responses (e.g. GET /v1/dashboards) when more rows exist beyond this page. Pass it back as the `cursor` query param to fetch the next page; absent or null on the last page.
    - `roleResolveDegraded` boolean: Snowflake mode only (DVT-2260), on GET /v1/dashboards: present and true when the caller's live Snowflake role resolution failed or was unavailable — role-shared dashboards may be missing from this page. Omitted (not merely false) whenever resolution succeeded or the role-share arm does not apply (off snowflake mode, an org admin/owner, or off the ingress listener).

## Other responses

- `400`: Malformed request.
- `401`: Missing, invalid, or expired session.
- `403`: The caller's role does not permit this action.
- `404`: Resource does not exist.
- `409`: The caller's Snowflake session has no usable warehouse (set a default warehouse or bind the app's consumer_warehouse reference).
- `502`: The engine could not read the setting.
- `504`: The engine timed out calling the agent model procedure. Try again.

---

[API](https://skmtc.dev/dvt/apis/dvt-rest-api.md) · [All operations](https://skmtc.dev/dvt/apis/dvt-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/dvt/apis/dvt-rest-api/revisions/00016f504165?raw)
