Funktionalitet · Detaljebilleder
API til produktdetaljebilleder til nærbilleder
I én sætning
Phottas detaljefoto-API renderer et nærbillede af ét navngivet område på et produkt. Et gratis analyze-kald foreslår detaljer, der er værd at fotografere; generate-kaldet koster en fast pris på 3 credits uden opløsningsniveauer.
- Typisk tid: 20–60 sec
- Credits: 3 credits
- Behandling: async, polling
- Grænser: 600 requests/min
- Autentifikation: Bearer key
Hvert tal på denne side stammer fra Photta API-dokumentationen · tjekket
RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/detail-photos \
-H "Authorization: Bearer $PHOTTA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"product_image": "https://cdn.yourstore.com/products/linen-shirt-hero.jpg",
"detail_label": "collar stitching",
"detail_description": "Focus on the reinforced double-stitch seam along the collar edge.",
"framing": "extreme-closeup",
"source_type": "apparel"
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')const res = await fetch("https://api.photta.app/api/v1/detail-photos", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"product_image": "https://cdn.yourstore.com/products/linen-shirt-hero.jpg",
"detail_label": "collar stitching",
"detail_description": "Focus on the reinforced double-stitch seam along the collar edge.",
"framing": "extreme-closeup",
"source_type": "apparel"
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/detail-photos",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"product_image": "https://cdn.yourstore.com/products/linen-shirt-hero.jpg",
"detail_label": "collar stitching",
"detail_description": "Focus on the reinforced double-stitch seam along the collar edge.",
"framing": "extreme-closeup",
"source_type": "apparel"
},
)
data = res.json()["data"] # data["id"], data["status"]Kort fortalt
Kort fortalt
- Endpoint
- POST /api/v1/detail-photos
- Autentifikation
- Bearer API-nøgle
- Behandling
- Asynkron — poll status-endpointet
- Typisk tid
- 20–60 sec
- Credits
- 3 credits
- Inputgrænser
- Op til 10 MB pr. billede; JPEG, PNG, WebP
- Idempotent
- Nej
Request og response
Request
RESPONSE=$(curl -s -X POST https://api.photta.app/api/v1/detail-photos \
-H "Authorization: Bearer $PHOTTA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"product_image": "https://cdn.yourstore.com/products/linen-shirt-hero.jpg",
"detail_label": "collar stitching",
"detail_description": "Focus on the reinforced double-stitch seam along the collar edge.",
"framing": "extreme-closeup",
"source_type": "apparel"
}')
ID=$(echo "$RESPONSE" | jq -r '.data.id')const res = await fetch("https://api.photta.app/api/v1/detail-photos", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.PHOTTA_API_KEY}`, "Content-Type": "application/json" },
body: JSON.stringify({
"product_image": "https://cdn.yourstore.com/products/linen-shirt-hero.jpg",
"detail_label": "collar stitching",
"detail_description": "Focus on the reinforced double-stitch seam along the collar edge.",
"framing": "extreme-closeup",
"source_type": "apparel"
}),
});
const { data } = await res.json(); // data.id, data.statusimport os, requests
res = requests.post(
"https://api.photta.app/api/v1/detail-photos",
headers={"Authorization": f"Bearer {os.environ['PHOTTA_API_KEY']}"},
json={
"product_image": "https://cdn.yourstore.com/products/linen-shirt-hero.jpg",
"detail_label": "collar stitching",
"detail_description": "Focus on the reinforced double-stitch seam along the collar edge.",
"framing": "extreme-closeup",
"source_type": "apparel"
},
)
data = res.json()["data"] # data["id"], data["status"]202 Accepted / Completed
{
"data": {
"id": "dtl_9f2c4a71b8e3d605a1f7c2948d3b6e10",
"status": "processing",
"detail_label": "collar stitching",
"framing": "extreme-closeup",
"credits_used": 3,
"created_at": "2026-07-30T14:20:00Z"
},
"request_id": "req_dtl001"
}{
"data": {
"id": "dtl_9f2c4a71b8e3d605a1f7c2948d3b6e10",
"status": "completed",
"detail_label": "collar stitching",
"framing": "extreme-closeup",
"output_url": "https://cdn.photta.app/generated/dtl_9f2c4a71b8e3d605a1f7c2948d3b6e10.jpg",
"thumbnail_url": "https://cdn.photta.app/generated/dtl_9f2c4a71b8e3d605a1f7c2948d3b6e10-thumb.jpg",
"credits_used": 3,
"created_at": "2026-07-30T14:20:00Z",
"completed_at": "2026-07-30T14:20:42Z",
"duration_ms": 42000
},
"request_id": "req_dtl003"
}Request-parametre
product_imageType: stringPåkrævet
The source image — a completed generation's output_url or any product photo. https URL or base64 data URI. JPEG, PNG, WebP; max 10 MB.
detail_labelType: stringPåkrævet
The area to zoom into, e.g. "collar stitching", "cuff detail", "fabric weave on the chest", "pendant clasp". Max 100 characters.
detail_descriptionType: string
Extra guidance for the close-up. Max 400 characters.
framingType: string
How tight the crop is: "extreme-closeup" — the detail fills ~90% of the frame (near-macro); "closeup" — ~70% with some surrounding context; "medium-closeup" — ~50% with body/outfit visible.
= medium-closeup
Værdier:extreme-closeupcloseupmedium-closeupsource_typeType: string
Tunes what is preserved in the close-up.
= apparel
Værdier:appareljewelry
Fejl
- 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.
Grænser
- 600 anmodninger i minuttet pr. API-nøgle (Fast vindue; grænsen er den samme på alle planer)
- En 429 indeholder Retry-After: 30 sekunder
- Op til 10 MB pr. billede
- Formater: JPEG, PNG, WebP
- Samtidige batches pr. plan: Free 1 · Hobby 2 · Seller 3 · Brand 4 · Studio 6
- Kun polling — API'et sender ingen webhooks.
Spørg, hvad der er værd at fotografere, og tag så billedet
Analysér gratis, vælg en detalje, indsend, poll, download.
Trin 1
Generér en API-nøgle
Detaljebilleder bruger de samme legitimationsoplysninger og den samme credit-saldo som enhver anden Photta-funktionalitet.
Trin 2
Spørg, hvilke detaljer der skal fotograferes
POST `/api/v1/detail-photos/analyze` med `product_image`. Det returnerer synkront foreslåede værdier for `detail_label`, `detail_description` og `framing` for det pågældende produkt og koster ingenting.
Trin 3
POST nærbilledet
POST til `/api/v1/detail-photos` med `product_image` og `detail_label`. Sæt `framing` til `extreme-closeup`, `closeup` eller `medium-closeup`, `source_type` til `apparel` eller `jewelry`, og tilføj op til 400 tegn af `detail_description`.
Trin 4
Poll, indtil jobbet er fuldført
GET `/api/v1/detail-photos/:id` hvert 3. sekund, indtil `data.status` er `completed` eller `failed`; typisk fuldførelsestid er 20 til 60 sekunder.
Trin 5
Download og persistér
Det fuldførte body-respons indeholder `output_url`. Detaljebilleder passer direkte ind i et PDP-galleri ved siden af hovedbilledet.
Det samme endpoint i Node.js, Python og cURL
Node.js
API til produktdetaljebilleder i Node.js
Kald Phottas aPI til produktdetaljebilleder fra en Node.js-backend med indbygget fetch. Ingen SDK påkrævet: gem din nøgle, indsend jobbet, foretag polling for resultatet.
LæsPython
API til produktdetaljebilleder i Python
Kald Phottas aPI til produktdetaljebilleder i Python med requests-biblioteket. Tredive-linjers wrapper, async-venlig via httpx, fungerer i Django, FastAPI og Celery.
LæscURL
API til produktdetaljebilleder med cURL
Kald Phottas aPI til produktdetaljebilleder direkte fra kommandolinjen med cURL. Indsend, poll, download — hvert kodestykke fungerer sammen med jq til scriptede pipelines.
Læs
Spørgsmål, udviklere stiller, før de deployer detaljebilleder
Hvad er et API til detaljebilleder?
Et endpoint, der renderer et nærbillede af ét navngivet område på et produkt — kravesyningen, en lås, vævningen på brystet — ud fra et enkelt bredere fotografi i stedet for en ekstra studiosession med et makroobjektiv.
Hvad koster et detaljebillede?
Fast 3 credits. Der er ingen opløsningsniveauer på dette endpoint, og analyze-kaldet, der foreslår detaljer, er gratis.
Hvad returnerer analyze-endpointet?
En liste over forslag, hver med et `detail_label`, en `detail_description`, der forklarer, hvorfor området er værd at vise, og en anbefalet `framing`. Før ethvert forslag direkte videre til generate-kaldet.
Hvor tæt beskæring har hver framing-mulighed?
`extreme-closeup` udfylder næsten hele billedet med detaljen, `closeup` bevarer lidt kontekst omkring den, og `medium-closeup` viser detaljen i det omgivende tøj eller smykke. Vælg pr. detalje, ikke pr. produkt.
Kan kilden være et genereret billede?
Ja. `product_image` accepterer `output_url` fra en fuldført generering samt ethvert af dine egne produktfotos, som en https-URL eller en base64-data-URI.
Hvordan poller jeg efter resultatet?
GET `/api/v1/detail-photos/:id` hvert 3. sekund, indtil `data.status` er `completed` eller `failed`. Analyse-kaldet er synkront og kræver ingen polling.
Relaterede funktionaliteter
Funktioner
Virtuel try-on API til tøj
REST API, der placerer tøj på AI-mannequiner. Asynkront, 1.5–4 minutters generering, 5 credits ved 2K, 6 ved 4K. cURL-, Node.js- og Python-eksempler.
Se endpointetFunktioner
Try-on-API til smykker til halskæder, ringe, armbånd og øreringe
Placér halskæder, ringe, armbånd og øreringe på AI-modeller via REST. 5 credits ved 2K, indbyggede close-up-mannequiner, refleksionsbevidst rendering fra Photta-dokumentationen.
Se endpointetByg
Byg en AI-produktfotograferingstjeneste
En playbook til stiftere om videresalg af Phottas virtuelle try-on-API som en white-label-SaaS: tenant-nøgler, batch-fanout, fakturering pr. credit, SLA-realiteter.
Se endpointetSammenlign
Photta vs FASHN — AI-mode-API, side om side
Photta og FASHN sammenlignet: endpoints, kreditpriser, abonnementstyper, concurrency limits. Hentet direkte fra hver virksomheds egen prisside den 2026-04-19. Ingen opdigtede tal.
Se endpointetHurtig start
Første Photta-billede på under fem minutter.
Opret en konto, generer en API-nøgle, kør dit første cURL-kald, foretag polling indtil det er fuldført, gem resultatet. Fem trin, dokumenteret fra start til slut.
Se endpointetReference
Photta API-fejl
Den komplette liste over Photta API-fejltyper med deres statuskoder, strukturen på fejlsvaret, og hvilke fejl det kan betale sig at prøve igen.
Se endpointetReference
Photta API rate limits
Photta API-rate limit, dets vindue, Retry-After-headeren, polling-intervallet og lofterne for samtidighed pr. abonnement, alt sammen aflæst fra API-dokumentationen.
Se endpointet
Hvert tal på denne side stammer fra Photta API-dokumentationen · tjekket
Prøv API'et på fem minutter
Generér en Photta API-nøgle, indsæt cURL-kodestykket ovenfor, og du har dit første billede på en model, før kaffen er færdigbrygget.
- 20–60 sec
- 3 credits
- async, polling
- 600 requests/min
- Bearer key