PDF API Macaaw
PDF API для сжатия, конвертации и подписания
Один REST API для 20 инструментов PDF и электронных подписей. Каждая задача выполняется на наших серверах в Лондоне, а файлы удаляются в течение 2 ч.
Получить бесплатный песочничный ключЧитать документацию по API
- OpenAPI 3.1
- Коллекция Postman
- Бесплатная песочница
- Подписанные вебхуки
curl https://macaaw.com/public/v1/tasks \
-H "Authorization: API-Key $MACAAW_API_KEY" \
-F "files[]=@lease.pdf" \
-F 'data={"tool":"compress-pdf","options":{"level":"recommended"}}'
# 201 Created
{ "id": "…", "tool": "compress-pdf", "status": "task.queued" }// Node 18+ (fetch, FormData and Blob are built in)
import { readFile } from "node:fs/promises";
const form = new FormData();
form.append("files[]", new Blob([await readFile("lease.pdf")]), "lease.pdf");
form.append("data", JSON.stringify({ tool: "compress-pdf", options: { level: "recommended" } }));
const res = await fetch("https://macaaw.com/public/v1/tasks", {
method: "POST",
headers: { Authorization: `API-Key ${process.env.MACAAW_API_KEY}` },
body: form,
});
const task = await res.json(); // { id, tool, status: "task.queued" }# Python 3 with requests
import json, os, requests
res = requests.post(
"https://macaaw.com/public/v1/tasks",
headers={"Authorization": f"API-Key {os.environ['MACAAW_API_KEY']}"},
files={"files[]": open("lease.pdf", "rb")},
data={"data": json.dumps({"tool": "compress-pdf", "options": {"level": "recommended"}})},
)
task = res.json() # {"id": ..., "status": "task.queued"}- 20инструментов PDF на одном эндпоинте
- 1 вызовчтобы загрузить и запустить задачу
- < 2 hдо удаления ваших файлов
- 0 £для песочницы
Что можно создать
Задачи с PDF, которые не должны лежать на вашем продукте
Уменьшайте загрузки перед сохранением
Сжимайте PDF или подгоняйте их под точный размер в момент загрузки пользователями.
Конвертируйте файлы Office в PDF
Word, Excel, PowerPoint, OpenDocument и HTML в PDF с сохранением вёрстки.
Делайте сканы доступными для поиска
Распознавание текста на 27 языках, PDF/A для архивов и таблицы прямо в Excel.
Отправляйте соглашения из собственного приложения
Создайте документ из PDF, разместите поля с помощью текстовых тегов, отправьте его и скачайте подписанную копию.
Встройте подписание в свой продукт
Откройте сессию подписания прямо на вашем сайте, ограниченную разрешёнными вами источниками.
Запускайте пакеты с вебхуками
Запускайте сотни задач и получайте подписанный обратный вызов по завершении каждой.
Как это работает
От ключа до результата в четыре вызова
Создайте ключ
Создайте песочничный ключ в аккаунте. Когда будете готовы, переключитесь на боевой.
Аккаунт › РазработчикамЗапустите задачу
Отправьте файлы и название инструмента одним запросом multipart.
POST /public/v1/tasksУзнайте, когда всё готово
Подпишитесь на task_completed или опрашивайте задачу.
webhook: task_completedСкачайте
Получите результат, затем удалите его или дождитесь истечения срока.
GET /tasks/{id}/download
Эндпоинты
Небольшой и предсказуемый API
Базовый URL https://macaaw.com/public/v1 · JSON с ключами в snake_case · Authorization: API-Key …
Задачи · инструменты PDF
- GET
/toolsВсе инструменты, которые можно вызвать, с их параметрами - POST
/tasksЗагрузка файлов и запуск инструмента одним вызовом - GET
/tasks/{id}Статус: queued, processing, completed или failed - GET
/tasks/{id}/downloadФайл результата или ZIP - DELETE
/tasks/{id}Удалить файлы сейчас
Документы · электронные подписи
- POST
/documentsPDF с получателями и полями или с текстовыми тегами - POST
/documents/{id}/sendОтправка по эл. почте или без уведомления — для встроенного подписания - GET
/documents/{id}/detailsПолучатели, поля и полная хронология - POST
/documents/{id}/sessionСсылка для подписания на вашей странице - GET
/documents/{id}/downloadПодписанный PDF с сертификатом
Вебхуки
- POST
/webhook-subscriptionsВыберите триггеры, например task_completed или document_state_changed - GET
/webhook-eventsИстория доставок с повторной отправкой
Безопасность
Готово к продакшену с первого дня
Те же правила удаления и обработка в Великобритании, что и на сайте, плюс средства контроля, которых ждёт команда разработчиков.
- Ключи под вашим контролемБоевые и песочничные ключи показываются один раз и хранятся в виде хеша. Любой ключ можно отозвать в аккаунте.
- Подписанные вебхукиКаждая доставка содержит ?signature= с HMAC-SHA256 тела запроса, созданным вашим общим ключом.
- Быстрое удаление файловФайлы задач хранятся 1 час в бесплатном аккаунте и 2 часа на Pro и Business, затем они удаляются. DELETE удаляет их сразу.
- Обработка в ВеликобританииКаждая задача выполняется на наших серверах в Лондоне. Журналы запросов никогда не хранят содержимое или имена файлов.
- Честные ограничения частоты120 новых задач в минуту на пользователя, с заголовком Retry-After в каждом ответе 429.
- Безопасные повторыОтправьте Idempotency-Key, и повторный запрос в течение 24 ч вернёт первый результат.
Цены
Начните бесплатно. Платите по мере роста.
Песочница
0 £
- Все эндпоинты с тестовыми данными
- 10 запросов в минуту
- До 5 страниц на задачу
- Результаты помечены штампом «Sandbox»
- Тестовые данные удаляются через 7 дн.
Боевой режим на Pro или Business
От 4,99 £в месяц при оплате за год
- Использует месячные лимиты вашего тарифа
- Затем кредиты: от 5 £ за 500
- 1 кредит за страницу OCR, 2 кредита за конвертацию Office
- 120 новых задач в минуту
Enterprise
Цены за объём
- Цены за объём страниц и конвертаций
- Индивидуальные лимиты по договору
- Годовая оплата по счёту
- Персональный менеджер
Вопросы
Разработчики спрашивают
Можно ли попробовать API бесплатно?
Да. Любой вошедший пользователь может бесплатно создать песочничный ключ. Песочничные вызовы ограничены 10 в минуту и 5 страницами на задачу, весь результат помечается штампом «Sandbox», а тестовые данные удаляются через 7 дн.
Какие инструменты можно вызывать?
20 инструментов, которые работают на наших серверах, от сжатия и OCR до конвертаций Office и PDF/A, а также электронные подписи. Список с их параметрами возвращает GET /tools. 20 инструментов в браузере работают в браузерах ваших пользователей, поэтому их нет в API v1.
Как тарифицируется использование API?
Боевые ключи доступны на Pro и Business. Вызовы используют те же месячные лимиты, что и сайт; сверх них списываются кредиты. Пакеты кредитов начинаются от 5 £ за 500 кредитов и действуют 12 мес.
Есть ли у вас SDK?
В документации есть примеры для копирования на curl, Node и Python для каждого эндпоинта, файл OpenAPI 3.1 и коллекция Postman, так что вы можете сгенерировать клиент на любом языке.
Что будет, если эндпоинт моего вебхука недоступен?
Мы повторяем попытку ещё три раза: через 1 минуту, 10 минут и 1 час, после чего помечаем доставку как неудавшуюся. Отправить её снова можно из аккаунта или через API.
Запустите функции PDF уже на этой неделе.
Создайте песочничный ключ за минуту. Карта не нужна.