PaperJSX

Getting Started

  • Overview
  • Choose a Package

Packages

  • PPTX
  • PDF
  • DOCX
  • XLSX
  • MCP Server

Hosted API

  • Quick Start
  • API Reference
  • Migrate V1 to V2

Plans

  • License & Pricing

License & Pricing

Boundaries

  • Free, open-source packages: @paperjsx/json-to-pptx (MIT), @paperjsx/json-to-pdf, @paperjsx/json-to-docx, @paperjsx/json-to-xlsx (all Apache-2.0). Local/self-hosted developer use.
  • Paid packages: @paperjsx/json-to-pptx-pro, @paperjsx/json-to-pdf-pro, @paperjsx/json-to-docx-pro, @paperjsx/json-to-xlsx-pro. Advanced features plus a commercial license for production and self-hosted commercial use.
  • Hosted API: managed runtime with preflight, diff, approvals, and brand packs. Billed per plan.

Getting a license key

  1. Create an account at paperjsx.com/auth/signup.
  2. Choose a plan at paperjsx.com/pricing.
  3. Copy your license key from Dashboard → API Keys.

Using the key

Set the environment variable:

Terminal
export PAPERJSX_LICENSE_KEY=pj_live_your_key_here

Or pass it directly when creating an engine:

TypeScript
import { createEngine } from "@paperjsx/json-to-pptx-pro";

const pptx = createEngine({
  licenseKey: process.env.PAPERJSX_LICENSE_KEY,
});

Plans

PlanRoleIncludes
FreeOpen wedgeMIT/Apache-2.0 packages, local/self-hosted dev use, playground, 5 hosted evaluation renders/month, local MCP install and testing
Pro (single)Paid packageOne paid package (e.g. json-to-pptx-pro) for self-hosted commercial generation
ProSingle-format productionOne paid format, hosted production usage, 1,000 MCP calls/month, standard support
Pro (All Formats)ExpansionPPTX, DOCX, XLSX, and PDF with all Pro features, one key, 1,000 MCP calls/month
EnterpriseCommercialAnnual agreements, OEM redistribution, SLA, volume licensing, custom throughput and MCP limits

How validation works

  1. On first render, the SDK sends your license key to api.paperjsx.com/v1/license/validate. Only the key and SDK version are sent — no document data.
  2. On success, validation is cached for 24 hours.
  3. If the validation server is unreachable, a 72-hour grace period allows continued offline use.
  4. After 72 hours without revalidation, rendering throws a license error.

Revoking, upgrading, cancelling

  • Revoke: Dashboard → API Keys → delete. Fails validation within 24 hours.
  • Upgrade: takes effect immediately; the same key reflects the new tier on next validation.
  • Cancel: plan remains active until the end of the billing period, then rendering throws a license error. No data is deleted.
PreviousMigrate V1 to V2