Rendex
Changelog

What's new in Rendex

New features, improvements, and fixes for the Rendex rendering API.

  1. feature

    Watch tells you what changed — AI summaries, crop-to-change & any-change by default (1.8.0)

    • AI "what changed" summary: every Watch change now carries a one-line, plain-English description of what changed — in the watch.changed webhook (a new summary field), the alert email, and the dashboard. A free templated line ships on every plan (including for visual-only changes with no text delta); Pro and Enterprise can opt a watch into a Workers-AI-written sentence.
    • Crop-to-change: change alerts now lead with a tight crop of exactly what changed instead of a full-page overlay. The watch.changed webhook gains cropUrl (a signed image cropped to the change) and changedRegion (normalized 0..1 coordinates of where on the page it changed); the email leads with the crop plus a "near the top / middle / bottom of the page" hint and keeps the full-page overlay one click away.
    • Any-change detection by default: diffMode now defaults to "both" (visual + text) across the API, SDKs, MCP, n8n, Zapier, and Make — a new watch catches any change out of the box. Detection is scale-invariant, so a small change far down a very long page is still caught rather than lost in a whole-page average.
    • Full-resolution visual diff on tall pages: long single-page sites are now compared at full resolution (segmented internally), so subtle changes below the fold are detected reliably.
    • Available everywhere Watch is: the REST API, the JavaScript and Python SDKs (createWatch/updateWatch expose the AI-summary opt-in; verifyWebhook surfaces summary, cropUrl, and changedRegion), the MCP tools, and the n8n, Zapier, and Make integrations.
  2. feature

    account() in the SDKs + native Account & Artifact in n8n and Zapier

    • rendex-js and rendex-python 1.6.0 add account() — one call (GET /v1/account) that returns your plan, this month's usage (used / limit / remaining and the reset date), the per-minute rate limit, and a recommended upgrade link. Read-only and free; it never spends a credit.
    • The n8n node and Zapier app (1.7.0) gain native Account and Artifact operations: read your plan and usage, and turn Markdown or HTML into a branded PDF + PNG + hosted share link in one step without dropping to a raw HTTP call.
  3. launch

    render_artifact + an OAuth-connected remote MCP for ChatGPT, Claude & any agent

    • render_artifact: turn Markdown or HTML into a branded, downloadable artifact — a PDF, a PNG, and a hosted share page — in one call (POST /v1/artifact). Apply a logo, accent color, font, header, and footer, and choose the PDF page size, orientation, and margins. Built for agent outputs: reports, invoices, summaries, release notes, and dashboards. Available in the API, the JavaScript and Python SDKs, and MCP.
    • Remote MCP over OAuth 2.1: connect Rendex to ChatGPT, Claude, Cursor, or your own agent at https://mcp.rendex.dev/mcp with no API key — sign in once with your Rendex email and each agent bills against your own plan and credit pool (authorization-code + PKCE). A static Authorization: Bearer rdx_ key still works too.
    • rendex_account: a read-only MCP tool that reports your plan, this month's usage and reset date, and a one-tap upgrade link — so an agent can answer "how much have I used, and how do I get more?" without leaving the chat.
  4. feature

    Rendex Watch — monitor any page, now across SDKs, MCP, n8n & Zapier

    • Rendex Watch monitors a URL on a schedule and detects when it changes — a real-Chrome before/after visual diff (with a highlighted overlay), an extracted-text diff, or both — using the same rdx_ key and shared credit pool as screenshots, PDF, and extraction.
    • REST API: full CRUD under /v1/watches — create, list, get, update (pause/resume/re-point), delete, run-now, read run history with signed before/after/overlay image URLs, and POST /v1/watches/test to dry-run a config before saving.
    • SDKs: the JavaScript and Python SDKs add createWatch/listWatches/getWatch/updateWatch/deleteWatch/runWatch/listWatchRuns/testWatch, plus a verifyWebhook() helper that validates the HMAC-signed watch.changed / watch.recovered / watch.error events.
    • MCP: native watch_create / watch_list / watch_get / watch_run / watch_test / watch_runs / watch_delete tools so AI agents can set up and read monitors.
    • n8n & Zapier: a native Watch resource (create/get/list/update/delete/run) and a change trigger — the 'Rendex Watch Trigger' polling node in n8n and the 'Website Changed' trigger in the Zapier app — that starts a workflow when a monitored page changes.
    • Alerts: change events are delivered as HMAC-signed webhooks (Starter and above) and email (every plan). Plan walls are frequency, watch count, and the webhook channel — the visual + text diff itself is available on every plan.
  5. feature

    Hosted render URLs, URL→Markdown extraction, device presets & resizing

    • Hosted rendering: mint a signed render URL with POST /v1/render/link and drop it straight into <meta property="og:image"> — no backend, no storage on your side. It renders on the first request and serves a cached copy on every repeat, so a widely-shared link costs one render, not one per crawl.
    • Or set hosted:true on a screenshot request to get a CDN-backed URL back instead of the raw image bytes.
    • Content extraction: POST /v1/extract turns any URL into clean Markdown, JSON, or article HTML — pulled from the fully-rendered page, so it works on JavaScript-heavy sites. Add extract:true to a /v1/screenshot/json call to get the image and the extracted text in a single request.
    • Device presets: set device to desktop, iphone_15, iphone_se, pixel_8, ipad, or ipad_pro to capture at that device's viewport, scale, and user agent with one parameter.
    • Output resizing: resizeWidth / resizeHeight downscale the result (aspect ratio preserved when you set only one) — handy for thumbnails and fixed-size slots.
    • hideSelectors removes specific elements before capture, and blockCookieBanners hides common consent walls — both available on every plan.
    • Hosted render links and extraction are available across the API, the JS and Python SDKs, MCP, and Zapier; the new capture options (device, resize, hideSelectors, blockCookieBanners) are also in the n8n node.
  6. improvement

    Stricter URL & webhook validation — private addresses now rejected

    • URL, webhook, and batch validation now resolve DNS and reject any hostname that points at a private or internal IP — so a public-looking domain can no longer be pointed at an internal address
    • Applies to the page navigation, every subresource the page loads, webhook callbacks, batch URLs, and custom S3 storage endpoints
    • Resolved checks use Cloudflare's 1.1.1.1 resolver and fail closed on the request's primary target
  7. improvement

    Clearer template errors, dark-mode Markdown, and output limits

    • Malformed Mustache templates now return a clear 400 validation error that names the syntax problem, instead of a generic 500
    • darkMode now restyles Markdown renders with a dark theme — previously it was a no-op on the default Markdown stylesheet
    • Batch requests reject html / markdown / data in defaults with a 400 instead of silently ignoring them — batch stays URL-only
    • Total rendered output size is now capped so large templated documents stay fast and predictable (413 if exceeded)
  8. feature

    Mustache data templating — fill {{placeholders}} in HTML or Markdown via a data object

    • Pass a data object alongside html or markdown and Rendex renders it as a logic-less Mustache template before capture — generate invoices, reports, certificates, and cards from a single reusable template
    • {{var}} interpolation is HTML-escaped by default; {{{var}}} opts in to raw output; {{#items}}…{{/items}} loops over arrays; {{^x}} inverted sections; {{a.b}} nested access
    • data is valid only with html or markdown — combining it with url returns a 400 validation error; serialized payload capped at 256 KB
    • Works across all output formats (PNG, JPEG, WebP, PDF) and the /v1/screenshot/json endpoint
  9. feature

    Markdown input support — render Markdown straight to image or PDF

    • POST markdown to /v1/screenshot and Rendex converts it to a styled HTML document, then renders it to PNG, JPEG, WebP, or PDF
    • Sensible default typography out of the box — no CSS or templating required
    • Ideal for AI agents (which emit Markdown natively), READMEs, and docs
    • SDK shortcuts included — renderMarkdown / render_markdown, or pass markdown to screenshot directly; mutually exclusive with url and html
  10. improvement

    Usage now pools per account — predictable, no surprises

    • Monthly credits and per-minute rate limits now pool across every API key on your account — extra keys share one quota, they never multiply it
    • Hit a plan limit and the API returns a clear upgrade path (upgrade_url field + Link header) instead of a generic error, so your code can react
    • Free tier now includes 1 API key; Starter includes 5 and Pro includes 10
    • Hard caps stay hard on every plan — no overage billing, ever
  11. feature

    HTML → Image is now first-class in the SDKs

    • Python SDK now renders raw HTML to images — new render_html(html, **options) plus an html= keyword on screenshot() / screenshot_json()
    • TypeScript SDK adds renderHtml(html, options) and renderHtmlJson(html, options) convenience methods
    • Both SDKs lead with the HTML→image workflow — turn an invoice, social card, OG image, or email template into a PNG/PDF without hosting a URL
    • Fully backward compatible — existing url-based calls are unchanged
  12. feature

    Rendex for n8n — Verified Community Node Live

    • n8n-nodes-rendex@1.0.3 approved by the n8n team and live on n8n Cloud
    • Drag 'Rendex' onto your canvas — no manual install required (enable Verified Community Nodes in Admin Panel if needed)
    • Full v1.0.0 surface — Screenshot Capture (sync + async), Job status, Batch submit + status, PDF generation
    • usableAsTool: true — call Rendex directly from n8n AI Agent workflows
    • Bearer-token credential with /v1/credential-check probe; 28-parameter Additional Options collection covers viewport, format, wait conditions, and full-page rendering
  13. feature

    Rendex for Zapier — Public App Live

    • Search 'Rendex' on zapier.com to connect — no code required
    • Screenshot Capture action — returns the rendered image plus job metadata in one step
    • Capture Async and Submit Batch actions — fire-and-forget jobs with polling-trigger pickup when each one finishes
    • Generate PDF action — render any URL or raw HTML to a PDF with custom page size, margins, and orientation
    • New Completed Screenshot trigger — kicks off a Zap whenever an async or batch job lands
    • Job and Batch lookup searches with dynamic dropdowns — find any past job by its label without copy-pasting IDs
  14. feature

    n8n Community Node — Published to npm

    • Community node published as n8n-nodes-rendex on npm — verified marketplace listing is currently under n8n review
    • Screenshot Capture operation — returns image or PDF as a binary output plus JSON metadata in one node
    • Screenshot Capture Async operation — submits a job and returns immediately, with optional HMAC-signed webhook callback on completion
    • Batch Submit operation — queue up to 500 URLs per request with shared defaults and a completion webhook
    • Job and Batch Get Status operations — poll async jobs or batches for progress and signed result URLs
    • Full v1.0.0 parameter surface — viewport, wait strategy, ad and resource blocking, CSS and JavaScript injection, cookies, custom headers, PDF page options, geo-targeting, and element selector
  15. feature

    v1.0.0 — Full Rendering Platform

    • Batch capture — submit up to 500 URLs in a single request and process them in parallel
    • Async pipeline — fire-and-forget captures with job polling or webhook callbacks on completion
    • Geo-targeted screenshots — capture pages as seen from any country, city, or state (Pro/Enterprise)
    • PDF output — render any page or raw HTML to PDF with configurable page size, margins, and orientation
    • CSS and JavaScript injection — inject custom styles or scripts before capture (up to 50KB each)
    • Cookie and header injection — set cookies, custom headers, and user agent for authenticated page captures
    • Webhook notifications — receive a callback when async and batch jobs complete
    • HTML rendering — render raw HTML directly without a URL, perfect for invoices and social cards
    • Bring Your Own S3 — connect your own S3-compatible bucket for async capture results (Pro/Enterprise)
  16. feature

    v0.4.0 — Reliability & Premium Tools

    • Full-page auto-scroll — lazy images, scroll-triggered animations, and deferred content now load automatically before capture
    • Free screenshot tool upgraded with viewport presets, format picker, copy-to-clipboard, and auto-scroll support
  17. feature

    v0.3.0 — Official SDKs & Header Fix

    • JavaScript/TypeScript SDK — npm install @copperline/rendex — zero dependencies, 3 lines to first screenshot
    • Python SDK — pip install rendex — sync and async support, context manager for connection reuse
    • Both SDKs support all API features: PNG, JPEG, WebP, element capture, dark mode, ad blocking
    • Fixed missing x-rendex-format header on POST /v1/screenshot
  18. feature

    v0.2.0 — WebP, GET Endpoint & Element Capture

    • WebP output format for 30% smaller file sizes — set format to webp
    • New GET endpoint — capture screenshots with a simple URL, no POST body needed
    • Element selector — capture specific page elements instead of full pages
  19. improvement

    System Status Page

    • Live API status banner shows automatically when service is degraded or down
    • Status page at rendex.dev/status with real-time health checks and latency
  20. launch

    V1 Launch

    • Screenshot API live at api.rendex.dev with PNG/JPEG capture, dark mode, full-page, ad blocking
    • MCP server at mcp.rendex.dev for AI agents (Claude, Cursor, Windsurf)
    • Dashboard with API key management, usage analytics, billing, and request logs
    • Documentation with quick start guides, API reference, and MCP setup instructions
    • Free tier: 100 calls/month, Starter $69/mo, Pro $179/mo