# Files

> Add a PDF or Word file, up to 25 MB.

Add a PDF or a Word `.docx` file from a path, bytes or an upload.

```python
mem.memories.add_file("Pricing.pdf")                                     # a path, bytes, or a file opened "rb"
mem.memories.add_file(upload.read(), filename="Pricing.pdf", title="Pricing, October")
```

```ts
import { readFile } from "node:fs/promises";

await mem.memories.addFile(await readFile("Pricing.pdf"), { filename: "Pricing.pdf" });
await mem.memories.addFile(file, { title: "Pricing, October" });          // a File from a form keeps its name
```

```bash
curl https://api.geniffy.com/v1/memories/file \
  -H "Authorization: Bearer $GENIFFY_API_KEY" \
  -H "X-Geniffy-Space: customer_1042" \
  -F file=@Pricing.pdf
```

PDF or Word `.docx`, up to 25 MB. A scan with no text in it is refused rather than guessed at: the call
fails with `unreadable`, and the source it leaves says why, so your app can show the reason.

Source: https://docs.geniffy.com/add-memories/files
