Dokumentation
EinführungSchnellstart

Schnellstart

Versieh dein erstes Bild mit einem Wasserzeichen — von null bis zum herunterladbaren Ergebnis in etwa fünf Minuten.

Diese Anleitung fügt einem Bild mit einem einzigen synchronen Aufruf ein Wasserzeichen hinzu. Du sendest eine Quell-URL, Fotovid verarbeitet sie, und du erhältst das Ergebnis in derselben Antwort — ohne Polling, ohne Webhooks.

API-Schlüssel erstellen

Erstelle einen Schlüssel im Fotovid-Dashboard unter Account → API Keys. Der vollständige Schlüssel wird nur einmal bei der Erstellung angezeigt, in der Form p6_<key_id>:<secret> — kopiere ihn jetzt und bewahre ihn sicher auf.

Details unter Authentifizierung.

Ersten Aufruf senden

Sende ein POST an /v1/image/watermark mit einer öffentlich erreichbaren source_url und deinen Wasserzeichen-params.

curl -X POST https://api.fotovid.co/v1/image/watermark \
  -H "Authorization: Bearer p6_<key_id>:<secret>" \
  -H "Content-Type: application/json" \
  -d '{
    "source_url": "https://cdn.example.com/photo.jpg",
    "params": { "watermark_type": "text", "text": "Fotovid.co", "position": "bottom-right" }
  }'
const res = await fetch("https://api.fotovid.co/v1/image/watermark", {
  method: "POST",
  headers: {
    Authorization: "Bearer p6_<key_id>:<secret>",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    source_url: "https://cdn.example.com/photo.jpg",
    params: { watermark_type: "text", text: "Fotovid.co", position: "bottom-right" },
  }),
});

const result = await res.json();
console.log(result.url);
import requests

res = requests.post(
    "https://api.fotovid.co/v1/image/watermark",
    headers={"Authorization": "Bearer p6_<key_id>:<secret>"},
    json={
        "source_url": "https://cdn.example.com/photo.jpg",
        "params": {"watermark_type": "text", "text": "Fotovid.co", "position": "bottom-right"},
    },
)
print(res.json()["url"])

Ergebnis lesen

Ein synchroner Aufruf liefert 200 OK mit einem flachen Body. Es gibt kein status-Feld — eine 200-Antwort ist der Erfolg.

{
  "id": "01JABCDEFGHJKMNPQRSTVWXYZ",
  "type": "image.watermark",
  "url": "https://tempfile.fotovid.co/i/<hex>.webp",
  "expires_at": "2026-06-10T12:00:00Z"
}

url ist ein zeitlich begrenzter Download-Link zu deinem Bild. Lade es vor expires_at herunter (Ergebnisse werden 7 Tage aufbewahrt).

Die Ausgabe ist standardmäßig WebP. Überschreibe sie mit params.output_format (webp | jpeg | png) und params.quality (1–100). Die vollständige Parameterliste findest du im Wasserzeichen-Leitfaden.

Größere Dateien

Synchrone Aufrufe sind für kleine, schnelle Aufgaben gedacht (etwa 10 Sekunden Budget, Quellbilder bis 128 MiB). Für große oder lange Eingaben — oder wenn ein synchroner Aufruf 413, 409 oder 504 liefert — nutze die asynchrone Task-API: POST /v1/tasks mit einem type im Body, dann per Polling von GET /v1/tasks/{id} oder per Webhook. Mehr dazu unter Synchron vs. asynchron.