SarvaPdf – HTML to PDF API & Document Generation (Templates, Screenshots, PDF Tools)

SarvaPdf is a powerful HTML to PDF API for generating PDFs from web content and templates. Convert HTML to PDF, URL to PDF, Markdown to PDF, or generate documents using templates through a simple REST API. SarvaPdf allows developers to automate document generation and build reliable PDF workflows for applications and SaaS platforms. Key capabilities include: • HTML to PDF conversion • URL to PDF…

3 subscribers
44 endpoints
The in-depth APIMemo review for this API hasn't been published yet — the data below comes straight from the public marketplace listing.

SarvaPdf – HTML to PDF API & Document Generation (Templates, Screenshots, PDF Tools) endpoints

MethodEndpointDescription
pdf
POST convert_handler_pdf_convert_post
/pdf/convert
Convert provided content (see PDFRequest model) into a PDF. Supported response modes: `binary` (raw PDF), `base64`, `json` with metadata, or `url` (store and return a download…
POST extract_from_file_pdf_extract_file_post
/pdf/extract/file
Multipart/form-data endpoint. Send `file` as the PDF to extract. Optional form field `structured` (boolean) to request structured extraction.
POST split_pdf_pdf_split_post
/pdf/split
Split a PDF into separate pages. Input can be multipart file upload or application/json with `pdf_url` or `pdf_base64`. New output: use `response_mode` (binary|base64|json|url).…
POST extract_from_url_pdf_extract_url_post
/pdf/extract/url
Provide `pdf_url` in JSON body (PDFExtractRequest model).
POST merge_pdfs_pdf_merge_post
/pdf/merge
Merge PDFs from multipart upload, remote URLs or base64 list. Request can be multipart/form-data with `files` (UploadFile[]), or application/json with `pdf_urls` (list),…
POST extract_metadata_pdf_extract_metadata_post
/pdf/extract/metadata
Extract metadata (Title, Author, Subject, Keywords, Producer, CreationDate, ModDate, etc.) from a PDF. Supports: multipart PDF upload, base64 JSON, or URL.
POST rotate_pdf_pdf_rotate_post
/pdf/rotate
Rotate pages in a PDF. Input may be file upload, `pdf_url` or `pdf_base64` in JSON. Provide `degrees` (90/180/270), optional `page_numbers` list, and `response_mode`…
POST extract_from_base64_pdf_extract_base64_post
/pdf/extract/base64
Provide `pdf_base64` in JSON body (PDFExtractRequest model).
screenshot
POST screenshot_handler_screenshot_post
/screenshot
Capture a PNG/JPEG screenshot rendered from `html` or `url` using the `ScreenshotRequest` schema. Supported `response_mode` values: `binary`, `base64`, `json`, `url`. Binary…
POST screenshot_to_pdf_handler_screenshot_pdf_post
/screenshot/pdf
Capture a PNG/JPEG screenshot (same `ScreenshotRequest` schema) and convert the image to a PDF. `response_mode` mapping: - `binary` -> `application/pdf` stream with…
Templates
GET list_templates_templates_list_get
/templates/list
Return a list of templates available to the authenticated user.
POST preview_template_templates_preview_post
/templates/preview
Render a stored template server-side using Jinja2 and provided `data`. Request body: JSON with `template_id` (string) and `data` (object) containing template variables. Response:…
GET get_template_templates_get__template_id__get
/templates/get/{template_id}
Retrieve the stored template HTML and metadata by template ID for the current user.
GET serve_template_templates_templates__slug__get
/templates/templates/{slug}
POST render_template_pdf_templates_render_pdf_post
/templates/render-pdf
Render a stored Jinja2 template with provided `data` and convert the result to PDF. Request body: `TemplateRenderRequest` (template_id, data, page/margin options, response_mode,…
POST create_template_templates_create_post
/templates/create
Create and store a user-specific Jinja2 HTML template. Request body: `TemplateCreate` (name, html). Returns the created template metadata.
DELETE remove_template_templates_delete__template_id__delete
/templates/delete/{template_id}
Delete a template by ID for the authenticated user.
GET template_variables_templates_variables__template_id__get
/templates/variables/{template_id}
Analyze the stored template HTML and return a deduplicated list of Jinja2 variable tokens found in `{{ ... }}` form to help callers know what variables to supply.
status
GET status_status_get
/status
health
GET health_health_get
/health
url
GET get_rendered_pdf_url__asset_kind___public_slug__get
/url/{asset_kind}/{public_slug}
Fetch a previously generated asset using its temporary public slug and token.
Other endpoints
GET root_redirect__get
/
GET root_redirect__get
/
POST merge_pdfs_pdf_merge_post
/pdf/merge
Merge PDFs from multipart upload, remote URLs or base64 list. Request can be multipart/form-data with `files` (UploadFile[]), or application/json with `pdf_urls` (list),…
POST extract_from_base64_pdf_extract_base64_post
/pdf/extract/base64
Provide `pdf_base64` in JSON body (PDFExtractRequest model).
POST extract_from_file_pdf_extract_file_post
/pdf/extract/file
Multipart/form-data endpoint. Send `file` as the PDF to extract. Optional form field `structured` (boolean) to request structured extraction.
POST rotate_pdf_pdf_rotate_post
/pdf/rotate
Rotate pages in a PDF. Input may be file upload, `pdf_url` or `pdf_base64` in JSON. Provide `degrees` (90/180/270), optional `page_numbers` list, and `response_mode`…
POST extract_from_url_pdf_extract_url_post
/pdf/extract/url
Provide `pdf_url` in JSON body (PDFExtractRequest model).
POST extract_metadata_pdf_extract_metadata_post
/pdf/extract/metadata
Extract metadata (Title, Author, Subject, Keywords, Producer, CreationDate, ModDate, etc.) from a PDF. Supports: multipart PDF upload, base64 JSON, or URL.
POST convert_handler_pdf_convert_post
/pdf/convert
Convert provided content (see PDFRequest model) into a PDF. Supported response modes: `binary` (raw PDF), `base64`, `json` with metadata, or `url` (store and return a download…
POST split_pdf_pdf_split_post
/pdf/split
Split a PDF into separate pages. Input can be multipart file upload or application/json with `pdf_url` or `pdf_base64`. New output: use `response_mode` (binary|base64|json|url).…
POST preview_template_templates_preview_post
/templates/preview
Render a stored template server-side using Jinja2 and provided `data`. Request body: JSON with `template_id` (string) and `data` (object) containing template variables. Response:…
POST create_template_templates_create_post
/templates/create
Create and store a user-specific Jinja2 HTML template. Request body: `TemplateCreate` (name, html). Returns the created template metadata.
GET list_templates_templates_list_get
/templates/list
Return a list of templates available to the authenticated user.
GET get_template_templates_get__template_id__get
/templates/get/{template_id}
Retrieve the stored template HTML and metadata by template ID for the current user.
GET template_variables_templates_variables__template_id__get
/templates/variables/{template_id}
Analyze the stored template HTML and return a deduplicated list of Jinja2 variable tokens found in `{{ ... }}` form to help callers know what variables to supply.
GET serve_template_templates_templates__slug__get
/templates/templates/{slug}
POST screenshot_to_pdf_handler_screenshot_pdf_post
/screenshot/pdf
Capture a PNG/JPEG screenshot (same `ScreenshotRequest` schema) and convert the image to a PDF. `response_mode` mapping: - `binary` -> `application/pdf` stream with…
POST screenshot_handler_screenshot_post
/screenshot
Capture a PNG/JPEG screenshot rendered from `html` or `url` using the `ScreenshotRequest` schema. Supported `response_mode` values: `binary`, `base64`, `json`, `url`. Binary…
GET health_health_get
/health
GET status_status_get
/status
POST render_template_pdf_templates_render_pdf_post
/templates/render-pdf
Render a stored Jinja2 template with provided `data` and convert the result to PDF. Request body: `TemplateRenderRequest` (template_id, data, page/margin options, response_mode,…
DELETE remove_template_templates_delete__template_id__delete
/templates/delete/{template_id}
Delete a template by ID for the authenticated user.
GET get_rendered_pdf_url__asset_kind___public_slug__get
/url/{asset_kind}/{public_slug}
Fetch a previously generated asset using its temporary public slug and token.

SarvaPdf – HTML to PDF API & Document Generation (Templates, Screenshots, PDF Tools) pricing

PlanPriceRate limitQuotas
BASIC Free 3 / second
  • Quota: 500 / monthly
  • Requests: 500 / monthly
PRO $10 / month 10 / second
  • Quota: 5,000 / monthly (then $0.0060 each)
  • Requests: 5,000 / monthly (then $0.0060 each)
ULTRA Recommended $29 / month 20 / second
  • Quota: 25,000 / monthly (then $0.0040 each)
  • Requests: 25,000 / monthly (then $0.0040 each)
MEGA $79 / month 40 / second
  • Quota: 100,000 / monthly (then $0.0020 each)
  • Requests: 100,000 / monthly (then $0.0020 each)

More Business Software APIs

View all →
  • HTML/URL to PDF converter. Stop yak-shaving, generate a PDF now! https://yakpdf.com

    Business SoftwareFreemium1.5k subscribers
  • BIN/IP Checker is a freemium API from bincheck.io that lets developers look up card metadata from a Bank…

    ReviewedBusiness SoftwareFreemium15.4k subscribers
  • reverse engineered TikTok mobile API covered non-autorized actions

    Business SoftwareFree1.3k subscribers
  • Powerful REST API for downloading premium assets from Envato Elements automatically. Integrate fast, secure,…

    Business SoftwareFreemium138 subscribers
  • BIN/IIN LOOKUP Check the security of payment cards and determine if they have bank protection. Our service…

    Business SoftwareFreemium911 subscribers
  • LAAMP API published

    Business SoftwareFree23 subscribers