v2026.05 · API создания PDF из JSON

Самый быстрый в мире API для массовой генерации счетов и этикеток

100 000 страниц за 5 $. PDF создаются на edge-узлах за несколько миллисекунд

Создано для глобального масштаба Полная поддержка стандартов PDF/A, Factur-X и ZUGFeRD

Попробовать живой API Смотреть API-справочник без кредитной карты · без установки · дружественный к curl
CPU / рендер (p50)
4.98ms · 24h
Обслужено запросов
299/ 24h
Стоимость
$5 / 100K
Регионы
300+ pops
30+ форматов штрих-кодов 4 профиля PDF/A 100K страниц от $5/мес
Playground

Отправьте JSON. Создайте PDF.
Ключевые возможности — на одной странице.

Отредактируйте DocumentRequest слева. Вызовите live edge worker
настоящая схема, настоящий PDF, обычно <5 мс.

Почему gPdf

gPdf держится на четырёх опорах.

01 / 04
$5
per 100K pages

Стоимость

Работает на Cloudflare Workers — а не на контейнере Chromium 800 МБ за $0,40/час, простаивающем впустую. $0,00005 за страницу. Без минимумов, без оплаты за место, без надбавок за окружение.

02 / 04
PDF/A
1b · 2b · 3b · 4

Стандарты

Архивные профили PDF/A (1b, 2b, 3b, 4) по запросу. Factur-X, ZUGFeRD и EN 16931 поддерживаются нативно — Раздел 5 справочника API, не пункт roadmap.

03 / 04
JSON → PDF
API + editor, one schema

JSON-нативный

pages[], elements[], x/y в миллиметрах. Без HTML→PDF, без headless Chrome, без DSL шаблонов для изучения. Тот же JSON кормит API и визуальный редактор — дизайнеры и разработчики правят один файл.

04 / 04
3000+
color emoji, embedded

Типографика

Latin, CJK, арабский (RTL + сложное shaping), Devanagari, кириллица, Bengali и Thai встроены в движок — плюс 3000+ цветных эмодзи. Без `apt install fonts-noto-cjk`. Ни одного пропущенного глифа.

Возможности

Базовые, но важные детали сделаны правильно.

Реальная семантика документа, а не скриншоты браузера в обёртке PDF.

Browse use cases
/01

Контроль до пикселя

x/y в миллиметрах, x_anchor для выравнивания по правому краю, субмиллиметровое размещение на этикетках. Координаты, а не приближения.

// inside elements[i]
"x_anchor": {
  "reference": "content_right",
  "offset": 6
}
/02

Векторные штрих-коды

30+ символик включая GS1-128, QR, PDF417, DataMatrix. Все векторные. Общая длина точна до 0,1 мм.

// 30+ formats: code128, qrcode, datamatrix, pdf417, ...
"type": "barcode",
"format": "code128",
"content": "INV-2026-001"
Why vector beats raster
/03

Цепочка резервных шрифтов

font_mode: strict (заявленное семейство должно покрыть все глифы), prefer (фолбэк по встроенным семействам), auto (движок выбирает). Исчерпание auto/prefer возвращает API-504 — явный отказ, не молчаливый.

// inside style{}
"font_family": "NotoSans-Regular",
"font_mode": "prefer"
/04

Режимы соответствия

settings.profile = "pdfa-3b" включает соответствие PDF/A-3b плюс встроенный поток XML-вложения, которого требуют Factur-X / ZUGFeRD. Одно поле — один соответствующий документ.

// top-level on DocumentRequest
"settings": {
  "profile": "pdfa-3b"
}
PDF/A and Factur-X, explained
/05

Переменные + пагинация

{page} / {total_pages} разрешаются после layout. keep_together, widow/orphan, блоки page_break.

// element of type "variable"
{ "type": "variable",
  "name": "page",
  "scope": "system" }
/06

Таблицы, которые пагинируются

row_span между страницами, повторяющиеся заголовки, alternate_fill, составные двойные границы. Тот 1 %, который всегда ломается.

// inside table element
"pagination": {
  "keep_spans_together": true
}
/07

Один JSON, две поверхности

Тот же DocumentRequest JSON приводит в действие POST /api/v1/pdf/render и визуальный редактор на editor.gpdf.com. Правьте визуально, отправляйте через API или пишите вручную — все три маршрута round-trip один файл.

// three routes, one engine
POST /api/v1/pdf/render
POST /api/v1/template-render
POST /api/v1/e-invoice/render
Read the API reference
/08

Создан для счетов

$0,00005 за страницу, p50 3 мс, встроенный CJK, поток вложений PDF/A-3. Четыре числа, которые fintech, ERP и налоговые команды проверяют первыми.

// invoice — header + table pattern
{ "size": "a4",
  "elements": [
    { "type": "text",  "x": 18, "y": 22, ... },
    { "type": "table", "x": 18, "y": 60, ... }
  ]}
Why JSON beats HTML→PDF
/09

Создан для доставочных этикеток

Пресеты размеров label_100_150 и label_4_6_in. Векторные GS1-128, ITF-14, SSCC с точностью 0,1 мм — перевозчики и 3PL печатают на пике без растеризованных штрих-кодов.

// 4×6 thermal shipping label
{ "size": "label_4_6_in",
  "elements": [{
    "type": "barcode",
    "format": "code128",
    "content": "1Z999AA10123456784" }]}
Shipping-label use case
Бенчмарки · sampled 2026-04-29

Измерено, не размаркетировано.

A4-счет на 1 страницу, 12 позиций, QR + логотип. Медиана по 1000 созданиям PDF. Чем ниже, тем лучше.

Methodology: 1-page A4 invoice · 12 line items · 1 QR + 1 logo · 1K invocations · median (p50) and p99 reported. Sampled 2026-04-29 from a workstation in EU-WEST. PDFShift, DocRaptor, Puppeteer and LaTeX numbers are reproduced from each vendor's published quickstart sample with the same input — re-run on your own workload before deciding. Read the head-to-head comparisons →

0 105ms 210ms 315ms 420ms
01 gPdf ours
3.8ms
02 PDFShift
95ms
03 DocRaptor (Prince)
180ms
04 Puppeteer (headless)
312ms
05 LaTeX (local)
420ms
Цены

Платите за страницы. Больше ни за что.

Нет per-seat. Нет per-environment. Нет gatekeeping по уровню поддержки.

Все платные уровни включают одни и те же 100 000 страниц и одни лимиты рендеринга. Различаются только настройкой метаданных, доступностью профилей PDF/A и тарифом превышения.

Free Trial

/free
$0 навсегда

100 страниц / день · останавливается на квоте.

  • +100 страниц / день · автосброс
  • +Playground + оценка API
  • +Карта не требуется
  • +Email-поддержка · SLA 1 рабочий день
Попробовать Playground

Basic

/basic
$5 / месяц

100 000 страниц / месяц включено.

  • +100 000 страниц / месяц включено
  • +Превышение $0.00005 за страницу
  • +Стандартные метаданные PDF · не настраиваются
  • +Только стандартный PDF · нет профилей PDF/A
  • +Email-поддержка · SLA 1 рабочий день
Оформить подписку

Pro

/pro
$8 / месяц

100 000 страниц / месяц включено. Настраиваемые метаданные.

  • +100 000 страниц / месяц включено
  • +Превышение $0.00008 за страницу
  • +Заголовок · тема · создатель настраиваются
  • +Только стандартный PDF · нет профилей PDF/A
  • +Email-поддержка · SLA 1 рабочий день
Оформить подписку

Enterprise

/ent
$12 / месяц

100 000 страниц / месяц включено. PDF/A + полные метаданные.

  • +100 000 страниц / месяц включено
  • +Превышение $0.00012 за страницу
  • +Все 6 полей метаданных полностью настраиваются
  • +PDF/A-1b · 2b · 3b · 4 включены
  • +Email-поддержка · SLA 1 рабочий день
Оформить подписку
Приватный деплой

Нужно развернуть gPdf внутри вашего периметра?

Для регулируемых команд, развертываний в private cloud/VPC и изолированных интранет-сред. gPdf можно запускать как выделенный Worker, сервер или deployment за шлюзом; сетевые правила, требования к региону, условия DPA и эскалация поддержки согласуются под проект.

  • +Private cloud, VPC или изолированная сеть
  • +Выделенный Worker/серверный deployment
  • +Условия DPA и контроль резидентности данных
  • +Модель поддержки согласуется заранее
Контакт для приватного деплоя · soon
FAQ

Вопросы, которые разработчики действительно задают.

Двенадцать ответов — цитируются дословно JSON-LD FAQPage, который потребляют Google rich results.

/01

Насколько быстро gPdf рендерит PDF?

p50 — 3 мс, p99 — 8 мс на одной странице A4 при измерении на 1000 вызовах. Полное edge-время с учётом сети обычно 8-15 мс.

/02

Какой формат ввода принимает API?

Тело DocumentRequest в JSON. Страницы, элементы, слои, водяные знаки, заголовки, нижние колонтитулы и таблицы выражены структурно — без HTML, без Markdown, без браузерного прохода layout.

/03

Как gPdf сравнивается с Puppeteer или headless Chrome?

Headless Chromium работает за 200-800 мс на рендер и требует контейнер 800 МБ. gPdf рендерит ту же страницу A4 за 3 мс внутри V8-isolate 1 МБ, без холодного старта. Компромисс — формат ввода: gPdf принимает JSON DocumentRequest, не сырой HTML.

/04

Каковы конечные точки API gPdf?

Три: /api/v1/pdf/render принимает полный DocumentRequest для попиксельного контроля. /api/v1/template-render принимает template_id плюс массив данных. /api/v1/e-invoice/render производит гибридные счета Factur-X / ZUGFeRD (PDF/A-3 + встроенный XML). Все три разделяют один движок, одни лимиты скорости и одну поверхность кодов ошибок.

/05

Нужно ли устанавливать шрифты на сервер для китайского, японского или корейского?

Нет. NotoSans CJK встроен и автоматическая цепочка fallback обрабатывает отсутствующие глифы. Вы никогда не увидите тофу-боксы и вам не нужно apt install fonts-noto-cjk на runtime.

/06

Какие штрих-коды я могу рендерить?

Более 30 символик включая QR, GS1-128, PDF417, DataMatrix, Aztec, MaxiCode и Code 128. Все векторные. Общая длина штрих-кода в пределах 0,1 мм от запрошенного размера — достаточно точно для ширины этикеток по спецификациям GS1 и ITF-14.

/07

Производит ли gPdf вывод, соответствующий PDF/A или электронному счёту?

Да. PDF/A-1b, 2b, 3b и 4 выбираются на запрос. Потоки вложений Factur-X и ZUGFeRD поддерживаются для сценариев электронных счетов.

/08

Может ли gPdf производить счета Factur-X, ZUGFeRD или EN 16931?

Да. Установите settings.profile в pdfa-3b и приложите структурированный XML payload как файловый поток. Factur-X и ZUGFeRD основаны на PDF/A-3 — требуются для немецкого мандата электронных счетов, уже действующего, и французского B2B мандата с сентября 2026.

/09

Где gPdf на самом деле работает?

Внутри V8-isolates Cloudflare Workers. Нет Chromium-контейнера, нет Lambda warming, нет персистентности документов после запроса.

/10

Хранит ли gPdf мои PDF или входные данные?

Нет. Рендерер stateless. Ваш DocumentRequest живёт в V8-isolate несколько миллисекунд рендеринга, затем исчезает. У gPdf нет слоя кэширования и хранилища документов — отсутствие состояния является контрактом, а не опцией.

/11

Есть ли бесплатный уровень?

Да. Free Trial даёт 100 страниц в день, без кредитной карты. Сбрасывается ежедневно и останавливается на квоте — никаких сюрприз-счетов. Платные уровни начинаются от $5 в месяц за 100 000 страниц.

/12

Как начать использовать gPdf?

Откройте playground выше, отредактируйте DocumentRequest и нажмите Создать PDF — живой edge-worker возвращает реальный PDF. Скопируйте curl-сниппет в свой терминал, чтобы вызывать его откуда угодно. Playground не требует установки и кредитной карты; учётная запись нужна только для выпуска собственного API-ключа.

Из блога

Свежие инженерные эссе.

Все посты
  1. Как выбрать PDF API в 2026 году: 8 вопросов

    Нейтральный фреймворк для выбора API генерации PDF. Восемь вопросов, которые показывают, будете ли вы довольны через 12 месяцев.

  2. gPdf vs DocRaptor: почему рендеринг на edge побеждает HTML-в-PDF

    DocRaptor использует Prince для конвертации HTML в PDF на хостинговом бэкенде. gPdf рендерит структурированный JSON напрямую на edge Cloudflare. Разница цен — 18×. Вот почему это не наживка.

  3. PDF/A и Factur-X объяснены инженерам (без юридического жаргона)

    Что профили PDF/A реально ограничивают, почему Factur-X становится обязательным в ЕС в 2026, и наименьший практический pipeline для соответствия из JSON-renderer.

Доверие

Соответствие и резидентство данных

Аудируемая инженерия плюс бумажная работа — оба регистра, оба проверяемые.

SOC2

SOC 2 Type II

Аудит запланирован Q3 2026 · доказательства по запросу.

GDPR

GDPR + DPA

Стандартные договорные положения доступны по запросу.

REGION

Резидентство данных

Варианты резидентности EU, US, APAC и SA. Требования к региону фиксируются в договоре.

STATELESS

Stateless по умолчанию

Нет персистентности документов. В продукте нет слоя кэша или хранилища документов.

BENCHED

Публичные бенчмарки

Названные конкуренты, полная методология, дата выборки. Каждый бенчмарк на этой странице воспроизводим — повторите на своей нагрузке перед решением.

DETERMINISTIC

Детерминирован

Тот же ввод → байт-идентичный PDF. Diffable. Тестируется в CI без дрейфа снимков.