Getting Started

Make your first API request in under 5 minutes.

1Get Your API Key

First, you'll need an API key to authenticate your requests. You can create one from your dashboard.

API Key Format

API keys start with pk_ followed by 32 hexadecimal characters. Example: pk_1a2b3c4d5e6f7890abcdef1234567890

2Make Your First Request

Let's merge two PDF files together. Replace YOUR_API_KEY with your actual API key.

cURL
curl -X POST "https://api.morphopdf.com/v1/pdf/merge?format=binary" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "files=@document1.pdf" \
  -F "files=@document2.pdf" \
  --output merged.pdf

3Understand the Response

With format=binary, you'll receive the merged PDF file directly. Without it, you'll get a JSON response:

Response
{
  "success": true,
  "message": "File processed successfully",
  "data": {
    "fileName": "document1 (merge-pdf).pdf",
    "downloadUrl": "/api/download/abc123...",
    "outputSize": 265366,
    "fileCount": 2
  }
}

Code Examples

Here are examples in popular programming languages:

Python

python
import requests

url = "https://api.morphopdf.com/v1/pdf/merge?format=binary"
headers = {"Authorization": "Bearer YOUR_API_KEY"}

files = [
    ("files", ("doc1.pdf", open("doc1.pdf", "rb"), "application/pdf")),
    ("files", ("doc2.pdf", open("doc2.pdf", "rb"), "application/pdf")),
]

response = requests.post(url, headers=headers, files=files)

with open("merged.pdf", "wb") as f:
    f.write(response.content)

print("Merged PDF saved!")

JavaScript (Node.js)

javascript
const FormData = require('form-data');
const fs = require('fs');
const fetch = require('node-fetch');

const form = new FormData();
form.append('files', fs.createReadStream('doc1.pdf'));
form.append('files', fs.createReadStream('doc2.pdf'));

const response = await fetch('https://api.morphopdf.com/v1/pdf/merge?format=binary', {
  method: 'POST',
  headers: { 'Authorization': 'Bearer YOUR_API_KEY' },
  body: form,
});

const buffer = await response.buffer();
fs.writeFileSync('merged.pdf', buffer);

console.log('Merged PDF saved!');

Next Steps