Client libraries
The same client for the hosted API and your own container.
Four official clients, one design: a constructor that takes the base URL and the API key, one method per operation, typed options, and a typed error carrying the API error code. No dependencies beyond the platform's HTTP client. Against the hosted API pass rnd_live_ keys; against your container pass your own base URL and rnd_self_ keys (or none).
.NET — Rendarium.Client
dotnet add package Rendarium.Client
using Rendarium.Client;
var client = new RendariumClient("rnd_live_YOUR_KEY"); // hosted
// var client = new RendariumClient("http://localhost:8490", "rnd_self_..."); // self-hosted
byte[] pdf = await client.ConvertHtmlAsync("<h1>Invoice #1024</h1>",
new ConvertOptions { PageSize = "A4", FooterHtml = "Page {page} of {pages}" });
await File.WriteAllBytesAsync("invoice.pdf", pdf);
Targets .NET Standard 2.0 — runs on .NET Framework 4.7.2+ and .NET 6 to 10, on Windows, Linux and macOS. Errors throw RendariumApiException with ErrorCode and StatusCode.
Java — com.rendarium:rendarium-client
<dependency>
<groupId>com.rendarium</groupId>
<artifactId>rendarium-client</artifactId>
<version>2026.8.1</version>
</dependency>
RendariumClient client = new RendariumClient("rnd_live_YOUR_KEY");
byte[] pdf = client.convertHtml("<h1>Invoice #1024</h1>", ConvertOptions.builder().pageSize("A4").build());
Files.write(Path.of("invoice.pdf"), pdf);
Java 11+, built on java.net.http.HttpClient.
Python — rendarium-client
pip install rendarium-client
from rendarium import RendariumClient
client = RendariumClient("rnd_live_YOUR_KEY")
pdf = client.convert_html("<h1>Invoice #1024</h1>", page_size="A4")
open("invoice.pdf", "wb").write(pdf)
Python 3.9+, synchronous and async variants, type hints included.
Node.js — @rendarium/client
npm i @rendarium/client
import { RendariumClient } from "@rendarium/client";
const client = new RendariumClient({ apiKey: "rnd_live_YOUR_KEY" });
const pdf = await client.convertHtml("<h1>Invoice #1024</h1>", { pageSize: "A4" });
await fs.writeFile("invoice.pdf", pdf);
Node 18+ (native fetch), TypeScript definitions included, ESM and CommonJS.
Any other language
The API is plain HTTPS + JSON. Generate a client from the OpenAPI specification or call it directly as in the quick start.