---
title: "Create a new model"
method: POST
path: "/v1/models"
tags: ["Models"]
---

# Create a new model

`POST /v1/models`

## Request body

- CreateModelRequestBodyDto
  - `requestId` string — Optional request id for analytics correlation
  - `ethnicity` 'caucasian' | 'latina' | 'asian' | 'arab' | 'afro' | 'indian' | 'furry' | 'kemonomimi' | 'tiefling', required — The ethnicity of the model
  - `age` 18 | 20 | 30 | 40 | 50, required — The age of the model
  - `eyesColor` 'Blue' | 'Brown' | 'Green', required — The eyes color of the model
  - `hairStyle` 'Straight' | 'Braids' | 'Bangs' | 'Bun' | 'Curly' | 'Short' | 'Long' | 'Pigtails' | 'Ponytail' | 'Emo' | 'Shoulder-length' | 'Buzz' | 'Pixie' | 'Hijab' | 'Veil', required — The hair style of the model
  - `hairColor` 'Blonde' | 'Brunette' | 'Black' | 'Red' | 'Pink' | 'Blue' | 'Violet' | 'Airtouch' | 'Black with blonde highlights' | 'Ombre', required — The hair color of the model
  - `bodyType` 'slim' | 'average' | 'athletic' | 'chubby', required — The body type of the model
  - `breastSize` 'small' | 'medium' | 'large' | 'xl', required — The breast size of the model
  - `buttSize` 'small' | 'medium' | 'large', required — The butt size of the model
  - `personality` 'Caregiver' | 'Sage' | 'Innocent' | 'Jester' | 'Temptress' | 'Dominant' | 'Submissive' | 'Lover' | 'Nympho' | 'Mean' | 'Confidant' | 'Experimenter', required — The personality of the model
  - `occupation` 'Massage Therapist' | 'Dentist' | 'Nutritionist' | 'Fitness Coach' | 'Artist' | 'Pharmacist' | 'Hairdresser' | 'Makeup Artist' | 'Gynecologist' | 'Writer' | 'Secretary' | 'Librarian' | 'Social Worker' | 'Fashion Designer' | 'Model' | 'Police Officer' | 'Nurse' | 'Yoga Instructor' | 'Waitress' | 'Cook' | 'Unemployed' | 'Dancer' | 'Teacher' | 'Student' | 'Life Coach' | 'Astronaut' | 'Kindergarten Teacher' | 'Soldier/Military Personnel' | 'Architect' | 'DJ' | 'Nun', required — The occupation of the model
  - `hobbies` 'Yoga' | 'Vlogging' | 'Fitness' | 'Hiking' | 'Traveling' | 'Dancing' | 'Gaming' | 'Parties' | 'Rock' | 'Series' | 'Anime' | 'Cosplay' | 'Art' | 'Personal Growth' | 'Self-Development' | 'Cars' | 'Diy Crafting' | 'Veganism' | 'Photography' | 'Volunteering' | 'Watching Netflix' | 'Martial Arts', required — The hobbies of the model
  - `relationship` 'Stranger' | 'School Mate' | 'Colleague' | 'Mentor' | 'Girlfriend' | 'Sex Friend' | 'Wife' | 'Mistress' | 'Friend' | 'Best Friend' | 'Step Sister' | 'Step Mom', required — The relationship of the model to the user
  - `voice` string — Optional stable voice slug from create-form-config (e.g. "sweet-and-seductive"). Resolved to ElevenLabs id server-side; slugs stay stable if ids change. If omitted, a voice is chosen at random from the same set.

## Response `201`

Model created successfully

- CreateModelResponseBodyDto
  - `modelId` string, required — The model ID
  - `balance` number, required — The balance after the model creation

## Other responses

- `422` — Validation failed
- `500` — Internal server error

---

[API](https://skmtc.dev/miaai/apis/backend-template-api.md) · [All operations](https://skmtc.dev/miaai/apis/backend-template-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/miaai/backend-template-api/revisions/2a8d88a5124f/schema)
