Quickstart
Erstes Photta-Bild in unter fünf Minuten.
Ein Account, ein API-Key, fünf Shell-Befehle. Die folgenden Schritte entsprechen exakt den offiziellen Empfehlungen — ohne Wrapper, ohne SDKs, ohne Framework-Vorgaben.
Kurz zusammengefasst
Registrieren Sie sich auf ai.photta.app, klicken Sie auf API-Key generieren, exportieren Sie ihn als PHOTTA_API_KEY, POST an /api/v1/tryon/apparel und pollen Sie die ID alle 3 Sekunden bis zum Abschluss — typischerweise in 1.5 bis 4 Minuten.
Funktionsweise
Fünf Befehle von Null zum ersten Bild
Fügen Sie diese nacheinander in Ihr Terminal ein. Jedes Snippet ist autark und nutzt nur curl + jq.
- 01
Schritt 1
API-Key generieren
Registrieren Sie sich auf ai.photta.app und öffnen Sie das Developer-Dashboard. Klicken Sie auf Generate API key — Live-Keys beginnen mit photta_live_. Exportieren Sie ihn für die Shell.
# 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" - 02
Schritt 2
Ersten Try-On POSTen
Rufen Sie /api/v1/tryon/apparel mit einer Produkt-URL, Mannequin-ID und Pose-ID auf. Die API antwortet sofort mit 202 Accepted und liefert eine ID in data.id.
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) - 03
Schritt 3
Pollen bis zum Abschluss
GET /api/v1/tryon/apparel/:id alle 3 Sekunden. Übliche Dauer ist 1.5–4 Minuten. Begrenzen Sie die Versuche, um Endlosschleifen zu vermeiden.
# 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 - 04
Schritt 4
Ergebnis persistieren
Sobald der Status completed ist, enthält data.output_url das fertige Bild. Laden Sie es in Ihren Speicher, um nicht vom Photta-CDN abhängig zu sein.
# 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")" - 05
Schritt 5
Fehlermodi ehrlich behandeln
Prüfen Sie den HTTP-Status: 402 für Credits, 429 für Rate-Limits (Retry-After beachten), 5xx für Serverfehler. Jeder Fehlerbody enthält einen maschinenlesbaren error.code.
# 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
Fragen anderer Entwickler
Fragen zum Einstieg
Wie lange dauert der Quickstart?+
Fünf Minuten für Signup + Key + cURL. Die Generierung selbst dauert 1.5 bis 4 Minuten. Rechnen Sie also mit insgesamt zehn Minuten bis zum ersten On-Model-Bild.
Benötige ich eine Kreditkarte zum Testen?+
Neue Accounts erhalten Trial-Credits. Wenn Sie produktiv gehen möchten, abonnieren Sie einen Plan für mehr Credits und höhere Rate-Limits.
Welchen Endpunkt sollte ich zuerst testen?+
Apparel Try-On (/api/v1/tryon/apparel) — er ist am weitesten verbreitet, am besten dokumentiert und nutzt das Async-Muster, das alle anderen Endpunkte teilen. Danach funktionieren Schmuck und Ghost-Mannequin identisch.
Kann ich die API aus dem Browser aufrufen?+
Nein. Ihr API-Key muss serverseitig bleiben — im Browser wäre er für jeden Besucher sichtbar. Routen Sie Aufrufe über einen Proxy in Ihrem Backend (Next.js Route Handler, Express, Lambda) und lassen Sie den Browser mit Ihrem Proxy kommunizieren.