Funcionalidade · Geração de manequins

API de geração de manequins com IA para seus próprios modelos

Em uma frase

A API de geração de manequins da Photta cria um modelo fotorrealista com IA a partir de atributos que você escolhe, retorna um mannequin id reutilizável e custa 4 credits. Dois construtores: um para roupas, outro ajustado para close-ups de joias.

  • Tempo típico: 30-60s
  • Credits: 4 credits
  • Processamento: assíncrono, polling
  • Limites: 600 requisições/min
  • Autenticação: Chave Bearer

Todos os números nesta página vêm de a documentação da API da Photta · verificado

POST/api/v1/mannequins/generate
RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/mannequins/generate \
  -H "Authorization: Bearer $PHOTTA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "category": "Female",
  "ethnicity": "east_asian_korean",
  "age": "late_20s",
  "skin_tone": "light_medium",
  "expression": "neutral",
  "hair_style": "long_straight",
  "hair_color": "black",
  "body_type": "slim",
  "height": "average"
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')

Visão geral

Visão geral

Endpoint
POST /api/v1/mannequins/generate
Autenticação
API key Bearer
Processamento
Assíncrono — faça polling no endpoint de status
Tempo típico
30-60s
Credits
4 credits
Limites de entrada
Até 10 MB por imagem; JPEG, PNG, WebP
Idempotente
Não

Requisição e resposta

Requisição

RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/mannequins/generate \
  -H "Authorization: Bearer $PHOTTA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "category": "Female",
  "ethnicity": "east_asian_korean",
  "age": "late_20s",
  "skin_tone": "light_medium",
  "expression": "neutral",
  "hair_style": "long_straight",
  "hair_color": "black",
  "body_type": "slim",
  "height": "average"
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')

202 Accepted / Concluído

{
  "data": {
    "id": "mmk_r4s5t6",
    "status": "processing",
    "category": "Female",
    "credits_used": 4,
    "created_at": "2026-04-10T14:00:00Z"
  },
  "request_id": "req_mnk002"
}

Parâmetros da requisição

category

Tipo: stringObrigatório

Mannequin category.

Valores: FemaleMaleGirlChildBoyChild
ethnicity

Tipo: string

Ethnic appearance.

Valores: east_asian_koreaneast_asian_chinesesoutheast_asiansouth_asiannordicwestern_europeaneastern_europeanmediterraneanafricanafrican_americanmiddle_easternlatin_americanbrazilianmixed_asian_europeanpolynesian
age

Tipo: string

Age range.

Valores: early_20slate_20searly_30slate_30s40s50sbaby_1toddler_2_4young_5_7child_8_10preteen_11_13
skin_tone

Tipo: string

Skin tone.

Valores: lightlight_mediummediummedium_darkdark
face_shape

Tipo: string

Face shape.

Valores: ovalsquareroundheartoblongdiamond
eye_color

Tipo: string

Eye color.

Valores: browndark_brownblackbluegreenhazelgrayamber
eye_shape

Tipo: string

Eye shape.

Valores: almondroundmonolidhoodedupturneddownturned
expression

Tipo: string

Facial expression.

Valores: neutralsoft_smilewarm_smileseriousconfidentfriendly
facial_hair

Tipo: string

Facial hair style (Male only).

Valores: nonelight_stubblemedium_stubbleshort_beardfull_beardgoateemustache
makeup

Tipo: string

Makeup style (Female only).

Valores: naturalminimalsoft_glamprofessionaleditorial
hair_style

Tipo: string

Hair style. Available options depend on category — use /options endpoint.

hair_color

Tipo: string

Hair color.

Valores: blackdark_brownmedium_brownlight_brownauburnredblondeplatinum_blondegraywhite
hair_texture

Tipo: string

Hair texture.

Valores: straightwavycurlycoily
body_type

Tipo: string

Body type. Options depend on category — use /options endpoint.

height

Tipo: string

Height.

Valores: shortaveragetall
glasses

Tipo: string

Glasses.

Valores: noneeyeglassessunglasses
freckles

Tipo: string

Freckles.

Valores: nonelightprominent
piercings

Tipo: string

Piercings.

Valores: noneearnosemultiple

Erros

400invalid_request_error
The request is malformed or contains invalid parameters.
401authentication_error
The API key is missing, invalid, or expired.
402insufficient_credits_error
Your account does not have enough credits.
404not_found_error
The requested resource does not exist.
409conflict_error
The request conflicts with current state — e.g. your concurrent-batch cap is reached.
429rate_limit_error
Too many requests. Slow down and retry.Retry-After: 30
500api_error
An internal server error occurred. Retry later.

Limites

  • 600 requisições por minuto por API key (Janela fixa; o limite é o mesmo em todos os planos)
  • Um 429 retorna Retry-After: 30 segundos
  • Até 10 MB por imagem
  • Formatos: JPEG, PNG, WebP
  • Batches concorrentes por plano: Free 1 · Hobby 2 · Seller 3 · Brand 4 · Studio 6
  • Apenas polling — a API não envia webhooks.

Atributos entram, um modelo reutilizável sai

Leia as opções, escolha os atributos, envie, faça polling e reutilize o id.

  1. Passo 1

    Gere uma chave de API

    A geração de manequins usa as mesmas credenciais e o mesmo saldo de credits de qualquer outra funcionalidade da Photta.

  2. Passo 2

    Consulte o catálogo de opções

    GET `/api/v1/mannequins/generate/options` retorna todos os valores aceitos, incluindo as listas de `hair_style` e `body_type` que variam por categoria. Alimente seu formulário a partir dele em vez de fixar os enums no código.

  3. Passo 3

    Envie o manequim via POST

    POST `/api/v1/mannequins/generate` com `category` — `Female`, `Male`, `GirlChild` ou `BoyChild` — mais qualquer um dos 17 atributos opcionais: etnia, idade, tom de pele, formato de rosto e olhos, expressão, pelos faciais, maquiagem, cabelo, tipo de corpo, altura, óculos, sardas e piercings.

  4. Passo 4

    Faça polling até o job ser concluído

    GET `/api/v1/mannequins/generate/:id` a cada 3 segundos até que `data.status` seja `completed` ou `failed`; a conclusão típica leva de 30 a 60 segundos.

  5. Passo 5

    Reutilize o manequim

    O corpo da resposta concluída contém um objeto `mannequin` com seu próprio id. Passe esse id como `mannequin_id` em jobs posteriores de try-on ou óculos e cada foto manterá o mesmo rosto.

Perguntas que desenvolvedores fazem antes de gerar modelos

O que é um manequim com IA?

Um modelo gerado cuja aparência você especifica em vez de contratar via casting. Ele é retornado como um id, permitindo que o mesmo rosto, cabelo e corpo vistam todas as peças de um catálogo.

Quanto custa um manequim?

4 credits, tanto para o construtor de roupas quanto para o de joias. Reutilizar um manequim existente em um ensaio posterior não custa nada a mais — você paga pelo try-on, não pelo modelo.

Quais atributos posso definir?

`category` é obrigatório. Todo o resto é opcional: etnia, idade, tom de pele, formato de rosto, cor e formato dos olhos, expressão, pelos faciais, maquiagem, estilo, cor e textura do cabelo, tipo de corpo, altura, óculos, sardas e piercings. O endpoint de opções lista os valores aceitos.

Para que serve o construtor de joias?

POST `/api/v1/mannequins/jewelry/generate` cria um modelo ajustado para fotos de joias em close-up: ele recebe `jewelry_type`, `shot_type`, `camera_angle`, `background` e `lighting` em vez dos atributos de corpo inteiro, garantindo que o decote, a orelha ou a mão sejam renderizados corretamente em close.

Posso reutilizar o mesmo modelo em diferentes ensaios?

Sim — esse é o objetivo do endpoint. O id do manequim gerado é aceito como `mannequin_id` pelo try-on de roupas, try-on de joias e pelo estúdio de óculos.

Como faço polling pelo resultado?

GET `/api/v1/mannequins/generate/:id` a cada 3 segundos até que `data.status` seja `completed` ou `failed`. O jewelry builder faz polling em seu próprio status path.

Funcionalidades relacionadas

Todos os números nesta página vêm de a documentação da API da Photta · verificado

Experimente a API em cinco minutos

Gere uma chave de API do Photta, cole o snippet de cURL acima e você terá sua primeira imagem com modelo antes que o café termine de passar.

  • 30-60s
  • 4 credits
  • assíncrono, polling
  • 600 requisições/min
  • Chave Bearer