Developer Dashboard

EmuPDF API

Developer Portal


PDF Tools

Merge PDFs
Split PDF
Unlock PDF
Compress PDF

Account

Merge PDFs API

Combine multiple PDF files into a single document instantly.

Endpoint

POST /api/v1/merge/

Authentication

X-API-Key: YOUR_API_KEY

Request

Send PDF files using multipart/form-data.

files: PDF file(s)

Python Example


    import requests

    url = "https://emupdf.com/api/v1/merge/"

    files = [
        ("files", open("file1.pdf", "rb")),
        ("files", open("file2.pdf", "rb")),
    ]

    headers = {
        "X-API-Key": "YOUR_API_KEY"
    }

    response = requests.post(
        url,
        headers=headers,
        files=files
    )
    content_type = response.headers.get("Content-Type","")
    print("Status:",response.status_code)
    print("Content-Type:",content_type)
    

JavaScript Example (Browser)


  async function mergePDFs(files) {
        const formData = new FormData();
        for (let i = 0; i < files.length; i++) {
            formData.append("files", files[i]);
        }

        const response = await fetch("https://emupdf.com/api/v1/merge/", {
            method: "POST",
            headers: {
                "X-API-Key": "YOUR_API_KEY"
            },
            body: formData
        });

        if (!response.ok) {
            const error = await response.text();
            console.error("Error:", error);
            return;
        }

        // Convert response to blob (PDF file)
        const blob = await response.blob();

        // Create download link
        const url = window.URL.createObjectURL(blob);

        const a = document.createElement("a");
        a.href = url;
        a.download = "merged.pdf";
        document.body.appendChild(a);
        a.click();

        a.remove();
        window.URL.revokeObjectURL(url);
   }
   

Response

  Status: 200
  Content-Type: application/pdf
  

Errors

  401 → Invalid API Key
  400 → Invalid file upload
  500 → Server error