EML to PDF Node

Convert EML emails to PDF/A with headers, attachments, merge, page size, orientation, margins, and compression options.

Email Tools

EML to PDF Node.js Overview

The EML to PDF NodeJS package swiftly converts EML email files into PDF documents, offering a rapid solution to your email file conversion needs.

It includes options for adding email headers, adjusting page orientation and size, setting margins, and compressing files. The NodeJS package also supports converting email attachments and merging them with email bodies, creating PDF and PDF/A compliant documents.

This NodeJS package is useful for businesses needing to archive emails in a standardized and accessible format, and for legal firms requiring documented email evidence in a secure, non-editable format.

Lightning Fast Conversions

Process and convert files in seconds with our high-performance cloud infrastructure.

Accuracy Guaranteed

Our advanced algorithms ensure pixel-perfect and content-accurate file conversions.

Enterprise-Grade Security

ISO 27001, HIPAA, and GDPR compliant with encrypted file processing.

Global Infrastructure

Strategically located servers ensure low latency and high availability worldwide.

Developer Friendly

Comprehensive SDKs and clear documentation for quick and simple integration.

Time-Saving Automation

Automate repetitive document workflows and focus on what matters most.

Customizable Parameters

Fine-tune your automation with these powerful conversion options

File

File Supported formats: .eml .msg

File to be converted. Value can be URL or file content.

ConvertHeader

Bool Default: True

This property controls the inclusion of email header in the PDF conversion process. When set to true, the converter will incorporate the email's header information, such as From, To, Subject, Date, etc., into the generated PDF file. When TemplateFile is set, this parameter has no effect - the template decides which header fields appear.

TemplateFile

File Supported formats: .html .htm

Custom HTML page used to lay out the converted email. Value can be URL or file content. When not set, the built-in template is used (with or without the header table depending on ConvertHeader). When set, ConvertHeader has no effect - the template decides which header fields appear.

The template is plain HTML with the following placeholders:

  • {{subject}} - email subject
  • {{from}} - sender
  • {{to}} - recipients
  • {{cc}} - copied recipients
  • {{sent}} - sent date, formatted according to DateTimeFormat
  • {{emailContent}} - the email body, inserted where the placeholder is

Example:

<html>
<body>
  <h2>{{subject}}</h2>
  <p>From: {{from}} - Sent: {{sent}}</p>
  {{emailContent}}
</body>
</html>

The email body is rendered in its own isolated block, so the email's CSS does not affect your page and your CSS does not affect the email.

DateTimeFormat

String

Format of the Sent date shown in the email header, as a .NET custom date and time format string. When not set, the date is printed in US style with a 12-hour clock. Common values:

  • yyyy-MM-dd HH:mm - ISO order, 24-hour time
  • yyyy/MM/dd HH:mm - year first with slashes
  • dd.MM.yyyy HH:mm - day first with dots
  • dd-MM-yyyy HH:mm - day first with dashes
  • dd/MM/yyyy HH:mm - day first with slashes
  • MM/dd/yyyy h:mm tt - month first, 12-hour clock with AM/PM
  • yyyy-MM-dd - date only
  • yyyy-MM-dd HH:mm zzz - with the sender's UTC offset

Supported format specifiers: yyyy year, MM month number, MMM abbreviated month name, MMMM full month name, dd day, HH hours (24-hour clock), hh hours (12-hour clock), tt AM/PM designator, mm minutes, ss seconds, zzz UTC offset. Other characters are printed literally. Literal words must be enclosed in single quotes, for example d MMMM yyyy 'at' HH:mm. Month and day names are rendered in English.

ConvertAttachments

Bool Default: False

Convert email attachments.

IgnoreAttachmentErrors

Bool Default: False

When enabled, attachment conversion errors are ignored and the email is still converted. This parameter is only used when ConvertAttachments is enabled.

Merge

Bool Default: True

Merge email body with attachments during the conversion process. Only works when ConvertAttachments property enabled.

PageOrientation

Collection Default: portrait

PDF page orientation.

Values:   portrait landscape

PageSize

Collection Default: a4

PDF page size.

Values:   a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 b0 b1 b2 b3 b4 b5 letter legal ledger

MarginTop

Integer Default: 5

Set the page top margin in millimeters (mm).

Range:   0 .. 500

MarginRight

Integer Default: 5

Set the page right margin in millimeters (mm).

Range:   0 .. 500

MarginBottom

Integer Default: 5

Set the page bottom margin in millimeters (mm).

Range:   0 .. 500

MarginLeft

Integer Default: 5

Set the page left margin in millimeters (mm).

Range:   0 .. 500

Pdfa

Bool Default: False

Create PDF/A-1b compliant document.

StoreFile

Bool Default: False

When the StoreFile parameter is set to True, your converted file is written to ConvertAPI’s encrypted, temporary storage and made available via a time-limited secure download URL, valid for up to 3 hours. After this period, the file is permanently deleted.

When StoreFile is set to False, conversion happens entirely in-memory. The raw file bytes are streamed back in the API response without touching disk or external storage, ensuring maximum security and zero persistence so that only you can access the content.

Step-by-Step Guide

Easy EML to PDF integration using our simple npm package for Node.js

1. ConvertAPI Node.js library install

ConvertAPI provides a Node.js library that allows you to perform a EML to PDF conversion with just a few lines of code. First, install our convertapi library from npm:

NPM package >
npm install convertapi --save

2. Authenticate your Node.js library

You can obtain your API Token by signing up for a free account. Once you sign up, you'll receive 250 free conversions instantly! Grab your API Token from the account dashboard, and authenticate the ConvertAPI Node.js library like this:

// get your API Token here: https://www.convertapi.com/a/auth
var convertapi = require('convertapi')('api_token');

Or using ES modules:

import ConvertAPI from 'convertapi';
const convertapi = new ConvertAPI('api_token');

3. Convert EML to PDF using Node.js in no time!

Once you have your authentication in place, simply copy-paste this eml to pdf conversion code snippet into your Node.js project:

Integrate within minutes

Easy EML to PDF automation using our simple Node.js SDK

Try the EML to PDF conversion online

Try it Free

Compatible With all NodeJS Frameworks & Tools

Compatible with Node.js Compatible with npm Compatible with Express Compatible with NestJS Compatible with TypeScript Compatible with Jest Compatible with WebStorm

Businesses trust us

Highest rated File Conversion API on major B2B software listing platforms: Capterra, G2, and Trustpilot.

"ConvertAPI has been a game-changer for our document automation workflows. Their conversion accuracy and API reliability are unmatched in the industry for over 7 years."

"ConvertAPI is a reliable, cost-effective solution with a proven track record of stability. It has grown significantly in maturity, adopting enterprise-grade practices over the years."

"We've integrated ConvertAPI across our entire document processing platform. The performance is exceptional and the support team is always responsive. Highly recommended!"

Enterprise-Grade Security

We ensure that all document processing is handled securely in the cloud, adhering to industry-leading standards like ISO 27001, GDPR, and HIPAA. To enhance security even further, we can ensure that no files or data are stored on our servers and never leave your country.

Learn more about security

Ready to Streamline Your File Conversions?