---
title: "Update Character"
method: PATCH
path: "/api/v1/characters/{characterId}"
tags: ["Characters"]
---

# Update Character

`PATCH /api/v1/characters/{characterId}`

Partially update an existing character's attributes. Only include fields you want to change.

## Path parameters

- `characterId` string, required

## Request body

- object — Character fields to update. All fields are optional. Only include fields you want to change. Enum fields must use values from the allowed list — use the taxonomy endpoints to retrieve valid options.
  - `firstName` string — Character's first name
  - `lastName` string — Character's last name
  - `biography` string — Character biography/backstory
  - `alias` string — Character alias/nickname
  - `job` string — Job title
  - `whereYouLive` string — Location where character lives
  - `dateOfBirth` string, date — Date of birth (ISO format: YYYY-MM-DD). Age will be calculated and must be 21+
  - `gender` string — Character gender
  - `nationality` Nationality — unresolved $ref
  - `ethnicity` Ethnicity — unresolved $ref
  - `height` string — Character height
  - `bodyBuild` BodyBuild — unresolved $ref
  - `bodyShape` BodyShape — unresolved $ref
  - `buttSize` ButtSize — unresolved $ref
  - `hairLength` HairLength — unresolved $ref
  - `hairColour` HairColour — unresolved $ref
  - `eyeColour` EyeColour — unresolved $ref
  - `skinTone` SkinTone — unresolved $ref
  - `breastSize` BreastSize — unresolved $ref
  - `breastPertness` BreastPertness — unresolved $ref
  - `nippleColour` NippleColour — unresolved $ref
  - `vaginaHair` VaginaHair — unresolved $ref
  - `vaginaSize` VaginaSize — unresolved $ref
  - `orientation` Orientation — unresolved $ref
  - `sexualExperience` SexualExperience — unresolved $ref
  - `kinks` Kinks — unresolved $ref
  - `sexPositions` SexPositions — unresolved $ref
  - `relationshipStyle` RelationshipStyle — unresolved $ref
  - `relationshipStatus` RelationshipStatus — unresolved $ref
  - `interests` Interests — unresolved $ref
  - `personality` Personality — unresolved $ref
  - `sexDrive` SexDrive — unresolved $ref
  - `conversationStyle` ConversationStyle — unresolved $ref
  - `attitude` Attitude — unresolved $ref
  - `voiceId` string — S3 URI for the voice reference audio
  - `audioSpeed` number — Audio playback speed multiplier (0.5-2.0)

## Response `200`

Character updated successfully

- object
  - `success` boolean, required — Indicates if the update was successful
  - `characterId` integer, required — ID of the updated character
  - `updatedFields` string[], required — List of field names that were modified
  - `message` string, required — Human-readable success message

## Other responses

- `400` — Bad request - Invalid input
- `401` — Unauthorized - Missing or invalid API key
- `403` — Forbidden - Insufficient permissions
- `404` — Character not found
- `500` — Internal server error

---

[API](https://skmtc.dev/oh/apis/ohapi-documentation.md) · [All operations](https://skmtc.dev/oh/apis/ohapi-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/oh/ohapi-documentation/revisions/b623c2e9cb65/schema)
