# Rendex — Screenshot and Rendering API > Rendex is a developer API for capturing website screenshots, converting URLs to PDFs, and rendering HTML or Markdown to images — with Mustache data templating to turn one reusable template plus a `data` object into many documents (invoices, reports, certificates). Built on Cloudflare Workers with a global edge network. Used by developers and AI agents. - Site: https://rendex.dev - API: https://api.rendex.dev - MCP: https://mcp.rendex.dev - Parent: Copperline Labs LLC (https://copperlinelabs.com) ## Getting started - [Quickstart](https://rendex.dev/docs/quickstart): 60-second setup with any language - [API reference](https://rendex.dev/docs/api-reference): Full endpoint documentation - [Authentication](https://rendex.dev/docs/authentication): API key management - [SDKs](https://rendex.dev/docs/sdks): Python (PyPI: rendex) and JavaScript (@copperline/rendex) - [MCP server](https://rendex.dev/docs/mcp): For Claude Desktop, Cursor, and other AI agents ## Core features - [API reference](https://rendex.dev/docs/api-reference): Full endpoint documentation — screenshots (PNG/JPEG/WebP), HTML to image, Markdown to image, URL to PDF (A4/Letter/landscape), batch capture (up to 500 URLs). Endpoints: POST /v1/screenshot, GET /v1/screenshot, POST /v1/screenshot/json, POST /v1/screenshot/batch, POST /v1/render/link, GET /v1/render, POST /v1/extract, GET /v1/jobs/:id, GET /v1/batches/:id - [Capture options](https://rendex.dev/docs/api-reference): All optional and available on every plan including Free — `device` presets (desktop, iphone_15, iphone_se, pixel_8, ipad, ipad_pro), `hideSelectors` (hide elements before capture), `blockCookieBanners` (hide consent walls), `resizeWidth`/`resizeHeight` (downscale image output), `hosted` (return a signed CDN URL instead of bytes), `extract`/`extractFormat` (reader-mode content alongside the image) - [Hosted render links](https://rendex.dev/docs/api-reference): POST /v1/render/link mints a signed, self-contained URL you paste into `` — renders once, caches in R2, serves cached on repeats (no per-crawl re-charge) - [Content extraction](https://rendex.dev/docs/api-reference): POST /v1/extract turns a URL into clean reader-mode Markdown, JSON, or HTML from the fully-rendered page (handles SPAs); great for LLM ingestion, summarization, and RAG - [Website monitoring — Rendex Watch](https://rendex.dev/watch): Monitor any URL for changes with a real-Chrome before/after visual diff + highlighted overlay, a secondary text diff, and HMAC-signed change webhooks (watch.changed/recovered/error) or email — one rdx_ key and one shared credit pool. Endpoints under /v1/watches (create, list, run-now, pause/resume, run history); docs at https://rendex.dev/docs/watch - [Data templating](https://rendex.dev/docs/api-reference): Pass a `data` object alongside HTML or Markdown and Rendex renders it as a logic-less Mustache template — one reusable template plus a `data` object becomes many documents (invoices, reports, certificates) - [Rate limits](https://rendex.dev/docs/rate-limits): Per-plan quotas and burst behavior - [Webhooks](https://rendex.dev/docs/webhooks): Async delivery for long-running captures - [Custom storage](https://rendex.dev/docs/custom-storage): Bring your own S3 bucket - [Errors](https://rendex.dev/docs/errors): Error codes and retry semantics ## Free tools - [Free HTML to Image Converter](https://rendex.dev/tools/html-to-image): Paste HTML and render it as a PNG, JPEG, or WebP image — no sign-up required. - [Free Markdown to Image Converter](https://rendex.dev/tools/markdown-to-image): Render Markdown as a styled PNG or PDF — GitHub-flavored typography baked in, no CSS or sign-up required. - [Free URL to PDF Converter](https://rendex.dev/tools/url-to-pdf): Convert any webpage to a PDF document — no sign-up required. - [Free URL to Markdown Converter](https://rendex.dev/tools/url-to-markdown): Turn any web page into clean Markdown for LLMs, RAG, and docs — no sign-up required. - [Free Invoice Generator](https://rendex.dev/tools/invoice-generator): Fill in a form and download a clean, print-ready PDF invoice — no sign-up required. - [Free Template & Data Renderer](https://rendex.dev/tools/template-renderer): Fill a Markdown or HTML template with a JSON data object and render the result to PNG or PDF — Mustache placeholders, loops, and nesting. Make invoices, certificates, and reports. - [Free OG Image Generator](https://rendex.dev/tools/og-image-generator): Generate a 1200×630 social-share card from a template — pick a style, add your text, download the PNG. - [Free Website Screenshot Tool](https://rendex.dev/tools/screenshot): Capture any webpage as a PNG, JPEG, or WebP image — no sign-up required. - [Open Graph Image Preview Tool](https://rendex.dev/tools/og-preview): Check how your page looks when shared on Twitter, Facebook, and LinkedIn. - [Preview a Website Watch](https://rendex.dev/tools/preview-website-watch): Check what Rendex would capture when monitoring a page — and whether the page is reachable — before you set up a watch. ## Integrations - [Rendex for n8n](https://rendex.dev/integrations/n8n): Per-platform landing — what you can build with the n8n community node (setup: /docs/n8n) - [Rendex for Make](https://rendex.dev/integrations/make): Per-platform landing — render from Make's HTTP module (setup: /docs/make) - [Rendex for Power Automate](https://rendex.dev/integrations/power-automate): Per-platform landing — render from Power Automate's HTTP action (setup: /docs/power-automate) - [Rendex for Zapier](https://rendex.dev/integrations/zapier): Per-platform landing — native Zapier rendering action (setup: /docs/zapier) - [All integrations](https://rendex.dev/integrations): n8n, Make, Power Automate, Zapier, MCP, SDKs, and REST API ## Workflow recipes > End-to-end, copy-this-template workflows pairing Rendex with a named app + automation platform. Each has a real config, multi-language code, and a dogfooded before/after render. - [Render HTML to a PNG in Make — the Correct Setup](https://rendex.dev/recipes/render-html-to-png-make): A pre-wired Make HTTP module that renders HTML to a PNG with Rendex on the first try. Copy the exact request body so you never hit the 400 'send exactly one of url, html, or markdown' error. - [Auto-Generate Invoice PDFs from Stripe in n8n](https://rendex.dev/recipes/auto-generate-invoices-stripe-n8n): Render a branded PDF invoice the moment Stripe reports a payment, using one n8n workflow and Rendex — then email it or store a hosted link. No PDF library, no headless browser to host. - [Auto-Generate OG Images from Airtable Rows](https://rendex.dev/recipes/render-og-images-from-airtable): Turn every Airtable row into a branded Open Graph image. A Make HTTP module or Zapier action calls Rendex's hosted render link, then writes the og: URL straight back to the row. - [Batch Screenshot a List of URLs with Webhook Delivery](https://rendex.dev/recipes/batch-screenshot-urls-webhook): Submit a whole list of URLs to Rendex in one batch request and receive each screenshot through an HMAC-signed webhook as it finishes — driven on a schedule from n8n. - [Render an HTML Financial Report or Invoice to PNG in Python](https://rendex.dev/recipes/html-financial-report-to-png-python): Turn an HTML financial report, invoice, certificate, or data table into a crisp PNG from a server-side Python script — one render_html() call, no headless Chrome to host. Embed the image in a generated PDF or report deliverable. - [Email an HTML Report as a PNG Attachment in n8n](https://rendex.dev/recipes/html-report-to-png-email-attachment-n8n): Render an HTML report or KPI summary to a PNG with Rendex on a schedule, then email it as an attachment to your team — one n8n workflow, no headless browser to host. Works the same in Make. - [Slack Alerts When a Web Page Changes](https://rendex.dev/recipes/website-change-alerts-slack-n8n): Point Rendex Watch at any URL and route its signed watch.changed webhook into n8n — verify the signature, then post the before/after/overlay diff to Slack. Real-Chrome visual diffing, no cron or storage to run yourself. - [Let an AI Agent Render a Branded PDF from Markdown](https://rendex.dev/recipes/agent-render-branded-artifact-mcp): Give Claude, Cursor, or any MCP client the Rendex render_artifact tool and it turns the Markdown or HTML it just wrote into a branded PDF + PNG with a hosted share link — one tool call, no file plumbing, no headless browser. - [Extract a URL to Clean Markdown for RAG in Pipedream](https://rendex.dev/recipes/extract-url-to-markdown-rag-pipedream): Turn any web page into clean, reader-mode Markdown with one Rendex call inside a Pipedream workflow, then pipe it straight into an embedding or LLM step — no HTML parsing, no boilerplate stripping, no headless browser. - [Generate a Branded PDF from a Form Submission in Zapier](https://rendex.dev/recipes/generate-pdf-on-form-submit-zapier): Turn a Typeform or Google Forms submission into a branded PDF — a receipt, certificate, or confirmation — with Zapier's native Rendex Generate PDF action, then email it back. No code, no PDF library, no headless browser. - [Screenshot Every New Google Sheets URL to Drive](https://rendex.dev/recipes/screenshot-google-sheets-url-to-drive-zapier): Add a URL to a Google Sheet (or Airtable) and Zapier captures a full-page screenshot with the native Rendex action, then files it in Google Drive — no code, no headless browser, on the free tier. - [Archive a Daily Full-Page Screenshot to Drive](https://rendex.dev/recipes/scheduled-screenshot-archive-drive-zapier): Schedule a daily or weekly full-page screenshot of any page and file it in Google Drive or Dropbox with a dated name — a visual history built automatically with Zapier's native Rendex action. No code, free tier. - [Screenshot a Page Behind a Login in Zapier](https://rendex.dev/recipes/screenshot-behind-login-zapier): Capture an authenticated page — a dashboard, admin view, or member-only report — with Zapier's native Rendex action by passing a session cookie. No browser to script, no code. Cookies are a Rendex Basic+ feature. - [Slack Alerts When a Website Changes — the No-Code Way](https://rendex.dev/recipes/website-change-slack-alert-zapier): Monitor any page with Rendex Watch and let Zapier's native Website Changed trigger post the change to Slack — a plain-English summary of what changed plus a cropped image of the exact spot. No cron, no webhook, no code. - [Turn a Website Change Into a Ticket, Automatically](https://rendex.dev/recipes/website-change-to-jira-ticket-zapier): When Rendex Watch detects a change on a page, let Zapier's native Website Changed trigger open a Jira, Trello, or Asana ticket automatically — titled with what changed and carrying a cropped image of the exact spot. A change that needs action belongs on a board, not just a channel. - [Email a Branded PDF Report on a Schedule](https://rendex.dev/recipes/branded-report-pdf-email-zapier): Turn Markdown into a polished, branded PDF — your logo, colors, and layout — with Zapier's native Rendex Create Branded Artifact action, then email it out on a schedule. No design tool, no code, on the free tier. - [Extract Clean Web Page Text to Google Sheets](https://rendex.dev/recipes/extract-web-page-text-to-sheet-zapier): When a new URL appears in an RSS feed or a sheet, pull the clean article text — title, byline, and body — with Zapier's native Rendex Extract Text action, then log it to Google Sheets or feed it to an AI step. No scraping, no code, free tier. - [Batch Screenshot a List of URLs From a Google Sheet](https://rendex.dev/recipes/batch-screenshots-from-google-sheet-zapier): Feed a column of URLs from a Google Sheet to Zapier's native Rendex Submit Batch action and get every screenshot back in parallel — then poll with Get Batch Status and store the results. No loop to build, no code. - [Keep a Timestamped Log of Every Website Change](https://rendex.dev/recipes/website-change-log-to-sheet-zapier): Turn Rendex Watch into a permanent change log. When a monitored page changes, Zapier's native Website Changed trigger appends a timestamped row to a Google Sheet — what changed, the diff score, and links to the before, after, and cropped images. A searchable history you can sort, filter, and prove from. - [Open a Ticket When a Web Page Changes (Rendex Watch + Make)](https://rendex.dev/recipes/website-change-to-ticket-make): Monitor any page with Rendex Watch and open a Trello, Jira, or Asana ticket in Make the moment it changes — a real-Chrome before/after visual diff drives the alert, so you file work on real changes, not on noise. - [Turn Markdown into a Branded PDF in Activepieces](https://rendex.dev/recipes/markdown-to-pdf-activepieces): Render a Markdown document — a doc, changelog, or approved article — to a branded PDF inside an Activepieces flow with the native Render to Image piece. No CSS, no headless browser, and the same step is callable by your AI agents. - [Save a Scheduled Report PDF to SharePoint in Power Automate](https://rendex.dev/recipes/scheduled-report-pdf-to-sharepoint-power-automate): Render an HTML report to a PDF on a schedule and file it in SharePoint or OneDrive with Power Automate's built-in HTTP action — no custom connector. The /v1/screenshot/json + base64ToBinary path Power Automate needs, done right. - [Turn a Markdown Report into a Branded PDF in n8n](https://rendex.dev/recipes/report-to-branded-pdf-n8n): Render any Markdown report, digest, or summary into a branded PDF, PNG, and hosted share page with one n8n node using Rendex Artifact — no design tool, no PDF library. - [Archive a Daily Screenshot to Google Drive in n8n](https://rendex.dev/recipes/scheduled-screenshot-drive-n8n): Capture a full-page screenshot of any URL on a schedule and upload it to Google Drive with a timestamped filename — a hands-off visual record for compliance, marketing, or competitor tracking. - [Auto-Generate Social OG Images per Blog Post in n8n](https://rendex.dev/recipes/og-images-per-post-n8n): Mint a branded, hosted og:image URL for every blog post with one n8n workflow and Rendex Render Link — inject the title and author, get a signed image URL to drop straight into your og:image tag. No upload step. - [Extract Clean Content from a URL and Summarize It with AI in n8n](https://rendex.dev/recipes/extract-url-to-markdown-ai-n8n): Pull clean, reader-mode Markdown from any page with Rendex Extract — handling paywalls, JS apps, and cookie walls — then feed it to an LLM for a summary or straight into a RAG pipeline. One n8n workflow. - [Screenshot a URL from a Chat Message with AI in n8n](https://rendex.dev/recipes/ai-agent-screenshot-tool-n8n): Let a user ask in plain English and have AI pull the URL out of the message, then screenshot it with Rendex — a fully-wired n8n workflow that runs the moment you add credentials. - [Compare a Page Rendered from Different Countries in n8n](https://rendex.dev/recipes/geo-screenshot-compare-n8n): Capture the same URL from multiple countries in parallel with Rendex geo screenshots, then merge the results to verify localized pricing, geo-gated content, and regional CDNs — one n8n workflow. - [Screenshot a Page Behind a Login in n8n](https://rendex.dev/recipes/screenshot-behind-login-n8n): Capture an authenticated page — an internal dashboard, a gated report, a members-only view — by passing your session cookies to Rendex, so it renders the page as the logged-in you. One n8n workflow. - [Render a List to Images and Send One Email With Every Attachment](https://rendex.dev/recipes/batch-render-list-to-combined-email-make): Fan a list of records out with a Make Iterator, render each one to a PNG with Rendex, then recombine them with an Array Aggregator so a single email goes out with every image attached — the aggregate-back pattern Zapier can't do. - [Cache Render Links in a Make Data Store — Render Each Item Once](https://rendex.dev/recipes/cache-render-links-datastore-make): Store Rendex render-link URLs in a Make Data store keyed by content, so a Router renders a new item only on a cache miss and reuses the hosted URL on every hit — dedupe that cuts credits and latency, using Make's built-in database. - [Render Once, Deliver Everywhere With a Make Router](https://rendex.dev/recipes/fan-render-to-destinations-router-make): Render an image or PDF once with Rendex, then a Make Router fans it out in parallel — upload to Drive, post to Slack, and write to Airtable from a single render, each branch with its own filter. One render, many destinations. - [Self-Healing Renders in Make — Retry, Then Fall Back](https://rendex.dev/recipes/self-healing-render-error-handler-make): Wrap the Rendex HTTP module in a Make error handler so a transient failure retries with a Break directive and a permanent one falls back to a placeholder — the render step heals itself instead of dead-lettering the whole scenario. - [Give Your AI Agent a Live Screenshot Tool](https://rendex.dev/recipes/agent-screenshot-tool-mcp): Add the Rendex MCP server to Claude, Cursor, or Windsurf and the agent gains a rendex_screenshot tool — it can capture any URL, raw HTML, or Markdown as an image mid-task and see the result inline, no headless browser to run. - [Let an AI Agent Read Any Web Page as Clean Markdown](https://rendex.dev/recipes/agent-read-web-page-markdown-mcp): Give Claude, Cursor, or any MCP client the rendex_extract tool and it reads any URL as clean reader-mode Markdown — nav, ads, and boilerplate stripped, JavaScript-rendered content included — ready to summarize or drop into a RAG pipeline. - [Have an AI Agent Watch a Page for Changes](https://rendex.dev/recipes/agent-watch-page-changes-mcp): Give Claude, Cursor, or any MCP client the Rendex Watch tools and it can set up, test, run, and manage website-change monitors in conversation — validate a scope, create a watch, force a check, and read what changed, all without leaving the chat. - [Generate a Hosted Share Image from an AI Agent](https://rendex.dev/recipes/agent-hosted-og-image-mcp): Give Claude, Cursor, or any MCP client the rendex_render_link tool and it mints a signed, edge-cached image URL from a URL, HTML, or Markdown — drop it straight into an og:image tag or an src instead of handling raw image bytes. ## Use cases - [Render HTML Charts, Tables & Reports to PNG from Your Backend](https://rendex.dev/use-cases/server-side-report-rendering): Generate report deliverables server-side: send your HTML chart or financial table, get back a crisp 2× PNG, and drop it straight into the PDF or report your app already produces. One HTTP call from any language — no Chromium to install, no browser fleet to keep alive. - [Render Any Chart to a PNG From Your Backend](https://rendex.dev/use-cases/chart-to-image): Send the HTML that draws your chart — Chart.js, ECharts, Highcharts, ApexCharts, or D3 — and get back a crisp 2× PNG to drop into a PDF report, an email, or a Slack alert. One POST from any language, no on the server and no headless browser to operate. - [Convert HTML to Images with a Single API Call](https://rendex.dev/use-cases/html-to-image): Pass raw HTML — get back a pixel-perfect PNG, JPEG, or WebP. No hosted page required. Generate social cards, invoices, OG images, and email previews without running a browser. - [Render Images & PDFs Inside Your n8n Workflows](https://rendex.dev/use-cases/n8n-automation): Drop the official Rendex node into any n8n workflow to turn HTML into images, screenshot live URLs, render Markdown to a PDF, or mint a hosted og:image link. The output flows straight into Gmail, S3, Slack, or any downstream node — no Function-node glue. The same node can even schedule a page-change Watch that fires back into n8n when a page moves. - [Render Images & PDFs in Your Make.com Scenarios](https://rendex.dev/use-cases/make-automation): Use Make's generic HTTP module to call Rendex — turn HTML into images, screenshot any URL, render Markdown to a PDF, or mint a hosted og:image link — and drop the result into the next module: email, Google Drive, Airtable, or a webhook. No custom app, no code. - [Website Change Monitoring, Done For You — or Build It Yourself](https://rendex.dev/use-cases/website-monitoring): Rendex Watch monitors any URL on a schedule, renders it in real Chrome, and runs a before/after visual diff with a highlighted overlay — then alerts you by email or webhook the moment the page changes. Create a watch point-and-click in your dashboard or with one API call. Prefer to own the pipeline? The same screenshot API hands you the raw timestamped captures to diff yourself. - [Convert Any URL to a PDF with a Single API Call](https://rendex.dev/use-cases/url-to-pdf): Pass a URL or raw HTML — get back a pixel-perfect PDF. Configurable page size, margins, headers, and footers. Generate reports, invoices, and archives without running a browser. - [Give Your AI Agent Eyes on the Web](https://rendex.dev/use-cases/ai-agent-screenshots): Rendex ships a Model Context Protocol (MCP) server built from day one for AI agents. Claude, ChatGPT, Cursor, and Windsurf can capture screenshots, generate PDFs, and render HTML — as native tools. - [Generate Dynamic OG Images at Scale](https://rendex.dev/use-cases/og-image-generation): Every page deserves a unique social preview. Pass an HTML template with dynamic data — get back a perfectly sized OG image. No Puppeteer, no Vercel OG, no infrastructure. - [Generate Social Cards for Every Page](https://rendex.dev/use-cases/social-cards): Stop sharing the same generic preview image. Render unique, branded social cards from one HTML template — sized for Twitter, LinkedIn, Facebook, Instagram, and Slack — and embed them with a single hosted URL. - [Catch Visual Bugs Before Your Users Do](https://rendex.dev/use-cases/visual-testing): Capture screenshots of your app across viewports and compare against baselines. Detect layout shifts, missing elements, and style regressions automatically. - [Archive Any Webpage with a Single API Call](https://rendex.dev/use-cases/web-archiving): Capture and preserve web content as screenshots or PDFs. Timestamped, signed, and stored — for compliance, legal evidence, research, and historical records. - [Generate Multi-Page PDF Invoices from One HTML Template](https://rendex.dev/use-cases/invoice-rendering): Store one invoice template with a line-item loop, pass each invoice's data, and let long invoices flow across multiple A4 pages — Rendex returns a print-ready PDF with modern CSS, page-break control, and configurable page size and margins. No wkhtmltopdf, no Puppeteer, one call per invoice. - [Render Markdown to an Image or PDF — No CSS Required](https://rendex.dev/use-cases/markdown-rendering): POST your Markdown, get back a styled PNG, JPEG, WebP, or PDF. Rendex applies GitHub-flavored typography server-side, so headings, tables, code blocks, and blockquotes look right with zero styling. Ideal for AI agents — which already speak Markdown — and for READMEs, changelogs, release notes, and status reports. - [One Template + Data → Invoices, Reports & Certificates](https://rendex.dev/use-cases/data-templating): Send an HTML or Markdown template with {{placeholders}} and a JSON data object. Rendex fills it with logic-less Mustache — loops, nested fields, HTML-escaped by default — and renders the result to an image or PDF. Design the layout once, generate thousands of personalized documents. - [Capture Bot-Protected Sites — Cloudflare, DataDome, Akamai](https://rendex.dev/use-cases/bot-protected-sites): Rendex rotates a realistic browser user-agent stack for sites behind anti-bot systems and flags the capture when an interstitial is detected — so your pipeline never silently stores a block page as a screenshot. - [Render Pages as Seen from 50+ Countries](https://rendex.dev/use-cases/geo-targeted-rendering): Verify localized content, regional pricing, geo-gated compliance experiences, and country-specific A/B tests without spinning up proxies or VPNs. One parameter routes your capture through a residential IP in the country of your choice. - [Screenshot Pages Behind a Login Wall](https://rendex.dev/use-cases/authenticated-page-capture): Inject session cookies, bearer tokens, and custom headers to render authenticated dashboards, private reports, gated content, and internal tools. From Starter plan and above. - [Async & Batch Rendering with Signed Webhooks](https://rendex.dev/use-cases/async-batch-rendering): Fire 500 URLs at a single endpoint. Receive HMAC-signed webhook callbacks as each capture finishes — or poll job status on demand. No workers to run, no queues to monitor. - [Safe URL Rendering — Backed by Google Safe Browsing](https://rendex.dev/use-cases/safe-url-rendering): Every URL is checked against Google Safe Browsing before Rendex spins up a browser. Known malware, phishing, and social-engineering sites are refused with a structured error — no hostile payload ever reaches your pipeline. - [Capture the Whole Page, Not Just the Viewport](https://rendex.dev/use-cases/full-page-screenshots): Pass fullPage: true and Rendex auto-scrolls the page to trigger lazy-loaded images, IntersectionObserver-based animations, and deferred content — then returns one stitched PNG, JPEG, or WebP of the entire document. - [Turn Any URL into Clean Markdown for Your LLM](https://rendex.dev/use-cases/url-to-markdown): POST a URL, get back reader-mode Markdown, JSON, or article HTML — extracted from the fully-rendered page, so JavaScript-heavy sites work too. The fastest way to feed an AI agent or RAG pipeline clean text instead of raw markup. - [Screenshot Any Page on Any Device — One Parameter](https://rendex.dev/use-cases/responsive-device-testing): Set device: "iphone_15" and Rendex renders at that device's exact viewport, pixel density, and user-agent. Capture desktop, iPhone, Pixel, and iPad in one pass for responsive QA and mobile previews — no device lab, no hand-tuned browser descriptors. - [Dynamic OG Images from a URL You Paste Into ](https://rendex.dev/use-cases/hosted-og-images): Call /v1/render/link, get back a signed URL, and drop it into or an tag. Rendex renders the card the first time it's fetched, caches the bytes on the edge, and serves every repeat crawl from cache — no image hosting, no storage bucket, no re-render bill. - [Screenshots Without the Cookie Banner in the Way](https://rendex.dev/use-cases/clean-screenshots): Set blockCookieBanners: true to auto-hide consent walls from common CMPs, and pass hideSelectors to remove any chat widget, popup, or sticky bar by CSS selector. The capture shows the page your users came for — not the overlay covering it. - [Capture Full-Resolution, Ship a Right-Sized Thumbnail](https://rendex.dev/use-cases/image-thumbnails): Add resizeWidth (and optionally resizeHeight) and Rendex downscales the rendered image before it returns — preserving aspect ratio, never upscaling. Generate gallery thumbnails, link previews, and responsive image sets from a single render call. ## Blog - [Add Screenshot Capability to Windsurf via MCP](https://rendex.dev/blog/windsurf-mcp-screenshot): windsurf mcp screenshot setup: add the Rendex MCP server to Windsurf so Cascade can capture any URL as PNG, JPEG, or PDF without leaving the editor - [How to Convert URLs to PDF in Node.js](https://rendex.dev/blog/url-to-pdf-nodejs): url to pdf node.js guide: use the Rendex JS SDK to capture any URL as a PDF with A4 format, custom margins, and print backgrounds. Includes a batch example. - [SPA Screenshot: waitFor Strategies for React, Vue, Svelte](https://rendex.dev/blog/spa-screenshot-waitfor): spa screenshot waitfor guide: waitForSelector and waitUntil patterns for React, Vue 3, and Svelte apps, with working code examples for each framework - [How to Make Screenshot APIs Fast: 5 Optimizations](https://rendex.dev/blog/screenshot-api-performance): 5 screenshot api performance optimizations: WebP format, viewport sizing, blockResourceTypes, wait strategies, and batch calls. Code and numbers for each. - [How AI Agents Can Screenshot and Analyze Web Pages](https://rendex.dev/blog/ai-agent-screenshots-tutorial): An AI agent web screenshot loop pairs Rendex captures with Claude's vision API so it can judge a live page and decide what to check next - [7 Ways to Generate OG Images (APIs, Libraries, Services)](https://rendex.dev/blog/best-og-image-generators): og image generator roundup: 7 options from @vercel/og and Satori to hosted APIs, with code examples and honest trade-offs for each approach - [Bulk Screenshot and PDF Generation with a Batch API](https://rendex.dev/blog/batch-rendering-api): Batch screenshot api guide: submit up to 500 URLs in one request, poll for results, and receive a webhook when the batch settles. - [Async Screenshot API With Webhook Delivery](https://rendex.dev/blog/async-screenshot-webhooks): Async screenshot API guide: submit a non-blocking capture with a webhookUrl, get an HMAC-signed callback when it settles, and verify it in Node or Python. - [Add a Cursor MCP Screenshot Tool in Minutes](https://rendex.dev/blog/mcp-screenshot-cursor): Set up a Cursor MCP screenshot tool so the editor's AI can capture any URL as PNG, JPEG, WebP, or PDF. Full config for npx and the hosted server. - [Render HTML and Screenshots in Zapier (No-Code)](https://rendex.dev/blog/zapier-render-no-code): Zapier screenshot and PDF automation with the native Rendex app: capture URLs, render HTML templates, and generate PDFs across 7,000+ apps with no code. - [Rendex Watch: Visual Website-Change Monitoring](https://rendex.dev/blog/rendex-watch-launch): Website change monitoring inside Rendex: watch any URL and get a real-Chrome before/after visual diff with an overlay, plus email or webhook alerts. - [Rendex Is Now a Verified n8n Community Node](https://rendex.dev/blog/n8n-verified-community-node): The Rendex n8n node is verified and live on n8n Cloud. Search the canvas to capture screenshots, generate PDFs, and extract web content in any workflow. - [Generate Invoices from an HTML Template and JSON](https://rendex.dev/blog/templated-documents-api): Generate PDF from template: write one HTML template with Mustache placeholders, pass a JSON data object per document, and get rendered invoices back - [Automate Invoice & Document Generation in n8n with Rendex](https://rendex.dev/blog/n8n-invoice-automation): Use the n8n invoice automation node from Rendex to render an HTML invoice template to PNG or PDF on a trigger, then email or store it. No code. - [Render a Chart to an Image on the Server (Node + Python, 2026)](https://rendex.dev/blog/render-chart-to-image-server-side): Turn a chart into a server-side PNG — Chart.js/node-canvas, matplotlib, pandas, Plotly/kaleido, ECharts SSR, or an HTML-render API. Working code and the honest trade-offs. - [Render an HTML Table to PNG in Python (5 Ways, 2026)](https://rendex.dev/blog/render-html-table-to-png-python): Convert an HTML table or report to a PNG from Python — Rendex API, html2image, Playwright, imgkit/wkhtmltoimage, and Selenium. Working code plus when to use each. - [Best HTML-to-PDF Tools in 2026 (APIs + Libraries)](https://rendex.dev/blog/best-html-to-pdf-tools-2026): Compare the best HTML-to-PDF tools in 2026: Rendex API, DocRaptor, PDFShift, wkhtmltopdf, and Playwright. Pricing, CSS support, and when to use each - [How to Render HTML to Images in Make.com (No-Code)](https://rendex.dev/blog/make-html-to-image): Render HTML to image in Make.com using the generic HTTP module and the Rendex API. POST your markup, get a PNG or PDF back, use it downstream. No code. - [Debugging Headless Chrome Memory Leaks](https://rendex.dev/blog/headless-chrome-memory-leaks): headless chrome memory leak debugging: four causes, three fixes, and a decision framework for when to drop self-hosted Chrome entirely - [How to Convert Markdown to PDF with an API (2026)](https://rendex.dev/blog/markdown-to-pdf-api): Convert markdown to pdf api: pass raw Markdown, get back a styled PDF or PNG in one HTTP request. curl, Python SDK, and JS SDK examples included - [Why Self-Hosted Puppeteer Costs More Than a Screenshot API](https://rendex.dev/blog/puppeteer-cost-production): Puppeteer vs screenshot api: real cost breakdown of AWS EC2, Chrome memory, and maintenance time, plus honest advice on when DIY actually wins - [Building a PDF Report Endpoint with FastAPI](https://rendex.dev/blog/fastapi-pdf-reports): fastapi pdf generation tutorial: build a FastAPI endpoint that renders HTML to PDF using the Rendex API, with async support and no Chromium dependency - [Generating PDFs in Rails with an API (No wkhtmltopdf)](https://rendex.dev/blog/rails-pdf-generation): Use the rails pdf generation api to replace wkhtmltopdf in Rails: Faraday service object, controller integration, and async job examples - [Capture Website Screenshots in Django with the Rendex API](https://rendex.dev/blog/django-screenshot-tutorial): Use the django screenshot api with the Rendex Python SDK. Learn how to capture screenshots in a Django view, management command, and batch workflow - [Generating Social Cards in Next.js Without Vercel Lock-in](https://rendex.dev/blog/nextjs-og-images-with-api): Generate Next.js OG images with an API and skip the @vercel/og dependency. Works on Netlify, Railway, or any host with 10 lines of code. - [Website Monitoring with Automated Screenshots](https://rendex.dev/blog/website-monitoring-screenshots): Set up website monitoring screenshots with a Cloudflare Workers cron: capture key pages hourly, diff visually, and alert on changes. - [Automating Invoice Generation with HTML-to-PDF](https://rendex.dev/blog/html-to-pdf-invoices): Build an html to pdf invoice api pipeline: Stripe webhook converts payments to PDF invoices delivered to customers automatically. - [How to Build a Visual Regression Testing Pipeline](https://rendex.dev/blog/visual-regression-testing): Visual regression testing API workflow: capture production and PR preview screenshots, diff with pixelmatch, block bad merges in GitHub Actions. - [How to Generate Dynamic OG Images with an API](https://rendex.dev/blog/dynamic-og-images-api): Generate dynamic OG images with an API for Next.js, Astro, and Nuxt. No Vercel lock-in, works anywhere, and takes under 10 lines of code to integrate. - [Best Screenshot API in 2026: An Honest Comparison](https://rendex.dev/blog/best-apis-compared-2026): Compare the best screenshot API options in 2026. Rendex, ScreenshotOne, and Urlbox rated on pricing, developer experience, and MCP support. - [Rendering API vs Screenshot API: What's the Difference?](https://rendex.dev/blog/rendering-vs-screenshot): A rendering API converts web content to PNG, PDF, or structured output. See how rendering APIs differ from screenshot APIs and when to use each. - [MCP Tools for Web Rendering: A Developer Guide](https://rendex.dev/blog/mcp-rendering-guide): Configure Rendex as an MCP rendering tool for AI agents. Claude Desktop and Cursor setup with the rendex_screenshot tool and working code examples - [How to Generate PDFs from URLs in Python (2026)](https://rendex.dev/blog/url-to-pdf-python): Learn 4 ways to convert URLs to PDFs with Python — Rendex API, Playwright, Selenium, and wkhtmltopdf. Complete code examples with async batch support. - [How to Convert HTML to an Image with an API (2026)](https://rendex.dev/blog/html-to-image-api): 3 ways to convert HTML to images. Working code in Python, JavaScript, and cURL for social cards, OG images, and invoices - [How to Capture Website Screenshots with Python in 2026](https://rendex.dev/blog/capture-screenshots-python): Learn 4 ways to capture website screenshots with Python — Rendex API, Playwright, Selenium, and Pyppeteer. Complete code examples with async support. ## Comparisons - [Best Screenshot APIs 2026](https://rendex.dev/compare/best-screenshot-apis-2026) - [Best HTML-to-Image APIs 2026](https://rendex.dev/compare/best-html-to-image-apis-2026) - [Best URL-to-PDF APIs 2026](https://rendex.dev/compare/best-url-to-pdf-apis-2026) - [Best Rendering APIs for AI Agents 2026](https://rendex.dev/compare/best-rendering-apis-for-ai-agents-2026) - [Screenshot API for AI Agents](https://rendex.dev/compare/screenshot-api-for-ai-agents) - [Rendex vs ScreenshotOne](https://rendex.dev/compare/rendex-vs-screenshotone) - [Rendex vs Urlbox](https://rendex.dev/compare/rendex-vs-urlbox) - [Rendex vs ApiFlash](https://rendex.dev/compare/rendex-vs-apiflash) - [Rendex vs Microlink](https://rendex.dev/compare/rendex-vs-microlink) - [Rendex vs CaptureKit](https://rendex.dev/compare/rendex-vs-capturekit) - [Rendex vs ScreenshotLayer](https://rendex.dev/compare/rendex-vs-screenshotlayer) - [Rendex vs Puppeteer](https://rendex.dev/compare/rendex-vs-puppeteer) - [Rendex vs Playwright](https://rendex.dev/compare/rendex-vs-playwright) - [Rendex vs HTML/CSS to Image](https://rendex.dev/compare/rendex-vs-htmlcsstoimage) - [Rendex vs Bannerbear](https://rendex.dev/compare/rendex-vs-bannerbear) - [Best Website Monitoring Tools 2026](https://rendex.dev/compare/best-website-monitoring-tools-2026) - [Rendex Watch vs Visualping](https://rendex.dev/compare/rendex-watch-vs-visualping) - [Rendex Watch vs Distill.io](https://rendex.dev/compare/rendex-watch-vs-distill) - [Rendex Watch vs Hexowatch](https://rendex.dev/compare/rendex-watch-vs-hexowatch) - [Rendex Watch vs Wachete](https://rendex.dev/compare/rendex-watch-vs-wachete) - [Rendex Watch vs ChangeTower](https://rendex.dev/compare/rendex-watch-vs-changetower) - [Rendex Watch vs Fluxguard](https://rendex.dev/compare/rendex-watch-vs-fluxguard) - [Rendex Watch vs Versionista](https://rendex.dev/compare/rendex-watch-vs-versionista) - [Rendex Watch vs changedetection.io](https://rendex.dev/compare/rendex-watch-vs-changedetection) - [Screenshot in n8n: Node vs HTTP Request](https://rendex.dev/compare/n8n-screenshot-node) ## Pricing - [Pricing page](https://rendex.dev/pricing): Free 100/mo, Starter $69/mo for 10K (hard cap), Pro $179/mo for 100K (hard cap), Enterprise custom. One key covers every endpoint — screenshots, PDF, OG images, extraction, batch, and Watch ## Optional - [Status](https://rendex.dev/status) - [Changelog](https://rendex.dev/changelog) - [Privacy](https://rendex.dev/privacy) - [Terms](https://rendex.dev/terms)