Bygg · AI-fotografering som SaaS
Bygg en tjeneste for AI-produktfotografering
I én setning
Klargjør en Photta-API-nøkkel per tenant (eller en felles pott hvis volumet er lite), kjør fanout over hver kundes katalog inn i en kø, kall /api/v1/tryon/apparel per produkt, poll generasjons-ID-ene i en worker-pool, lagre resultatene i kundens bøtte, og fakturer hver fakturerbare enhet (credit eller generert bilde) med margin på toppen av Phottas credit-kostnad.
- Credits: 5 credits ved 2K · 6 credits ved 4K
- Typisk tidsbruk: 1.5–4 min
- Prosessering: asynkron, polling
Hvert tall på denne siden er hentet fra dokumentasjonen for Photta-API-et · verifisert
Fan out over kundenes varekataloger, send try-on-jobber per produkt, fakturer per credit. De samme primitivene som Photta eksponerer for individuelle utviklere, kan settes sammen til en white-label-SaaS — hvis du respekterer grensene.
RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/tryon/apparel \
-H "Authorization: Bearer $PHOTTA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"product_type": "top",
"product_images": [
"https://cdn.yourstore.com/products/shirt-front.jpg"
],
"product_back_image": "https://cdn.yourstore.com/products/shirt-back.jpg",
"product_category": "t_shirt",
"mannequin_id": "mnk_f3a9b1",
"pose_id": "pose_c2d4e5",
"background": "https://cdn.yourstore.com/backgrounds/studio-loft.jpg",
"lock_background": true,
"resolution": "2K",
"aspect_ratio": "3:4",
"body_size": "M",
"expression": "neutral",
"user_instruction": "Keep the collar pattern crisp and centered."
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')const res = await fetch("https://api.photta.app/api/v1/tryon/apparel", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"product_type": "top",
"product_images": [
"https://cdn.yourstore.com/products/shirt-front.jpg"
],
"product_back_image": "https://cdn.yourstore.com/products/shirt-back.jpg",
"product_category": "t_shirt",
"mannequin_id": "mnk_f3a9b1",
"pose_id": "pose_c2d4e5",
"background": "https://cdn.yourstore.com/backgrounds/studio-loft.jpg",
"lock_background": true,
"resolution": "2K",
"aspect_ratio": "3:4",
"body_size": "M",
"expression": "neutral",
"user_instruction": "Keep the collar pattern crisp and centered."
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/tryon/apparel",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"product_type": "top",
"product_images": [
"https://cdn.yourstore.com/products/shirt-front.jpg"
],
"product_back_image": "https://cdn.yourstore.com/products/shirt-back.jpg",
"product_category": "t_shirt",
"mannequin_id": "mnk_f3a9b1",
"pose_id": "pose_c2d4e5",
"background": "https://cdn.yourstore.com/backgrounds/studio-loft.jpg",
"lock_background": True,
"resolution": "2K",
"aspect_ratio": "3:4",
"body_size": "M",
"expression": "neutral",
"user_instruction": "Keep the collar pattern crisp and centered."
},
)
data = res.json()["data"] # data["id"], data["status"]Slik fungerer det
Fra én nøkkel til en flerbrukertjeneste
Fem arkitekturbeslutninger du må ta før du skriver produksjonskode.
Trinn 1
Definer produktkontrakten din
Bestem hva kunden din får per fakturerbare enhet: ett generert bilde? En batch? En månedlig credit-pott? Svaret ditt styrer alt annet — kødybde, retry-policy, tekst på prissiden.
Trinn 2
Klargjør Photta-nøkler per tenant
Liten skala: én felles nøkkel, spor forbruk per tenant i databasen din. Større skala: én Photta-nøkkel per tenant, administrert via Photta-dashbordet — tydeligere attribusjon, mindre skadeomfang ved en lekkasje.
Trinn 3
Kjør fanout gjennom en kø
Legg til en fotojobb i køen for hvert produkt i kundens datastrøm. Send aldri inn synkront under en CSV-import — du vil treffe rate limit-grensen på 600-requests-per-minute og miste jobber til 429-feil.
Trinn 4
Margin på toppen av credit-prisen
Hver klesgenerering i 4K koster deg 6 credits. Hver faktura du sender, bør være credits × din margin. Registrer den rå credit-kostnaden i reskontroen din, slik at økonomiavdelingen kan avstemme Phottas faktura mot inntektslinjen din.
Trinn 5
Overvåk responstid og feilrate
Spor fullføringstid + feilrate per tenant. Når en kundes bilder konsekvent tar lengre tid enn 4 minutter eller feiler gjentatte ganger, skyldes det nesten alltid ugyldige inndata (ødelagt URL, ustøttet product_type) — ikke et problem hos Photta.
Tre mønstre du vil trenge
Fanout, utsending per tenant, faktureringsreskontro — de bærende elementene i en fotograferings-SaaS.
// For each product in the customer's feed, kick off a try-on.
for (const product of catalog) {
await photoQueue.add("photo", {
customerId: product.customer_id,
productUrl: product.image,
productType: product.type, // "top" | "bottom" | "top_and_bottom" | "one_piece"
});
}const res = await fetch("https://api.photta.app/api/v1/tryon/apparel", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"product_type": "top",
"product_images": [
"https://cdn.yourstore.com/products/shirt-front.jpg"
],
"product_back_image": "https://cdn.yourstore.com/products/shirt-back.jpg",
"product_category": "t_shirt",
"mannequin_id": "mnk_f3a9b1",
"pose_id": "pose_c2d4e5",
"background": "https://cdn.yourstore.com/backgrounds/studio-loft.jpg",
"lock_background": true,
"resolution": "2K",
"aspect_ratio": "3:4",
"body_size": "M",
"expression": "neutral",
"user_instruction": "Keep the collar pattern crisp and centered."
}),
});
const { data } = await res.json(); // data.id, data.status// A completed apparel job costs 5 credits at 2K and 6 at 4K.
// Record it to your billing pipeline so you can margin on top of it.
await billingLedger.append({
customer: data.customerId,
sku: "photo-4k",
quantity: 1,
wholesaleCost: 6, // credits, = your Photta spend
});Spørsmål utviklere stiller
Kjøre en tjeneste oppå Photta
Trenger jeg en egen Photta-API-nøkkel per tenant?
Nei, men det hjelper ved oppskalering. Med færre enn en håndfull kunder holder det fint med én felles nøkkel og sporing av forbruk per tenant i din egen database. Utover det gir en nøkkel per tenant renere attribusjon, enklere rullering og et mindre skadeomfang dersom noe lekker.
Hva gjør jeg når jeg går tom for credits?
API-et returnerer 402 insufficient_credits med påkrevde og tilgjengelige antall. Sett et laveste nivå (f.eks. 100 credits) og fyll på automatisk før jobbene begynner å feile. Feilede jobber refunderer sine credits, så et plutselig rush av 402-feil gjør ikke skaden verre.
Hvordan bør jeg prise tjenesten min?
Photta tar 5 credits ved 2K, 6 credits ved 4K. Konverter det til din utsalgsvaluta (kostnad × din margin × credit-konvertering) og avgjør om du vil fakturere per bilde, per batch eller per måned. De fleste foto-SaaS-produkter ender opp med å fakturere per bilde med et månedlig minstebeløp.
Hvilke SLA-er tilbyr Photta?
Phottas dokumenterte fullføringsvindu er 1,5 til 4 minutter per jobb. Det er ingen fast oppetids-SLA publisert. Hvis din SaaS forplikter seg til en egen leveringstid, bør du bygge inn slakk i din egen kontrakt (f.eks. «bilder levert innen 1 time» gir deg 10x handlingsrom) og spore forsinkelse per leietaker for å fange opp regresjoner tidlig.
Kan jeg hvitmerke resultatet?
Ja. De returnerte bildene har ingen Photta-merkevarebygging. Du kan levere dem til kundens bøtte med ditt eget CDN-domene foran — kunden din trenger aldri å vite at Phottas rørledning produserte dem. Selve API-et er ikke hvitmerket — nøkkelen + dashbordet er Photta-merket.
Relaterte sider
Referanse
Funksjoner
Virtuell try-on API for klær
REST API som plasserer klær på AI-mannequiner. Asynkront, 1,5–4 minutters generering, 5 credits i 2K, 6 i 4K. Eksempler for cURL, Node.js og Python.
LesHurtigstart
Første Photta-bilde på under fem minutter.
Registrer deg, generer en API-nøkkel, kjør ditt første cURL-kall, utfør polling til det er fullført, lagre resultatet. Fem trinn, dokumentert fra start til slutt.
LesFunksjoner
Ghost mannequin-API for hollow-man-produktbilder
AI ghost mannequin-endepunkt. Fjern mannekengen fra et klesbilde og bevar innvendige detaljer. 3D eller flat-lay, batch-prosessering, 4 credits i 2K.
Les
Hvert tall på denne siden er hentet fra dokumentasjonen for Photta-API-et · verifisert
Lanser en foto-SaaS oppå Photta
Samme API, ditt varemerke, din margin. Hent en API-nøkkel, koble de tre mønstrene ovenfor inn i arbeiderne dine, og du er halvveis til lansering.