API-Dokumentation
Alle Endpoints werden per GET aufgerufen und liefern die angeforderte Datei bzw. den Stream. Die Basis-URL ist die Domain dieser Anwendung. Bei ungültigen Parametern antwortet die API mit JSON und HTTP-Status 422.
Dateigröße
GET /api/file/{size}
Erzeugt eine Binärdatei in der angegebenen Größe. Die Größe wird als lesbare Angabe übergeben (z. B. 10KB, 5MB, 1GB). Der Inhalt besteht je nach Modus aus Zufallsbytes oder Null-Bytes. Über den Parameter type kann das Dateiformat (und damit der Dateityp) gewählt werden.
Pfadparameter
- size — Lesbare Größe mit Einheit: z. B. 1KB, 100MB, 2GB. Maximale Größe 5GB.
Query-Parameter
- type — Dateityp (zip, bin, jpg, png, webp, pdf). Standard: bin
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/file/1MB
- https://dummyfiles.dev/api/file/100MB?type=zip
- https://dummyfiles.dev/api/file/50MB?type=bin&filename=myfile
Bild
GET /api/image/{width}x{height}
Erzeugt ein Platzhalterbild in der angegebenen Breite und Höhe (in Pixeln). Optional können Format, Hintergrundfarbe (Hex mit oder ohne #) und Overlay-Text gesetzt werden. Das Bild enthält standardmäßig die Dimensionen und die Domain als Wasserzeichen.
Pfadparameter
- width — Breite in Pixeln (1–8192)
- height — Höhe in Pixeln (1–8192)
Query-Parameter
- format — png, jpg, webp, gif, svg. Standard: png
- bg — Hintergrundfarbe als Hex (z. B. f0f0f0 oder #eeeeee)
- text — Optionaler Text, der auf dem Bild angezeigt wird
- embed — 1 = Bild inline anzeigen (z. B. für <img>-Einbindung). Standard: Download.
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Inline-Bilder
Bilder können in Webseiten eingebunden werden mit ?embed=1. Ohne Parameter wird die Datei wie bei den anderen Formaten zum Download angeboten.
Beispiel:
<img src="https://dummyfiles.dev/api/image/800x600?embed=1" alt="Platzhalter" />
Beispiel-Requests
- https://dummyfiles.dev/api/image/1920x1080
- https://dummyfiles.dev/api/image/800x600?format=jpg&filename=myimage
- https://dummyfiles.dev/api/image/400x400?bg=eeeeee&text=Test
- https://dummyfiles.dev/api/image/400x400?embed=1
Text
GET /api/text/{chars}
Erzeugt Text mit der gewünschten Zeichenanzahl. Der Inhalt ist Pseudo-Latein (lorem-ipsum-ähnlich). Über format können Sie reines Text (txt), RTF oder ein PDF mit diesem Text (seitenunabhängig, automatischer Umbruch) anfordern.
Pfadparameter
- chars — Anzahl Zeichen (1 bis 10.000.000)
Query-Parameter
- format — txt, rtf, pdf. Standard: txt
- text_type — Textart: lorem, technical, german, corporate, medical, legal, error, numbers, marketing, list (Aufzählung).
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/text/10000
- https://dummyfiles.dev/api/text/5000?format=txt&text_type=technical
- https://dummyfiles.dev/api/text/5000?format=rtf&text_type=technical&filename=report
- https://dummyfiles.dev/api/text/20000?format=pdf
JSON
GET /api/json/{count}
Erzeugt eine JSON-Datei mit einem Array von Objekten. Jedes Objekt enthält Faker-Daten (id, name, email, company, created_at sowie optionale Felder).
Pfadparameter
- count — Anzahl Datensätze/Objekte (1 bis 100.000)
Query-Parameter
- keys — Felder pro Objekt (1–20). Standard: 5
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/json/100
- https://dummyfiles.dev/api/json/500?keys=8
- https://dummyfiles.dev/api/json/1000?keys=5&filename=export
CSV
GET /api/csv/{rows}
Erzeugt eine CSV-Datei mit der angegebenen Zeilenanzahl. Die Spalten werden mit Faker-Daten (Namen, E-Mail, Firma, Datum, Zahlen, Wörter) gefüllt. Die erste Spalte ist immer id (Zeilenindex).
Pfadparameter
- rows — Anzahl Zeilen (1 bis 100.000)
Query-Parameter
- columns — Anzahl Spalten (1–100). Standard: 5
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/csv/100
- https://dummyfiles.dev/api/csv/1000?columns=8&filename=export
GET /api/pdf/{pages}
Erzeugt ein PDF mit der angegebenen Anzahl Platzhalter-Seiten. Jede Seite enthält eine Überschrift mit Seitennummer und kurzen Beispieltext. Für textbasiertes PDF mit variablem Seitenumfang nutzen Sie /api/text/{chars}?format=pdf.
Pfadparameter
- pages — Anzahl Seiten (1–100)
Query-Parameter
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/pdf/5
- https://dummyfiles.dev/api/pdf/1?filename=document
QR-Code
GET /api/qr?data={data}
Erzeugt ein QR-Code-Bild für die angegebenen Daten (URL oder Text). Ausgabe als PNG oder SVG.
Query-Parameter
- data — Zu encodierende Daten (URL oder Text). Max. 1000 Zeichen.
- format — png, svg. Standard: png
- size — Bildgröße in Pixeln (50–500). Standard: 200.
- margin — Ruhige Zone / Rand in Modulen (0–10). Standard: 2.
- embed — 1 = inline. Standard: download
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/qr?data=https%3A%2F%2Fdummyfiles.dev
- https://dummyfiles.dev/api/qr?data=Hello&format=svg&size=300&filename=myqr
EICAR
GET /api/eicar
Liefert die Standard EICAR-Testdatei (68 Bytes). Wird von vielen Virenscannern erkannt. Nur für AV- oder Upload-Tests.
Die Datei enthält nur harmlosen Text – keinen echten Virus. Virenscanner-Hersteller haben sich darauf geeinigt, genau diesen Text als „Test-Alarm“ zu melden. So kannst du prüfen, ob dein Scanner oder ein Upload-Filter überhaupt reagiert, ohne echte Schadsoftware zu verwenden. Typische Anwendungen: Virenscanner testen, Upload-Filter oder E-Mail-Gateways prüfen.
Query-Parameter
- ext — Dateiendung: com, txt, exe, pdf, xls oder doc. Standard: exe.
- filename — Optional. Dateiname ohne Endung (a-z, 0-9, _, -).
Beispiel-Requests
- https://dummyfiles.dev/api/eicar
- https://dummyfiles.dev/api/eicar?ext=txt
- https://dummyfiles.dev/api/eicar?ext=pdf
- https://dummyfiles.dev/api/eicar?filename=av-test
- https://dummyfiles.dev/api/eicar?ext=doc&filename=av-test
Fehler und Limits
Bei ungültigen Parametern oder Überschreitung der Limits antwortet die API mit JSON, z. B. {"error": "..."}, und einem passenden HTTP-Status (z. B. 422).
- Datei: maximale Größe 5 GB.
- Bild: maximale Abmessungen 8192×8192 Pixel.
- Text: maximal 10.000.000 Zeichen.
- JSON: maximal 100.000 Datensätze, 1–20 Felder pro Objekt.
- CSV: maximal 100.000 Zeilen, 1–100 Spalten.
- PDF (Seiten-Platzhalter): maximal 100 Seiten.
- QR-Code: Daten max. 1000 Zeichen, Größe 50–500 px.
- EICAR: fest 68 Bytes.