Skip to main content
RENDIVIA

Docs

Rendivia is a developer-first API for deterministic, branded video generation from structured data.

Quickstart

  1. Create an API key in the dashboard.
  2. POST JSON to the render endpoint.
  3. Receive a webhook with the MP4 URL.

Example request

POST /api/v1/render
{
  "template": "weekly-summary-v1",
  "data": {
    "title": "Weekly Summary",
    "metrics": [
      { "label": "Revenue", "value": 12450 },
      { "label": "Users", "value": 342 }
    ]
  },
  "brand": "acme",
  "webhook": {
    "url": "https://example.com/webhook",
    "secret": "your-signing-secret"
  }
}

cURL example

curl -X POST https://api.rendivia.com/api/v1/render \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "template": "weekly-summary-v1",
    "data": {
      "title": "Weekly Summary",
      "metrics": [
        { "label": "Revenue", "value": 12450 },
        { "label": "Users", "value": 342 }
      ]
    },
    "brand": "acme"
  }'

Node.js example

const res = await fetch("https://api.rendivia.com/api/v1/render", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    "X-API-Key": process.env.RENDIVIA_API_KEY,
  },
  body: JSON.stringify({
    template: "weekly-summary-v1",
    data: {
      title: "Weekly Summary",
      metrics: [
        { label: "Revenue", value: 12450 },
        { label: "Users", value: 342 },
      ],
    },
    brand: "acme",
  }),
});

const job = await res.json();
console.log(job);

API reference

POST /api/v1/render - queue a render job.

GET /api/v1/render/:jobId - fetch render status and output URL.

GET /api/v1/templates - list available templates.

Templates response

Fetch template definitions to see supported fields and versions. The response includes metadata to validate payloads client-side.

Example response

GET /api/v1/templates
{
  "templates": [
    {
      "id": "weekly-summary-v1",
      "version": 1,
      "compositionId": "DataReportVideo",
      "fields": [
        { "key": "title", "type": "string", "required": true },
        { "key": "metrics", "type": "array", "required": true }
      ]
    }
  ]
}

Authentication

Send your API key as X-API-Key orAuthorization: Bearer.

Webhooks

Provide a webhook URL to receive completion payloads. Signatures are sent inx-rendivia-signature.