Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

To render a template at a requested size, send the template ID, dynamic data, and documented width and height overrides to your provider’s render endpoint. “Any size” is conditional: providers set minimums, maximums, units, and quota rules, and changing the canvas aspect ratio can move percentage-based layers and pinned elements. Treat the provider’s current API reference—not a generic recipe—as the contract.

What “any size” means in a template API

Template-rendering APIs separate a reusable design from the values inserted into it. Your request normally identifies a template, supplies data for text or image layers, and optionally overrides the output dimensions. The service then returns a rendered image, PDF, HTML, JSON description, or a URL, depending on the endpoint.

There is no universal render URL, authentication header, request schema, dimension unit, response type, or output-format list. Some services measure dimensions in pixels; others may use physical units or page presets. Confirm all of these details in the selected provider’s reference before writing client code.

Plan the request before writing code

1. Identify the template and endpoint

Find the template ID in the provider dashboard or API. Templid, for example, documents a POST /templates/{templateId}/render route. Another vendor may use a job endpoint, a versioned template URL, or a render action beneath a project resource. Copy the exact route and authentication method from that vendor.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

2. Map dynamic content to the template schema

Templates expose named fields, layers, or variables. An API may accept a single JSON data object, explicit layer overrides, or both. Use the exact field names and value types defined by the template. A field called headline is not interchangeable with title; an image layer may require a public URL rather than a base64 string.

3. Decide whether dimensions are overrides or fixed presets

Only send width and height when the endpoint documents them. Templated’s documentation specifies 100–5000 pixels for each dimension. That range is a constraint for that provider, not an industry-wide limit. If your requested value falls outside the documented range, clamp it, choose a preset, or redesign the template.

4. Choose a supported format

Format support is endpoint-specific. Templated lists JPG, PNG, WebP, PDF, MP4, and HTML. RenderStack documents PNG, JPEG, and PDF. A provider can support a format for image rendering but not for multi-page documents, so check the particular operation you are calling.

5. Determine the response model

A successful render can be returned as binary bytes, JSON containing rendered fields, or a URL/object that describes a generated file. Templid documents rendered subject, HTML, and text in JSON and a binary PDF response for PDF rendering. Do not parse every response as JSON or write every response directly to an image file without checking the endpoint contract and Content-Type.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Sale
HTML and CSS: Design and Build Websites
  • HTML CSS Design and Build Web Sites
  • Comes with secure packaging
  • It can be a gift option

Request dimensions safely

Width and height are usually output-canvas dimensions

Width and height generally describe the final canvas, not a scale factor applied after rendering. If the service documents a separate scale control, use it for density or resolution. Templated documents a scale range of 0.1–2.0. Keep the distinction clear: a 1200×630 canvas at scale 2 can produce different pixel density than a 2400×1260 canvas, depending on the provider’s implementation.

Aspect ratio can change layout

RenderStack warns in its documentation: “When you override the width or height at render time (or use the sizes array for multi-page PDFs), the canvas aspect ratio may differ from the template’s native proportions.” That difference matters when layers use percentages, anchors, pin offsets, or responsive constraints. A headline that fits at 1200×630 may wrap at 800×800; a logo pinned to a corner can keep its offset while the central artwork stretches.

  • Keep width and height in the template’s native ratio when you need predictable composition.
  • Create separate templates for materially different ratios such as social cards, square thumbnails, and portrait posters.
  • Test the smallest and largest dimensions you will actually request, not only the design preview.
  • Check text wrapping, image cropping, overflow, transparent margins, and pinned elements in automated validation.

A provider-neutral request shape

The following illustrates the fields many APIs use. It is a model, not a universal schema; rename fields to match your provider.

{
  "data": {
    "headline": "Launch day",
    "subhead": "Everything is ready",
    "hero_image": "https://example.com/assets/hero.jpg"
  },
  "width": 1200,
  "height": 630,
  "format": "png",
  "scale": 1
}

Send only documented options. Unknown fields may be ignored, rejected, or interpreted differently after an API version change.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Complete client examples

cURL (Templid-style endpoint)

curl -X POST "https://api.example.com/templates/TEMPLATE_ID/render" 
  -H "Authorization: Bearer $API_TOKEN" 
  -H "Content-Type: application/json" 
  --data '{
    "data": {
      "headline": "Launch day",
      "subhead": "Everything is ready"
    },
    "width": 1200,
    "height": 630,
    "format": "png"
  }' 
  --output render.png

Replace the host, token header, template ID, and field names with the provider’s documented values. If the endpoint returns JSON or a file URL, save and process that response instead of assuming render.png is an image.

Python

import requests

endpoint = "https://api.example.com/templates/TEMPLATE_ID/render"
payload = {
    "data": {
        "headline": "Launch day",
        "subhead": "Everything is ready"
    },
    "width": 1200,
    "height": 630,
    "format": "png"
}

response = requests.post(
    endpoint,
    headers={
        "Authorization": "Bearer YOUR_API_TOKEN",
        "Content-Type": "application/json",
    },
    json=payload,
    timeout=90,
)
response.raise_for_status()

content_type = response.headers.get("content-type", "")
if "application/json" in content_type:
    result = response.json()
    print(result)
else:
    with open("render.png", "wb") as output:
        output.write(response.content)

Node.js

const endpoint = 'https://api.example.com/templates/TEMPLATE_ID/render';
const payload = {
  data: {
    headline: 'Launch day',
    subhead: 'Everything is ready'
  },
  width: 1200,
  height: 630,
  format: 'png'
};

const res = await fetch(endpoint, {
  method: 'POST',
  headers: {
    Authorization: `Bearer ${process.env.API_TOKEN}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify(payload)
});

if (!res.ok) {
  throw new Error(`Render failed: ${res.status} ${await res.text()}`);
}

const type = res.headers.get('content-type') || '';
if (type.includes('application/json')) {
  console.log(await res.json());
} else {
  const bytes = Buffer.from(await res.arrayBuffer());
  await import('node:fs/promises').then(fs => fs.writeFile('render.png', bytes));
}

Provider-specific differences to compare

Capability Why it matters What to verify
Dimension override Determines whether one template can serve multiple sizes Width/height names, units, minimum and maximum values
Scale Controls density independently of canvas geometry on some services Allowed range; whether it changes output pixels or only rendering quality
Formats Controls compatibility and file size Supported formats per endpoint, including PDF or video cases
Aspect-ratio behavior Can alter wrapping, crops, percentages, and offsets Whether the service stretches, crops, letterboxes, or reflows
Response shape Changes download and parsing code Binary response, JSON fields, URL, or asynchronous job
Quota accounting Affects cost and retry strategy Whether each page or render counts; retry and batch rules

Templated states that each page render counts toward its API quota. RenderStack documents multiple PDF sizes through a sizes array. Jasper documents image-template rendering with dynamic layer or background updates and scale, but the cited material does not establish arbitrary width and height controls for that workflow.

Validate renders in production

  1. Validate requested dimensions before sending: reject non-integers, zero values, and values outside the provider’s documented bounds.
  2. Validate data: require fields that have no safe fallback and enforce maximum text lengths before rendering.
  3. Inspect the response’s status and content type. Log the provider request ID if one is returned.
  4. For binary output, verify file signatures and dimensions. For JSON or URL responses, fetch the generated asset and perform the same checks.
  5. Store a small set of golden renders for each important ratio. Compare them after template edits or API-version changes.
  6. Keep retries bounded. A timeout may mean the provider completed the job; retrying blindly can consume another quota unit or create duplicate work.

Troubleshooting common failures

400 or validation error

Usually a missing required field, wrong data type, unsupported format, or dimension outside the documented range. Compare the payload with the template schema, then test with the provider’s smallest valid request.

401 or 403 authentication error

Check the token, header spelling, project permissions, and whether the template belongs to the same account or workspace. Do not put long-lived tokens in browser JavaScript.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Sale
Web Design with HTML, CSS, JavaScript and jQuery Set
  • Brand: Wiley
  • Set of 2 Volumes
  • A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers

404 template or route not found

Confirm the template ID, API version, region, and HTTP method. A preview URL is not necessarily a render endpoint.

Image or font missing

Verify that remote assets are reachable by the provider and that private URLs include an accepted authentication mechanism. Prefer assets the service can fetch deterministically; avoid expiring URLs shorter than the render lifetime.

Text wraps or elements move at a new size

This is commonly an aspect-ratio effect, not a transport failure. Adjust constraints, supply a size-specific template, shorten copy, or preserve the native ratio.

Timeout or intermittent 5xx response

Use a client timeout suited to the provider, retry only documented transient errors with exponential backoff, and attach an idempotency key when supported. Record whether a retry could have created a second billed render.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Quota unexpectedly exhausted

Check whether pages in a PDF, failed attempts, or retries count as renders. Templated documents that each page render counts toward its API quota; apply that rule when estimating usage.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Performance, reliability, and cost decisions

  • Cache deterministic renders. Key the cache by template version, normalized data, dimensions, format, and scale. Invalidate it when any of those inputs changes.
  • Separate preview from production. Use smaller dimensions or a lower scale for previews only when the provider’s quality behavior is acceptable.
  • Batch deliberately. If the provider supports multi-size or multi-page operations, compare one request with several outputs against independent requests and quota accounting.
  • Control concurrency. Excess parallel requests can trigger rate limits and make retries more expensive. Use a queue and bounded workers.
  • Measure bytes and latency. PNG may preserve sharp text while WebP or JPEG may reduce transfer size. The correct choice depends on your consumer, not a universal ranking.

Or skip the browser setup

If your real requirement is a screenshot of a rendered web page rather than a provider-managed design template, ScreenshotNeo provides a one-call website screenshot API. It is not a replacement for a template API’s data schema; it captures a URL after the page has rendered.

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo API documentation for parameters and response details. Before capture, it can accept consent banners and remove more than 60 known consent platforms, newsletter popups, and chat widgets, with each step switchable. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers indicate the page verdict and billing status. ScreenshotNeo also offers an MCP server with take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients. The Free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 shots. Create a free ScreenshotNeo account.

FAQ

Can I request dimensions larger than the provider’s documented maximum?

No. The API may reject the request or require a different workflow. For Templated, the documented per-dimension range is 100–5000 pixels.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Should I use width and height or a scale parameter?

Use width and height to define the canvas and scale only for the provider’s documented density behavior. They are not interchangeable.

Why does a square render look different from a wide render?

Changing the aspect ratio changes the coordinate space used by responsive, percentage-based, and pinned layers. Test each production ratio or create dedicated templates.

How do I know whether to parse JSON or save bytes?

Inspect the endpoint documentation and the response’s Content-Type. Some operations return JSON or a URL; others return the file itself.

Do all API renders cost the same quota?

No. Quota rules are provider-specific; Templated states that each page render counts, including pages in relevant multi-page workflows.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.