---
title: "Update an employee preference"
method: PATCH
path: "/v1/actor-preferences/{preference_id}"
tags: ["actor-preferences"]
---

# Update an employee preference

`PATCH /v1/actor-preferences/{preference_id}`

## Request

- Base URL: `https://api.patricia.app` (the document declares no server; this is the origin it was published from)
- URL: `https://api.patricia.app/v1/actor-preferences/{preference_id}`
- Auth: HTTP bearer

## Path parameters

- `preference_id` string, uuid, required

## Headers

- `X-Tenant-Id` string, nullable

## Request body

- ModelsPreferenceActorPreferenceMergeValidator: PATCH body: edit an existing preference by id.
  - `value` string, nullable
  - `source_code` 'explicit' | 'inferred': How an employee preference was captured. ``EXPLICIT`` preferences are authoritative and Curator-exempt; ``INFERRED`` ones mirror what the reflection loop learned and may decay.
  - `updated_at` string, date-time, nullable

## Response `200`

Successful Response

- ModelsPreferenceActorPreferenceFullValidator
  - `id` string, uuid, required
  - `tenant_id` string, uuid, required
  - `actor_id` string, uuid, required
  - `key` string, required
  - `value` string, required
  - `source_code` 'explicit' | 'inferred', required: How an employee preference was captured. ``EXPLICIT`` preferences are authoritative and Curator-exempt; ``INFERRED`` ones mirror what the reflection loop learned and may decay.
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden. Inspect response body `code` for the specific reason (for example: PERMISSION_DENIED, EMAIL_NOT_VERIFIED, TENANT_ACCESS_REQUIRED, ROLE_UNRESOLVED)
- `404`: Not found
- `409`: Conflict
- `422`: Validation error

---

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