---
title: "Update Preferred Model"
method: PATCH
path: "/auth/me/preferred-model"
tags: ["auth"]
---

# Update Preferred Model

`PATCH /auth/me/preferred-model`

Persist the user's preferred LLM model id.

The catalogue lives in /billing/models; this endpoint stores an opaque
string. Pass `null` to clear the preference and fall back to the
catalogue default at request time.

## Request body

- PreferredModelRequest — Body for PATCH /auth/me/preferred-model. Opaque text — validated client-side against /billing/models so the column doesn't need a migration when a provider adds a model. `None` clears the preference and falls back to the catalogue default.
  - `preferred_model` string, nullable

## Response `200`

Successful Response

- UserResponse
  - `id` string, required
  - `github_username` string, nullable
  - `avatar_url` string, nullable
  - `email` string, nullable
  - `tier` 'free' | 'pro' | 'teams' | 'admin', required
  - `llm_credit_balance_cents` integer, required
  - `monthly_credit_reset_at` string, date-time, nullable
  - `billing_interval` string, nullable
  - `preferred_model` string, nullable
  - `theme_preference` 'system' | 'light' | 'dark', nullable
  - `notification_preferences` object
  - `deleted_at` string, date-time, nullable
  - `has_subscription` boolean
  - `has_billing_account` boolean
  - `free_answers_used` integer, nullable
  - `free_answers_limit` integer, nullable
  - `free_answers_remaining` integer, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/repowise/apis/repowise-hosted-api.md) · [All operations](https://skmtc.dev/repowise/apis/repowise-hosted-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/repowise/repowise-hosted-api/revisions/1e57283a9737/schema)
