Skip to content

Fonts

The fixed set of built-in font families available on the rendering server — the ones every organisation can reference in a template’s font settings. Use it to populate a font picker in your own UI, or to check a family name before publishing a template that depends on it.

GET /v1/fonts
import asyncio
from pagr import PagrApiClient
async def main():
async with PagrApiClient("pagr_prod_xxxxxxxx") as client:
fonts = await client.get_fonts() # list[str]
print(len(fonts), "families")
for family in fonts:
print(family)
asyncio.run(main())

None.

None.

None — this is a GET.

200 → a plain array of strings, not wrapped in an object:

[
"Arial", "Courier New", "DejaVu Sans", "DejaVu Sans Mono", "DejaVu Serif",
"Georgia", "Helvetica", "Inter", "Lato", "Liberation Mono", "Liberation Sans",
"Liberation Serif", "Merriweather", "Montserrat", "Open Sans",
"Playfair Display", "Roboto", "Source Code Pro", "Times New Roman", "Verdana"
]

This is the only list endpoint that is not wrapped in the paged envelope — the set is small and fixed, so there is nothing to page.

SDK Method Returns
Python await client.get_fonts() list[str]
TypeScript await client.getFonts() string[]
Java client.getFonts() List<String>
C# await client.GetFontsAsync(cancellationToken) IReadOnlyList<string>
Ruby client.fonts Array<String>
C++ client.get_fonts() / get_fonts_async() std::vector<std::string>

This endpoint takes no input, so only auth and transport errors apply — 401 (bad key), 429 (rate limited), 5xx. As a read, the SDKs retry transient server failures automatically. See Errors for the full table.