# Dateien und Bilder hochladen

> So lädst du über die Tentary API Dateien für deine Kund:innen und Bilder für Verkaufsseiten, Kurse, E-Mails und Landingpages hoch.

Source: https://tentary.com/de/help/api/file-uploads/
Last updated: 2026-10-27

---

Dateien und Bilder lädst du in drei Schritten hoch: Upload anlegen, Bytes per PUT senden, Upload abschließen.

## Dateien oder Bilder?

- **Dateien** bekommen deine Kund:innen: zum Beispiel ein PDF, ein ZIP, ein Video oder eine Audiodatei im Inhalt eines Produkts oder einer Lektion. Dafür nutzt du [`POST /v1/files`](https://tentary.com/de/help/api/upload-file/).
- **Bilder** erscheinen auf einer Verkaufsseite, in einem Kurs, einem Modul, einer E-Mail oder einer Landingpage. Dafür nutzt du [`POST /v1/images`](https://tentary.com/de/help/api/upload-image/). Liegt ein Bild schon unter einer öffentlichen URL, brauchst du keinen Upload: Trag die URL direkt ein.

## Eine Datei hochladen

1. Leg den Upload an:

   ```bash
   curl -X POST "https://api.tentary.com/v1/files" \
     -H "Authorization: Bearer $TENTARY_API_KEY" \
     -H "Content-Type: application/json" \
     -d '{"file_name": "Workbook.pdf", "size_bytes": 123456}'
   ```

   Die Antwort enthält eine `file_id` und eine `upload_url`. Die `upload_url` gilt 20 Minuten.

2. Schick die Bytes per HTTP PUT an die `upload_url`, ohne zusätzliche Header:

   ```bash
   curl -T Workbook.pdf "<upload_url>"
   ```

3. Schließ den Upload ab mit [`POST /v1/files/{file_id}/finish`](https://tentary.com/de/help/api/finish-upload/).

Danach nutzt du die `file_id` in einem Inhaltsblock eines Produkts oder einer Lektion, zum Beispiel `{"type": "file", "file_id": 601}`.

Auf diesem Weg gehen Dateien bis 5 GB.

### Kurzer Weg für kleine Dateien

Eine öffentliche Datei bis 10 MB geht auch in einem Schritt. Schick dafür statt `file_name` und `size_bytes` nur die `url`:

```bash
curl -X POST "https://api.tentary.com/v1/files" \
  -H "Authorization: Bearer $TENTARY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://..."}'
```

Tentary kopiert die Datei sofort. Ein Abschluss ist dann nicht nötig.

## Ein Bild hochladen

1. Leg den Upload an mit [`POST /v1/images`](https://tentary.com/de/help/api/upload-image/), mit `file_name` und `size_bytes`. Erlaubt sind PNG, JPG, GIF und WebP bis 10 MB.
2. Schick die Bytes per HTTP PUT an die `upload_url`.
3. Schließ den Upload ab mit [`POST /v1/images/{upload_id}/finish`](https://tentary.com/de/help/api/finish-image/).

Die Antwort enthält die `image_url`. Du nutzt sie zum Beispiel in `images` eines Produkts, als `cover_image_url` eines Kurses oder Moduls oder als `img src` im HTML einer E-Mail oder Landingpage.

> **Hinweis:** Ein Bildblock im Inhalt eines Produkts oder einer Lektion braucht eine `file_id` aus `POST /v1/files`, keine `image_url`.
