Kapabilitas · Foto detail

API foto detail produk untuk close-up

Ringkasan singkat

API foto detail Photta me-render close-up dari satu area tertentu pada produk. Panggilan analyze gratis menyarankan detail yang layak difoto; panggilan generate berbiaya tetap 3 credits, tanpa tingkatan resolusi.

  • Waktu umum: 20–60 sec
  • Credits: 3 credits
  • Pemrosesan: async, polling
  • Batasan: 600 requests/min
  • Autentikasi: Bearer key

Setiap angka di halaman ini bersumber dari dokumentasi API Photta · diperiksa

POST/api/v1/detail-photos
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')

Sekilas

Sekilas

Endpoint
POST /api/v1/detail-photos
Autentikasi
API key Bearer
Pemrosesan
Asinkron — lakukan polling ke endpoint status
Waktu umum
20–60 sec
Credits
3 credits
Batas input
Hingga 10 MB per gambar; JPEG, PNG, WebP
Idempoten
Tidak

Request dan 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')

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"
}

Parameter request

product_image

Tipe: stringWajib

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_label

Tipe: stringWajib

The area to zoom into, e.g. "collar stitching", "cuff detail", "fabric weave on the chest", "pendant clasp". Max 100 characters.

detail_description

Tipe: string

Extra guidance for the close-up. Max 400 characters.

framing

Tipe: 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

Nilai: extreme-closeupcloseupmedium-closeup
source_type

Tipe: string

Tunes what is preserved in the close-up.

= apparel

Nilai: appareljewelry

Error

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.

Batasan

  • 600 request per menit per API key (Fixed window; batasannya sama di setiap paket)
  • Respons 429 menyertakan Retry-After: 30 detik
  • Hingga 10 MB per gambar
  • Format: JPEG, PNG, WebP
  • Batch konkuren per paket: Free 1 · Hobby 2 · Seller 3 · Brand 4 · Studio 6
  • Hanya polling — API tidak mengirim webhook.

Tanyakan apa yang layak difoto, lalu potret

Analisis secara gratis, pilih detail, kirim, lakukan polling, unduh.

  1. Langkah 1

    Buat API key

    Foto detail menggunakan kredensial yang sama dan saldo credits yang sama dengan setiap kapabilitas Photta lainnya.

  2. Langkah 2

    Tanyakan detail mana yang harus difoto

    POST `/api/v1/detail-photos/analyze` dengan `product_image`. Endpoint ini mengembalikan saran nilai `detail_label`, `detail_description`, dan `framing` untuk produk tersebut secara sinkron, tanpa biaya.

  3. Langkah 3

    POST close-up

    POST ke `/api/v1/detail-photos` dengan `product_image` dan `detail_label`. Atur `framing` ke `extreme-closeup`, `closeup`, atau `medium-closeup`, `source_type` ke `apparel` atau `jewelry`, dan tambahkan hingga 400 karakter `detail_description`.

  4. Langkah 4

    Lakukan polling hingga tugas selesai

    GET `/api/v1/detail-photos/:id` setiap 3 detik hingga `data.status` bernilai `completed` atau `failed`; waktu penyelesaian tipikal adalah 20 hingga 60 detik.

  5. Langkah 5

    Unduh dan simpan secara persisten

    Body yang selesai memuat `output_url`. Foto detail langsung pas dimasukkan ke galeri PDP di samping foto utama.

Pertanyaan yang diajukan developer sebelum merilis foto detail

Apa itu API foto detail?

Endpoint yang me-render close-up dari satu area produk yang ditentukan — jahitan kerah, pengait, tenunan di dada — dari satu foto yang lebih lebar, alih-alih sesi studio kedua dengan lensa makro.

Berapa biaya foto detail?

Tetap 3 credits. Tidak ada tingkatan resolusi pada endpoint ini, dan panggilan analyze yang menyarankan detail bersifat gratis.

Apa yang dikembalikan oleh endpoint analyze?

Daftar saran, masing-masing dengan `detail_label`, `detail_description` yang menjelaskan mengapa area tersebut layak ditampilkan, dan rekomendasi `framing`. Teruskan saran apa pun langsung ke panggilan generate.

Seberapa ketat setiap opsi framing?

`extreme-closeup` mengisi hampir seluruh frame dengan detail, `closeup` menyisakan sedikit konteks di sekitarnya, dan `medium-closeup` menampilkan detail dalam pakaian atau perhiasan di sekelilingnya. Pilih per detail, bukan per produk.

Bisakah sumbernya berupa gambar yang di-generate?

Ya. `product_image` menerima `output_url` dari pembuatan yang telah selesai serta foto produk milik Anda sendiri, sebagai URL https atau data URI base64.

Bagaimana cara melakukan polling untuk hasilnya?

GET `/api/v1/detail-photos/:id` setiap 3 detik hingga `data.status` bernilai `completed` atau `failed`. Panggilan analyze bersifat sinkron dan tidak memerlukan polling.

Kapabilitas terkait

Setiap angka di halaman ini bersumber dari dokumentasi API Photta · diperiksa

Coba API dalam lima menit

Buat Photta API key, tempel cuplikan cURL di atas, dan Anda akan mendapatkan gambar on-model pertama sebelum kopi selesai diseduh.

  • 20–60 sec
  • 3 credits
  • async, polling
  • 600 requests/min
  • Bearer key