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

# Thinking Not Supported

> The model has no thinking support to configure.

**HTTP status:** 400

## Error message

```
model '{model}' does not support thinking
```

## When this error occurs

`defaults.thinking` (or a per-run `config_override.thinking`) asked a model that is not offered thinking
to reason. That covers two cases, and the API does not distinguish them:

* the model rejects the provider's thinking parameters outright, or
* nobody has measured whether it accepts them, so it isn't offered.

`"disabled"` is the exception: it is accepted on every model, because it asks for what a model without
thinking already does. Only a setting that asks for reasoning — an effort level or a token budget — can
hit this error.

Support is declared per model **and per platform**: a model can accept thinking on one provider and not on
another. Every Claude model is offered the same thinking on Bedrock and on Snowflake Cortex; the OpenAI
models are offered none on either.

## When you'll see it

Because support is per platform, this arrives at one of two moments:

* **At conversation or run creation (400)** when no platform offers the model thinking at all.
* **On the run itself (a `failed` run, not a 400)** when another platform offers it but the one this run
  landed on does not — its data plane decides which cell executes, and creation does not resolve that.

## How to fix

Drop the `thinking` field, send `"disabled"`, or move the conversation to a model that supports it.
`GET /model-inference/models` lists what is available.

If you want the model's own behaviour rather than a specific setting, omit the field entirely — a model
that thinks by default is already sent the right switch without you asking.
