error.page docs

Attachments & screenshots

Attach screenshots, logs and diagnostic files to an error report, within your plan's size limits.

Attachments & screenshots

Attach a screenshot and diagnostic files — logs, HARs, stack dumps — to an error report so you can see what the user saw and skip the back-and-forth. Attachments appear on the incident alongside the stack trace and metadata.

Attachments are a paid feature. On the Free plan reports are text-only.

Plan limits

The limit is the total size of a single report — text plus every file:

Plan Attachments Max per report
Free — (text only) 3 KB
Pro 1 MB
Business 2 MB
Enterprise Unlimited

A report that exceeds the limit, or an attachment on a text-only plan, is rejected with a clear error — your other reports are unaffected.

How to attach files

Send the report to the ingest API as a multipart/form-data request (rather than JSON). Use image for the screenshot preview and attachments[] for everything else:

curl -X POST https://error.page/api/v2/ingest \
  -H "X-Project-Key: $EP_PROJECT_KEY" \
  -F "error_type=server_error" \
  -F "message=Checkout failed at payment step" \
  -F "image=@screenshot.png" \
  -F "attachments[]=@app.log" \
  -F "attachments[]=@request.har"

The image becomes the screenshot thumbnail on the incident; each attachments[] entry is listed as a download.

Allowed file types

To keep stored files safe to serve, only non-executable diagnostic formats are accepted:

  • Text & data: log, txt, json, csv, xml, yaml, yml, md, ini, conf, trace, stacktrace, har
  • Images: png, jpg, jpeg, gif, webp (the image field is raster only — no SVG)
  • Documents: pdf
  • Archives & dumps: zip, gz, tgz, tar, dmp, core, hprof

Anything executable or scriptable is refused, so a stored file can never be served or run as active content.

The browser SDK reports over JSON and does not upload files itself. Attachments come from server-side reporting or your own tooling posting a multipart request as shown above.