Quickstart

Første Photta-billede på under fem minutter.

Én konto, én API-nøgle, fem shell-kommandoer. Trinene nedenfor matcher præcis det, den officielle Photta-dokumentation anbefaler — ingen wrappers, ingen SDK'er, ingen framework-antagelser.

Kort fortalt

Opret dig på ai.photta.app, klik på Generate API key, eksportér den som PHOTTA_API_KEY, lav en POST til /api/v1/tryon/apparel og polle det returnerede generations-ID hvert 3 sekund, indtil status skifter til completed — typisk inden for 1.5 til 4 minutter.

Sådan virker det

Fem kommandoer fra nul til første billede

Indsæt dem i en terminal i rækkefølge. Hver stump er selvstændig og bruger kun curl + jq.

  1. 01

    Trin 1

    Generer en API-nøgle

    Opret dig på ai.photta.app og åbn Developers-dashboardet. Klik på Generate API key — live-nøgler starter med photta_live_. Eksportér den, så resten af gennemgangen kan læse den fra din 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"
  2. 02

    Trin 2

    POST din første try-on

    Ram /api/v1/tryon/apparel med en produktbillede-URL, et mannequin-ID og et pose-ID. API'et svarer straks 202 Accepted og returnerer et generations-ID i 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)
  3. 03

    Trin 3

    Polle indtil det er færdigt

    GET /api/v1/tryon/apparel/:id hvert 3 sekund. Typisk færdiggørelse er 1.5–4 minutter. Sæt en øvre grænse for forsøg, så et fastlåst job ikke hænger dit script for evigt.

    # 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

    Trin 4

    Persistér outputtet

    Når status skifter til completed, indeholder data.output_url det renderede billede. Download bytes til din egen lagring, så dit produkt ikke afhænger af Phottas CDN til rendering.

    # 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

    Trin 5

    Håndter fejlscenarier ærligt

    Forgren på HTTP-statuskoden: 402 for manglende kreditter, 429 for rate limits (respekter Retry-After), 5xx for midlertidige serverfejl. Enhver fejl-body indeholder en maskinlæsbar error.code, du kan handle på.

    # 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

Spørgsmål fra andre udviklere

Spørgsmål om at komme i gang

Hvor lang tid tager quickstart?+

Fem minutter til oprettelse + nøglegenerering + første cURL. Selve genereringen tager 1.5 til 4 minutter, så regn med ti minutter i realtid, før du ser dit første on-model billede.

Har jeg brug for et kreditkort for at prøve det?+

Nye konti leveres med test-kreditter, du kan bruge før betaling. Når du er klar til produktion, kan du abonnere på en pakke for at få en højere månedlig kreditsaldo og hurtigere rate limits.

Hvilket endpoint skal jeg prøve først?+

Try-on til tøj (/api/v1/tryon/apparel) — det er det mest brugte, dokumentationen er mest komplet, og det dækker det async + polling-mønster, som alle andre Photta-endpoints genbruger. Når du er fortrolig med det, fungerer smykker og ghost mannequin på samme måde.

Kan jeg køre det fra browseren?+

Nej. Din API-nøgle skal forblive på serversiden — hvis du sender den til en browser, lækker den til alle besøgende. Send kald gennem en tynd proxy på din egen backend (Next.js route handler, Express, Flask, Lambda) og lad browseren tale med din proxy i stedet.

Quickstart

Du er fem minutter fra dit første billede

Photta API Quickstart — Første billede på 5 minutter | Photta