Documentation
Chart-Output
Chart-Output renders Chart.js configs into PNG, SVG, WebP, JPEG, or PDF via a single POST request — no headless browser required.
5-minute path to your first chart
- 1Sign up → go to API Keys → click Create key. You get a
pk_test_…sandbox key immediately. - 2Follow the Quick Start — copy-paste one cURL command, get a PNG back.
- 3Open the Playground to preview live changes, then copy the generated spec into your codebase.
What it does
You POST a JSON object describing a chart — type, data, colours, dimensions — and the API returns the rendered image as binary bytes. No browser. No Puppeteer. No headless Chromium process to manage.
The JSON structure follows Chart.js conventions. If you already use Chart.js in the browser, the learning curve is close to zero: the same type, data, and options fields work.
Key concepts
Render endpoint →
POST /api/v1/render — the only endpoint you need for generating charts. GET variant available for <img src> embeds.
Chart spec →
JSON with type, data.labels, data.datasets[], and optional Chart.js options. Validated with Zod — every error includes a path.
Brand kits →
Apply colors, fonts, and logos consistently across renders without touching each spec. Six presets included.
Card composition →
Wrap your chart in a full card shell — header, KPI strip, footer — rendered as a single image. Great for emails and Slack.
Output formats →
PNG (default), JPEG, SVG, WebP, and PDF. PNG is the right choice for email. PDF requires the Business plan.
returnUrl →
Set returnUrl: true to get a CDN URL back instead of raw bytes — useful when you need a stable image URL for embedding.
Questions? hello@chart-output.com