Ominaisuus · Mannekiinien generointi
Tekoälymannekiinien generointi-API omille malleillesi
Yhdellä lauseella
Phottan mannekiinien generointi-API rakentaa fotorealistisen tekoälymallin valitsemiesi attribuuttien perusteella, palauttaa uudelleenkäytettävän mannequin id:n ja maksaa 4 credits. Kaksi työkalua: toinen vaatteille ja toinen optimoitu korujen lähikuviin.
- Tyypillinen kesto: 30-60s
- Credits: 4 credits
- Käsittely: asynkroninen, polling
- Rajoitukset: 600 pyyntöä/min
- Autentikointi: Bearer-avain
Jokainen luku tällä sivulla on peräisin Photta-rajapinnan dokumentaatiosta · tarkistettu
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')const res = await fetch("https://api.photta.app/api/v1/mannequins/generate", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"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"
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/mannequins/generate",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"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"
},
)
data = res.json()["data"] # data["id"], data["status"]Lyhyesti
Lyhyesti
- Endpoint
- POST /api/v1/mannequins/generate
- Autentikointi
- Bearer-API-avain
- Käsittely
- Asynkroninen — tee polling-kyselyitä status-endpointiin
- Tyypillinen kesto
- 30-60s
- Credits
- 4 credits
- Syöterajoitukset
- Enintään 10 MB per kuva; JPEG, PNG, WebP
- Idempotentti
- Ei
Pyyntö ja vastaus
Pyyntö
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')const res = await fetch("https://api.photta.app/api/v1/mannequins/generate", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"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"
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/mannequins/generate",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"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"
},
)
data = res.json()["data"] # data["id"], data["status"]202 Accepted / Completed
{
"data": {
"id": "mmk_r4s5t6",
"status": "processing",
"category": "Female",
"credits_used": 4,
"created_at": "2026-04-10T14:00:00Z"
},
"request_id": "req_mnk002"
}{
"data": {
"id": "mmk_r4s5t6",
"status": "completed",
"mannequin": {
"id": "mnk_v7w8x9",
"name": "Generated Mannequin",
"gender": "female",
"thumbnail_url": "https://cdn.photta.app/mannequins/mnk_v7w8x9-thumb.jpg"
},
"credits_used": 4,
"created_at": "2026-04-10T14:00:00Z",
"completed_at": "2026-04-10T14:00:42Z",
"duration_ms": 42000
},
"request_id": "req_mnk003"
}Pyyntöparametrit
categoryTyyppi: stringPakollinen
Mannequin category.
Arvot:FemaleMaleGirlChildBoyChildethnicityTyyppi: string
Ethnic appearance.
Arvot:east_asian_koreaneast_asian_chinesesoutheast_asiansouth_asiannordicwestern_europeaneastern_europeanmediterraneanafricanafrican_americanmiddle_easternlatin_americanbrazilianmixed_asian_europeanpolynesianageTyyppi: string
Age range.
Arvot:early_20slate_20searly_30slate_30s40s50sbaby_1toddler_2_4young_5_7child_8_10preteen_11_13skin_toneTyyppi: string
Skin tone.
Arvot:lightlight_mediummediummedium_darkdarkface_shapeTyyppi: string
Face shape.
Arvot:ovalsquareroundheartoblongdiamondeye_colorTyyppi: string
Eye color.
Arvot:browndark_brownblackbluegreenhazelgrayambereye_shapeTyyppi: string
Eye shape.
Arvot:almondroundmonolidhoodedupturneddownturnedexpressionTyyppi: string
Facial expression.
Arvot:neutralsoft_smilewarm_smileseriousconfidentfriendlyfacial_hairTyyppi: string
Facial hair style (Male only).
Arvot:nonelight_stubblemedium_stubbleshort_beardfull_beardgoateemustachemakeupTyyppi: string
Makeup style (Female only).
Arvot:naturalminimalsoft_glamprofessionaleditorialhair_styleTyyppi: string
Hair style. Available options depend on category — use /options endpoint.
hair_colorTyyppi: string
Hair color.
Arvot:blackdark_brownmedium_brownlight_brownauburnredblondeplatinum_blondegraywhitehair_textureTyyppi: string
Hair texture.
Arvot:straightwavycurlycoilybody_typeTyyppi: string
Body type. Options depend on category — use /options endpoint.
heightTyyppi: string
Height.
Arvot:shortaveragetallglassesTyyppi: string
Glasses.
Arvot:noneeyeglassessunglassesfrecklesTyyppi: string
Freckles.
Arvot:nonelightprominentpiercingsTyyppi: string
Piercings.
Arvot:noneearnosemultiple
Virheet
- 400
invalid_request_error - The request is malformed or contains invalid parameters.
- 401
authentication_error - The API key is missing, invalid, or expired.
- 402
insufficient_credits_error - Your account does not have enough credits.
- 404
not_found_error - The requested resource does not exist.
- 409
conflict_error - The request conflicts with current state — e.g. your concurrent-batch cap is reached.
- 429
rate_limit_error - Too many requests. Slow down and retry.Retry-After: 30
- 500
api_error - An internal server error occurred. Retry later.
Rajoitukset
- 600 pyyntöä minuutissa per API-avain (Kiinteä aikaikkuna; rajoitus on sama kaikissa tilauksissa)
- Vastaus 429 sisältää otsakkeen Retry-After: 30 sekuntia
- Enintään 10 MB per kuva
- Formaatit: JPEG, PNG, WebP
- Rinnakkaiset eräajot per tilaus: Free 1 · Hobby 2 · Seller 3 · Brand 4 · Studio 6
- Vain polling — API ei lähetä webhookeja.
Attribuutit sisään, uudelleenkäytettävä malli ulos
Lue vaihtoehdot, valitse attribuutit, lähetä pyyntö, käytä pollingia ja hyödynnä id:tä uudelleen.
Vaihe 1
Generoi API-avain
Mannekiinien generointi käyttää samoja tunnistautumistietoja ja samaa credits-saldoa kuin kaikki muutkin Phottan toiminnot.
Vaihe 2
Lue vaihtoehtoluettelo
GET `/api/v1/mannequins/generate/options` palauttaa kaikki hyväksytyt arvot, mukaan lukien `hair_style`- ja `body_type` -listat, jotka vaihtelevat kategorioittain. Rakenna lomakkeesi sen pohjalta enumin kovakoodaamisen sijaan.
Vaihe 3
Luo mannekiini POST-pyynnöllä
Tee POST-kutsu osoitteeseen `/api/v1/mannequins/generate` käyttäen parametria `category` — `Female`, `Male`, `GirlChild` tai `BoyChild` — sekä mitä tahansa 17 valinnaisesta attribuutista: etnisyys, ikä, ihon sävy, kasvojen ja silmien muoto, ilme, parta, meikki, hiukset, vartalotyyppi, pituus, silmälasit, pisamat ja lävistykset.
Vaihe 4
Käytä pollingia, kunnes työ on valmis
Tee GET-kutsu osoitteeseen `/api/v1/mannequins/generate/:id` 3 sekunnin välein, kunnes `data.status` on `completed` tai `failed`; tyypillinen valmistumisaika on 30–60 sekuntia.
Vaihe 5
Käytä mannekiinia uudelleen
Valmistunut runko sisältää `mannequin`-objektin omalla id:llään. Välitä kyseinen id parametrina `mannequin_id` myöhemmissä try-on- tai silmälasitöissä, jolloin jokaisessa kuvassa säilyvät samat kasvot.
Sama endpoint kielillä Node.js, Python ja cURL
Node.js
Tekoälymannekiinien generointi-API ympäristössä Node.js
Kutsu Phottan ominaisuutta tekoälymannekiinien generointi-API Node.js-taustajärjestelmästä natiivilla fetchillä. SDK:ta ei tarvita: tallenna avaimesi, lähetä työ, pollaa tulosta.
LuePython
Tekoälymannekiinien generointi-API Pythonissa
Kutsu Phottan tekoälymannekiinien generointi-API -ominaisuutta Pythonissa requests-kirjaston avulla. Kolmenkymmenen rivin kääre, async-yhteensopiva httpx:n kautta, toimii Djangossa, FastAPIssa ja Celeryssä.
LuecURL
Tekoälymannekiinien generointi-API cURLillä
Kutsu Phottan tekoälymannekiinien generointi-API-rajapintaa suoraan komentoriviltä cURLin avulla. Lähetä, pollaa, lataa — jokainen koodinpätkä toimii yhdessä jq:n kanssa skriptatuissa putkissa.
Lue
Kehittäjien usein kysymät kysymykset ennen mallien generointia
Mikä on tekoälymannekiini?
Generoitu malli, jonka ulkonäön määrität roolituksen sijaan. Se palautetaan id-tunnisteena, joten samat kasvot, hiukset ja vartalo voivat kantaa luettelon jokaista vaatetta.
Paljonko mannekiini maksaa?
4 credits sekä vaatetyökalussa että korutyökalussa. Olemassa olevan mannekiinin uudelleenkäyttö myöhemmissä kuvauksissa ei maksa mitään ylimääräistä — maksat try-on-toiminnosta, et mallista.
Mitä attribuutteja voin määrittää?
`category` on pakollinen. Kaikki muu on valinnaista: etnisyys, ikä, ihon sävy, kasvojen muoto, silmien väri ja muoto, ilme, parta, meikki, hiustyyli, väri ja rakenne, vartalotyyppi, pituus, silmälasit, pisamat ja lävistykset. Valintavaihtoehtojen endpoint listaa hyväksytyt arvot.
Mihin korutyökalu on tarkoitettu?
POST `/api/v1/mannequins/jewelry/generate` rakentaa mallin, joka on optimoitu korujen lähikuviin: se ottaa vastaan parametrit `jewelry_type`, `shot_type`, `camera_angle`, `background` ja `lighting` kokovartaloattribuuttien sijaan, jotta kaula-aukko, korva tai käsi toistuu oikein lähietäisyydeltä.
Voinko käyttää samaa mallia uudelleen eri kuvauksissa?
Kyllä — se on koko endpointin tarkoitus. Generoitu mannekiini-id hyväksytään parametrina `mannequin_id` vaatteiden try-onissa, korujen try-onissa sekä silmälasistudiossa.
Miten kyselen tulosta (polling)?
Tee GET `/api/v1/mannequins/generate/:id` 3 sekunnin välein, kunnes `data.status` on `completed` tai `failed`. Korujen luontitoiminto käyttää omaa tilapolkuaan.
Liittyvät toiminnot
Ominaisuudet
Virtuaalinen try-on API vaatteille
REST API, joka asettaa vaatteet tekoälymallinukkejen päälle. Asynkroninen, 1.5–4 minuutin generointi, 5 credits resoluutiolla 2K, 6 resoluutiolla 4K. cURL-, Node.js- ja Python-esimerkit.
Katso endpointOminaisuudet
Korujen try-on-API kaulakoruille, sormuksille, rannekoruille ja korvakoruille
Sovita kaulakoruja, sormuksia, rannekoruja ja korvakoruja AI-malleille RESTin kautta. 5 credits resoluutiolla 2K, sisäänrakennetut lähikuvamallit, heijastukset huomioiva renderöinti Photta-dokumentaation mukaisesti.
Katso endpointRakenna
Rakenna virtuaalinen try-on -ominaisuus sovellukseesi
Kattava toteutusmalli virtuaalisen try-on -ominaisuuden julkaisemiseen Photta APIlla: lataus, lähetys, polling workerista ja lopputuloksen renderöinti. TypeScript + vain palvelimella ajettavat mallit.
Katso endpointVertailu
Photta vs Fitroom — valitse sopivin muotialan API
Photta ja Fitroom vertailussa: endpointit, kutsukohtainen credit-kustannus, hinnoittelumalli ja integraatiopinta. Tiedot haettu kummaltakin sivustolta 2026-04-19. Ei keksittyjä lukuja.
Katso endpointPikaopas
Ensimmäinen Photta-kuva alle viidessä minuutissa.
Rekisteröidy, luo API-avain, suorita ensimmäinen cURL-kutsusi, tee pollingia valmistumiseen asti ja tallenna tulos. Viisi vaihetta, dokumentoitu alusta loppuun.
Katso endpointReferenssi
Photta API -virheet
Täydellinen luettelo Photta API -virhetyypeistä statuskoodeineen, virheen rungon rakenne ja tiedot siitä, mitkä virheet kannattaa yrittää uudelleen.
Katso endpointReferenssi
Photta API:n rate limitit
Photta API:n rate limit, sen aikaikkuna, Retry-After-otsake, pollausväli ja tilauskohtaiset rinnakkaisuusrajat, kaikki API-dokumentaatiosta luettuna.
Katso endpoint
Jokainen luku tällä sivulla on peräisin Photta-rajapinnan dokumentaatiosta · tarkistettu
Kokeile APIa viidessä minuutissa
Luo Photta-API-avain, liitä yllä oleva cURL-koodinpätkä, ja sinulla on ensimmäinen mallikuva ennen kuin kahvi ehtii tippua.
- 30-60s
- 4 credits
- asynkroninen, polling
- 600 pyyntöä/min
- Bearer-avain