Buying guide

CraftMyPDF API: endpoints, API key, rate limits and sync vs async

Last materially reviewed 2026-10-03

Quick answerYes. CraftMyPDF has a REST API on every plan, including Free. You authenticate with an X-API-KEY header and call POST /v1/create with a template ID and JSON data.

Does CraftMyPDF have an API, and on which plan?

Yes. CraftMyPDF has a REST API, and the pricing table lists it on every plan including the Free plan, which allows 50 PDFs or images a month. Everything below comes from the official API reference at craftmypdf.com/docs, read on 3 October 2026.

The default base URL is https://api.craftmypdf.com/v1. Requests and responses use JSON, and the reference sets the content type as application/json.

Where to find the CraftMyPDF API key and how to send it

An API key is generated when you sign up. The reference says you can reset it in the web console under API Integration. Every request carries the key in one header:

  • X-API-KEY: your_api_key

There is no OAuth flow or token exchange in the reference. The API also allows cross-origin requests from any site, so do not call it from browser code where the key would be visible. Keep the key on a server or inside your automation tool's credential store.

Main endpoints in the official reference

CraftMyPDF API endpoints (paths are relative to /v1)
EndpointMethodWhat it does
/createPOSTCreates a PDF from a template and JSON data
/create-asyncPOSTQueues a PDF and calls your webhook when it is ready
/create-mergePOSTBuilds one PDF from several templates
/create-parallelPOSTCreates several PDFs in one call, with an optional merge flag
/create-imagePOSTCreates an image from an image template
/list-templatesGETLists your templates
/merge-pdfsPOSTMerges PDFs from URLs
/add-watermarkPOSTAdds a watermark to a PDF
/list-transactionsGETLists past generation transactions
/get-account-infoGETReturns account information

For /create, two fields are required: template_id and data. Useful optional fields include version to pin a template version, export_type, expiration and output_file. Pinning version is the safest way to stop a template edit changing live output, as explained in our note on template versions.

Synchronous or asynchronous: which call to use

A synchronous call to /create waits for the document and returns it in the response. Set export_type to json to get a link to the file on the vendor's CDN, or to file to get the PDF as binary data that the vendor says it does not store. Stored files expire after 5 minutes by default, and expiration accepts 1 to 10,080 minutes.

An asynchronous call to /create-async returns at once. When the PDF is ready, CraftMyPDF makes a GET request to your webhook_url with file, transaction_ref and status in the query string, and retries three times before giving up.

  1. Use synchronous calls when a person is waiting for a download.
  2. Use asynchronous calls for batches, nightly runs and long reports.
  3. In both cases, store the transaction reference so a missing document can be traced.

Rate limits, timeouts and payload size

CraftMyPDF API limits from the official reference
LimitValue
Requests100 per 10 seconds per IP address
Concurrent synchronous PDF requests100 per account
Response when exceededHTTP 429
Timeout, default Singapore, Europe and US East endpoints100 seconds
Timeout, Australia and the alternative endpoints30 seconds
Payload size, request and response4 MB on the main Singapore, Europe and US endpoints, 6 MB on Australia and the alternative endpoints

Regional base URLs are https://api-us.craftmypdf.com/v1 for US East, https://api-de.craftmypdf.com/v1 for Frankfurt and https://api-au.craftmypdf.com/v1 for Sydney. The reference says request data and generated PDFs are processed and stored within the chosen region. A US team should normally use the US endpoint.

The payload cap is the limit most likely to bite. A report with large embedded data can exceed 4 MB, and the reference notes that json output stored on S3 avoids the response-size limit.

When the API is the wrong tool

If nobody on the team writes code, use the Zapier or Make.com app, or the n8n node described in our CraftMyPDF n8n integration guide. They call the same service with the same API key.

If you want to post raw HTML and get a PDF back, this API is not built for that: every generation endpoint takes a template ID. Look at an HTML to PDF API instead. Credit costs per call are covered on our CraftMyPDF pricing page.

Sources used for this page

The facts above come from the pages below, read on 3 October 2026. We have not used these products hands-on. Prices and terms change, so confirm them on the vendor's site before you buy.

  1. CraftMyPDF API Reference — Vendor documentation · craftmypdf.com · checked 2026-10-03
  2. Pricing - CraftMyPDF.com — Vendor pricing page · craftmypdf.com · checked 2026-10-03