PDFs are now generated with Chromium 156. Conversions are a little faster, some pages that used to time out now render, and a URL that cannot be rendered returns a 400 that says why instead of a generic 500.
PDFs are now generated with Chromium 156. The rollout finished on November 3. You do not need to change your requests, and most PDFs come out the same.
What is better
lazyLoad — a new parameter that scrolls through the page before generating the PDF, so that images loaded on scroll are included. It is off by default. See Parameters.Clearer errors
A URL that cannot be rendered used to return a generic 500. It now returns a 400 with errorCode 12 and a message that says why:
{
"errorCode": 12,
"message": "net::ERR_CONNECTION_RESET at https://example.com/"
}This covers URLs that point to a PDF or a file browsers download, sites that refuse or drop the connection, and pages too slow or heavy to finish in time.
If your integration retries only 5xx responses, note that a site being briefly unreachable now returns a 400, which it will no longer retry. See Errors and HTTP statuses for which of these are worth retrying.
What may look different
A few layouts change because Chromium itself changed. We kept its behaviour, since it matches current browsers.
<h1> inside section, article, aside or nav is now full size, 32px instead of 24px, which can move the content below it down. To keep the old size, set it in your CSS: section h1 { font-size: 24px; }.outset, inset, ridge and groove border styles are lighter, including the default from a plain <table border="1">. Lines keep their position and thickness. To keep them darker, set them in your CSS: td { border: 1px solid #555; }.If a PDF looks different in a way that is not listed here, please contact support.