Screenshots and document processing, one HTTP call away.

Render any URL to an image or PDF. Merge, split, compress, convert and read documents. No headless browser to babysit, no LibreOffice to install, no queue to run.

Get an API key See the endpoints

Start in thirty seconds

curl -X POST https://docvolta.com/v1/render/screenshot \
  -H "Authorization: Bearer YOUR_KEY" \
  -F url=https://stripe.com \
  -F full_page=true \
  -F format=jpeg \
  -o shot.jpg

That is the whole integration. Every endpoint takes multipart form fields and returns the finished bytes — no job IDs, no polling, no webhooks to receive.

Every response carries X-Credits-Charged and X-Credits-Remaining, so you always know where you stand without a separate billing call.

Endpoints

Rendering

EndpointDoesCost
POST /v1/render/screenshotURL or HTML to PNG, JPEG or WebP. Full-page, device scale, dark mode.1 credit
POST /v1/render/pdfURL or HTML to a print-quality PDF.1/page

Documents

EndpointDoesCost
POST /v1/pdf/mergeCombine PDFs in order.1/page
POST /v1/pdf/splitExtract pages, e.g. 1-3,7,9-.1/page
POST /v1/pdf/rotateRotate all or selected pages.1/page
POST /v1/pdf/compressShrink without re-encoding images.1/page
POST /v1/pdf/extract-textText per page, as JSON.1/page
POST /v1/pdf/thumbnailRender one page to an image.1 credit
POST /v1/convertDOCX, XLSX, PPTX and more to PDF.1/page
GET /v1/usageYour plan and remaining credits.free

Built for the awkward parts

Cookie banners hidden

Consent overlays are suppressed by default, so screenshots show the page rather than a GDPR dialog.

Honest compression

Compression returns the real before/after ratio in headers. If a file cannot shrink, you get the original back, not a bigger one.

Errors you can act on

Every failure returns a typed code and a sentence describing what to change. No bare 500s.

Page ranges that validate

Ask for page 99 of a 5-page file and you get a clear error, never a silently truncated document.

Pricing

PlanCredits / monthPriceOverage
Free100$0
Starter2,000$9/mo$0.002
Pro10,000$29/mo$0.002
Business50,000$99/mo$0.002

One credit is one render or one page processed. No card required for the free tier, and no charge for failed requests — if we cannot return your file, you are not billed for it.

Errors

Failures return JSON with a stable error code:

{
  "error": "document_error",
  "message": "Page range '1-99' is outside the document's 1-5 pages."
}
StatusCodeMeaning
400unsafe_urlURL is private, reserved or an unsupported scheme.
401invalid_api_keyKey missing, unrecognised or revoked.
402quota_exceededFree allowance spent.
413file_too_largeUpload above the size limit.
422document_errorFile unreadable or request not satisfiable.
429rate_limitedToo many requests; retry shortly.