Hızlı Başlangıç

Beş dakikadan kısa sürede ilk Photta görseli.

Tek bir hesap, tek bir API anahtarı, beş shell komutu. Aşağıdaki adımlar, resmi Photta dokümanlarının önerdikleriyle tam olarak eşleşir — wrapper, SDK veya framework varsayımı yoktur.

Tek cümlede

ai.photta.app adresinden kaydolun, Generate API key butonuna tıklayın, bunu PHOTTA_API_KEY olarak export edin, /api/v1/tryon/apparel adresine POST yapın ve dönen generation ID'yi durum completed olana kadar her 3 saniyede bir poll edin — genellikle 1.5 ile 4 dakika sürer.

Nasıl çalışır

Sıfırdan ilk görsele beş komut

Bunları sırasıyla bir terminale yapıştırın. Her kod parçası bağımsızdır ve sadece curl + jq kullanır.

  1. 01

    Adım 1

    API anahtarı oluşturun

    ai.photta.app adresinden kaydolun ve Geliştirici panelini açın. Generate API key butonuna tıklayın — canlı anahtarlar photta_live_ ile başlar. Bunu, rehberin geri kalanının shell'inizden okuyabilmesi için export edin.

    # Sign up at ai.photta.app, open the Developers dashboard,
    # click "Generate API key" and copy it into your env.
    export PHOTTA_API_KEY="photta_live_xxxxx"
    export PHOTTA_BASE_URL="https://ai.photta.app/api/v1"
  2. 02

    Adım 2

    İlk denemenizi POST edin

    Bir ürün görseli URL'si, bir manken ID'si ve bir poz ID'si ile /api/v1/tryon/apparel adresini çağırın. API anında 202 Accepted yanıtı verir ve data.id içinde bir generation ID döndürür.

    curl -X POST "$PHOTTA_BASE_URL/tryon/apparel" \
      -H "Authorization: Bearer $PHOTTA_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "product_type": "dress",
        "product_images": ["https://example.com/dress.jpg"],
        "mannequin_id": "mnq_athena_ts",
        "pose_id": "pose_standing_front",
        "resolution": "2K",
        "aspect_ratio": "3:4"
      }'
    # Response: 202 Accepted + data.id (generation ID)
  3. 03

    Adım 3

    Tamamlanana kadar poll edin

    Her 3 saniyede bir GET /api/v1/tryon/apparel/:id yapın. Tipik tamamlanma süresi 1.5–4 dakikadır. Hatalı bir işin script'inizi sonsuza kadar askıda bırakmaması için deneme sayısına bir üst sınır koyun.

    # Loop every 3 seconds until status flips to "completed".
    # Typical completion: 1.5–4 minutes. Max 120 attempts = 6 min.
    for i in $(seq 1 120); do
      RESULT=$(curl -s "$PHOTTA_BASE_URL/tryon/apparel/$ID" \
        -H "Authorization: Bearer $PHOTTA_API_KEY")
      STATUS=$(echo "$RESULT" | jq -r '.data.status')
      [ "$STATUS" = "completed" ] && break
      [ "$STATUS" = "failed" ] && echo "Job failed" && exit 1
      sleep 3
    done
  4. 04

    Adım 4

    Çıktıyı kalıcı hale getirin

    Durum completed olduğunda, data.output_url işlenmiş görseli tutar. Byte'ları kendi depolama alanınıza indirin; böylece ürününüz render işlemi için Photta'nın CDN'ine bağımlı olmaz.

    # Pull the final URL out of the response and save the bytes.
    OUTPUT_URL=$(echo "$RESULT" | jq -r '.data.output_url')
    curl -sO "$OUTPUT_URL"
    echo "Saved $(basename "$OUTPUT_URL")"
  5. 05

    Adım 5

    Hata modlarını dürüstçe yönetin

    HTTP durum koduna göre dallanın: Yetersiz kredi için 402, rate limit'ler için 429 (Retry-After'a uyun), geçici sunucu hataları için 5xx. Her hata gövdesi, aksiyon alabileceğiniz makine tarafından okunabilir bir error.code taşır.

    # Surface the common failure modes honestly.
    case "$STATUS_CODE" in
      402) echo "Out of credits — top up at ai.photta.app" ;;
      429) echo "Rate limited — honour Retry-After header" ;;
      4??) echo "Client error: $(echo "$BODY" | jq '.error.message')" ;;
      5??) echo "Server error — retry with backoff" ;;
    esac

Diğer geliştiricilerin sorduğu sorular

Başlarken sorulan sorular

Hızlı başlangıç ne kadar sürer?+

Kayıt + anahtar oluşturma + ilk cURL için beş dakika. Üretimin kendisi 1.5 ile 4 dakika sürer; yani ilk model üzerindeki görselinizi görmeden önce toplamda on dakikalık bir süre planlayın.

Denemek için kredi kartına ihtiyacım var mı?+

Yeni hesaplar, ödeme yapmadan önce harcayabileceğiniz deneme kredileriyle gelir. Üretime geçmeye hazır olduğunuzda, daha yüksek aylık kredi bakiyesi ve daha hızlı rate limit'ler için bir plana abone olun.

İlk önce hangi endpoint'i denemeliyim?+

Giyim deneme (/api/v1/tryon/apparel) — en yaygın kullanılanıdır, dokümantasyonu en eksiksiz olanıdır ve diğer her Photta endpoint'inin yeniden kullandığı asenkron + polling desenini kapsar. Orada rahat ettiğinizde, takı ve ghost mannequin de aynı şekilde çalışır.

Tarayıcıdan çalıştırabilir miyim?+

Hayır. API anahtarınız sunucu tarafında kalmalıdır — onu bir tarayıcıya göndermek, her ziyaretçiye sızdırmak demektir. Çağrıları kendi backend'inizdeki ince bir proxy (Next.js route handler, Express, Flask, Lambda) üzerinden yönlendirin ve tarayıcının bunun yerine sizin proxy'nizle konuşmasını sağlayın.

Hızlı Başlangıç

İlk görselinize beş dakika uzaktasınız

Photta API Hızlı Başlangıç — 5 Dakikada İlk Görsel | Photta