Skip to content

Transforms ​

Route pattern: POST /render/{input}/{output} (aliases under /v1/render/...).

RouteInputOutput
POST /render/html/pdfraw HTML contentPDF
POST /render/template/htmltemplateId + JSON dataHTML
POST /render/template/pdftemplateId + JSON dataPDF
POST /render/csv/pdfCSV contentPDF
POST /render/csv/xlsxCSV contentXLSX
POST /render/table/htmlstructured sheetsHTML
POST /render/table/pdfstructured sheetsPDF
POST /render/table/xlsxstructured sheetsXLSX
POST /render/table/csvexactly one sheetCSV

Also: GET /formats, GET /templates — authenticated (same API key as renders). Only /health, /openapi/v1.json, and /scalar are anonymous.

Example (table → HTML):

bash
curl -X POST "http://localhost:5066/render/table/html" \
  -H "Content-Type: application/json" \
  -H "X-OxyKit-Render-Key: dev-local-key" \
  -d '{"sheets":[{"name":"Orders","headers":["Id","Customer","Total"],"rows":[[1,"Acme",120.5],[2,"Beta",80]]}]}' \
  --output orders.html

Errors: { "error": "..." } with 400 / 401 / 403 / 500. Exact request shapes: live OpenAPI in Development.

Render · Mail · Flow