Skip to main content
PPDF123

Attach Files Inside a PDF

Add Attachments embeds one or more files inside a PDF as attachments that viewers list in their attachments panel. It only adds files, and does not convert the PDF to PDF/A-3.

Drag and drop files here, or click to choose

Accepts PDF · up to 500.0 MB per file · up to 20 files at once

You can also paste a file with Ctrl/Cmd+V, or from the clipboard menu.

Add Attachments embeds each `attachments` file into `/EmbeddedFiles` as an EmbeddedFile stream plus Filespec. Sending no attachments is rejected with an error. `convertToPdfA3b` is ignored; nothing is converted to PDF/A-3b.

This is not concatenating PDFs (Merge) and not overlaying pages. Recipients need a viewer that shows attachments.

Password-protected files are unlocked for you on this page once you enter the password; API callers run Unlock first. Filenames are stored on the Filespec `/F` and `/UF`.

There is no download of a PDF/A-3b invoice package from this checkbox.

Features

  • Embed files in the PDF EmbeddedFiles name tree
  • `convertToPdfA3b` unused
  • At least one attachment is required
  • Anonymous API at /api/v1/misc/add-attachments

When to use this tool

  • Clip a spreadsheet to a PDF cover letter
  • Carry source files inside a PDF for a reviewer who uses Acrobat
  • Skip the PDF/A-3 checkbox

How do I attach a file to a PDF?

  1. Upload a PDF and one or more files to embed.
  2. Leave convertToPdfA3b off; it does not convert.
  3. Click Process and download the PDF.
  4. Open the attachments panel in a desktop viewer.

Limits and edge cases

  • Not PDF/A-3b
  • Not Merge
  • Viewers without an attachments pane hide the files
  • Upload limit on this website: 500 MB per file, sent in chunks above about 95 MB. A single direct API request body is capped at 100 MB.

Examples

  • Attaching notes.txt adds an EmbeddedFiles entry named notes.txt
  • Toggling convertToPdfA3b still writes a normal PDF

Privacy for this tool

Files are uploaded over HTTPS, processed in memory or a short-lived temporary directory on our servers, and deleted when your result is ready. We do not keep copies for later browsing, training, or advertising profiles. See the Privacy Policy for retention details and AdSense cookie disclosures.

Frequently asked questions

Did convertToPdfA3b make PDF/A-3?
No. The flag is ignored. Use PDF to PDF/A if you wanted Ghostscript PDFA=1/2, knowing that is not part 3.
Are attached PDFs merged as pages?
No. They sit in EmbeddedFiles. Merge concatenates pages.
What if I forget the attachment files?
The request fails with a bad-request error: at least one attachment upload is required.
Is the embedded stream compressed specially?
It is stored as application/octet-stream with a Size param. Do not assume PDF/A-3 associated files.

Last updated:

Call this from code

Every tool on this site is a plain REST endpoint - no account or API key needed for anonymous use. Built for AI agents and developers as much as for browsers.

curl -X POST "https://pdf123.xyz/api/v1/misc/add-attachments" \
  -F "[email protected]" \
  -F "attachments=@attachments" \
  -o output.pdf

Also available as an MCP tool for agent clients that speak Model Context Protocol (JSON-RPC 2.0 over POST /mcp). Full API reference

Use it from an AI agent

Skill

Claude Code, Codex, Cursor and other AI agents can run Add Attachments for you with this skill: /skills/pdf123-add-attachments.md

All agent skills

Files are used only for this processing job and deleted automatically afterward.