---
title: "Set Preferences"
method: POST
path: "/api/auth/preferences"
tags: ["auth"]
---

# Set Preferences

`POST /api/auth/preferences`

## Request

- Base URL: `https://api.equity-rank.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.equity-rank.com/api/auth/preferences`
- Auth: HTTP bearer

Persist the user's UI experience level so it follows them across devices.

Validates the enum server-side, then upserts onto the subscriptions row by
user_id (creating a minimal row if none exists, mirroring capture-attribution).
Uses the service-role key to bypass RLS.

## Request body

- SetExperienceModeRequest: Body for POST /api/auth/preferences — the user's UI experience level.
  - `experience_mode` string, required

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/equity-rank/apis/equity-rank-api.md) · [All operations](https://skmtc.dev/equity-rank/apis/equity-rank-api/llms.txt) · [OpenAPI document](https://skmtc.dev/equity-rank/apis/equity-rank-api/revisions/c2f2463fee33?raw)
