Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.blinkpdf.io/llms.txt

Use this file to discover all available pages before exploring further.

Blink PDF is a REST API that converts Markdown into professional, print-ready PDFs in roughly 100 milliseconds. You send a JSON request body containing your Markdown content, and the API streams back a binary PDF — no browser, no headless Chrome, no fuss. This overview covers the base URL, available endpoints, request and response conventions, and what to expect when something goes wrong.

Base URL

All API requests are made to the following base URL:
https://api.blinkpdf.io
The current API version is v1. Every endpoint path is prefixed with /v1/.
The base URL does not include a trailing slash. Append endpoint paths exactly as shown in the table below.

Endpoints at a Glance

MethodPathDescription
POST/v1/renderConvert Markdown to a PDF binary
GET/v1/fontsList all fonts available for use in your documents
GET/v1/healthCheck API availability (no auth required)

Request Format

All POST requests must include a JSON body and the following headers:
HeaderValue
AuthorizationBearer sk_live_...
Content-Typeapplication/json
GET requests that require authentication need only the Authorization header — no request body is sent.

Response Format

A successful call to POST /v1/render returns a binary PDF (application/pdf). You should pipe or write the response body directly to a file rather than reading it as text. All other successful responses return JSON (application/json).

Response Headers

Every response from the /v1/render endpoint includes two custom headers that are useful for debugging and performance tracking:
HeaderDescription
X-Render-MsThe time, in milliseconds, that the server spent rendering your PDF
X-Request-IdA unique identifier for the request, formatted as req_xxxxxxx. Include this when contacting support

Error Codes

When a request cannot be completed, the API returns a standard HTTP error status code. The table below summarises what each code means in the context of Blink PDF:
Status CodeNameWhat It Means
400Bad RequestYour request body is malformed or a required field is missing
401UnauthorizedThe Authorization header is absent or the API key is invalid
403ForbiddenYour current plan does not include the feature you requested
413Payload Too LargeThe Markdown input exceeds the maximum size allowed on your plan
429Too Many RequestsYou have exceeded your rate limit. Check the Retry-After header for when you can retry
500Internal Server ErrorThe rendering pipeline encountered an unexpected error
When you receive a 429, read the Retry-After response header. It contains the number of seconds you should wait before sending another request.

Rate Limiting

Rate limits are enforced per API key and vary by plan. If you exceed your limit, the API returns 429 Too Many Requests and includes a Retry-After header.
Calls to GET /v1/health and GET /v1/fonts never count toward your rate limit or render quota. Only successful POST /v1/render responses are counted.

Versioning

The current API version is v1, reflected in every endpoint path. When breaking changes are introduced, a new version prefix (e.g. /v2/) will be released alongside the existing version. You will always receive advance notice before an older version is deprecated.