Dummy files for tests, upload limits, and those „I just need something, like 5 MB“ moments. Forms or API—no signup.

100% free
DE EN

API Documentation

All endpoints are called via GET and return the requested file or stream. The base URL is this application’s domain. Invalid parameters result in a JSON response with HTTP status 422.

File size

GET /api/file/{size}

Generates a binary file of the specified size. The size is given in human-readable form (e.g. 10KB, 5MB, 1GB). Content is either random bytes or zero bytes depending on the mode. The type parameter selects the file format.

Path parameter

  • size — Human-readable size with unit, e.g. 1KB, 100MB, 2GB. Maximum size 5GB.

Query parameters

  • type — File type (zip, bin, jpg, png, webp, pdf). Default: bin
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example 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

Image

GET /api/image/{width}x{height}

Generates a placeholder image with the given width and height in pixels. You can optionally set format, background colour (hex with or without #), and overlay text. The image includes dimensions and domain watermark by default.

Path parameters

  • width — Width in pixels (1–8192)
  • height — Height in pixels (1–8192)

Query parameters

  • format — png, jpg, webp, gif, svg. Default: png
  • bg — Background colour as hex (e.g. f0f0f0 or #eeeeee)
  • text — Optional text displayed on the image
  • embed — 1 = display image inline (e.g. for <img> embedding). Default: download.
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Inline images

To embed images in web pages use ?embed=1. Without the parameter, the file is offered for download like other formats.

Example:

<img src="https://dummyfiles.dev/api/image/800x600?embed=1" alt="Placeholder" />

Example 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}

Generates text with the requested character count. Content is pseudo-Latin (lorem-ipsum style). The format parameter can request plain text (txt), RTF, or a PDF with this text (page count determined by content, automatic pagination).

Path parameter

  • chars — Number of characters (1 to 10,000,000)

Query parameters

  • format — txt, rtf, pdf. Default: txt
  • text_type — Text type: lorem, technical, german, corporate, medical, legal, error, numbers, marketing, list (bullets).
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example 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}

Generates a JSON file with an array of objects. Each object contains Faker data (id, name, email, company, created_at, and optional fields).

Path parameter

  • count — Number of records/objects (1 to 100,000)

Query parameters

  • keys — Keys per object (1–20). Default: 5
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example 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}

Generates a CSV file with the given number of rows. Columns are filled with Faker data (names, email, company, date, numbers, words). The first column is always id (row index).

Path parameter

  • rows — Number of rows (1 to 100,000)

Query parameters

  • columns — Number of columns (1–100). Default: 5
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example requests

  • https://dummyfiles.dev/api/csv/100
  • https://dummyfiles.dev/api/csv/1000?columns=8&filename=export

PDF

GET /api/pdf/{pages}

Generates a PDF with the given number of placeholder pages. Each page has a heading with page number and sample text. For text-based PDF with variable page count use /api/text/{chars}?format=pdf.

Path parameter

  • pages — Number of pages (1–100)

Query parameters

  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example requests

  • https://dummyfiles.dev/api/pdf/5
  • https://dummyfiles.dev/api/pdf/1?filename=document

QR code

GET /api/qr?data={data}

Generates a QR code image for the given data (URL or text). Output as PNG or SVG.

Query parameters

  • data — Data to encode (URL or text). Max 1000 characters.
  • format — png, svg. Default: png
  • size — Image size in pixels (50–500). Default: 200.
  • margin — Quiet zone / margin in modules (0–10). Default: 2.
  • embed — 1 = inline. Default: download
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example 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

Returns the standard EICAR test file (68 bytes). Detected by many antivirus products. For AV or upload testing only.

The file contains only harmless text – no real virus. Antivirus vendors agreed to detect this exact string as a "test alarm". That way you can check whether your scanner or an upload filter reacts at all, without using real malware. Typical uses: test your antivirus, verify upload filters or email gateways.

Query parameters

  • ext — File extension: com, txt, exe, pdf, xls or doc. Default: exe.
  • filename — Optional. Download filename without extension (a-z, 0-9, _, -).

Example 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

Errors and limits

Invalid parameters or exceeded limits return JSON, e.g. {"error": "..."}, with an appropriate HTTP status (e.g. 422).

  • File: maximum size 5 GB.
  • Image: maximum dimensions 8192×8192 pixels.
  • Text: maximum 10,000,000 characters.
  • JSON: maximum 100,000 records, 1–20 keys per object.
  • CSV: maximum 100,000 rows, 1–100 columns.
  • PDF (placeholder pages): maximum 100 pages.
  • QR code: data max 1000 characters, size 50–500 px.
  • EICAR: fixed 68 bytes.

← Back to homepage

20 File formats
5GB Max file size
100% Free