# File uploads

Part of the sendm8 docs: https://sendm8.com/docs#uploads. Index for AI assistants: https://sendm8.com/llms.txt

Add `enctype="multipart/form-data"` to the form and use normal file inputs. Without the `enctype`, browsers send only the file name, not the file.

`apply.html`

```html
<form action="https://sendm8.com/f/k3x9q2m7ab" method="POST" enctype="multipart/form-data">
  <label>Your email <input name="email" type="email" required></label>
  <label>CV (PDF) <input name="cv" type="file" accept=".pdf"></label>
  <label>Screenshots <input name="screenshots" type="file" accept="image/*" multiple></label>
  <button>Send</button>
</form>
```

- **Per file**: 5 MB
- **Per submission**: 10 MB
- **Too big**: 413

If any file is over the limit, the whole submission is refused with a `413`, so nothing arrives half-finished. It’s worth putting the limit next to the input, and checking `file.size` in the browser if you’re using AJAX.

Files appear on the submission in your dashboard. Notification emails and channel messages include a link to download them rather than the files themselves, so nobody’s inbox fills up with attachments.
