Official PHP SDK for the iLoveVideoEditor cloud video rendering API — render MP4/WebM videos programmatically from JSON scene descriptions and templates

Maintainers

Package info

github.com/ilovevideoeditor/sdk-php

Homepage

Documentation

pkg:composer/ilovevideoeditor/sdk

Transparency log

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.1 2026-07-14 15:33 UTC

This package is auto-updated.

Last update: 2026-07-14 16:45:34 UTC


README

Official PHP SDK for iLoveVideoEditor — render videos programmatically with a cloud video API.

iLoveVideoEditor is a cloud video rendering API: submit a JSON scene description or template, queue a render, and download the resulting MP4/WebM. This package is the official PHP client, combining a friendly high-level wrapper (queue + poll + download URL in one call) with a fully generated API client covering every endpoint.

Packagist Version PHP Version License: MIT Docs Run in Postman

Features

  • One-call rendering — submit a VideoJSON scene description with render() and block until the MP4/WebM is ready
  • Progress callbacksonProgress($status, $percent) plus configurable pollInterval and maxWait
  • Render management — check job status with getRender() and refresh expiring download URLs with refreshUrl()
  • Templates — list and fetch templates with listTemplates() / getTemplate(), or render them via the generated TemplatesApi::renderTemplate()
  • Full API coverage — a generated client (iLoveVideoEditorSDK\Api\*) for renders, templates, assets, projects, webhooks, workflows, API keys, billing, tools, renditions, integrations, and health — including render cancellation and cost estimation
  • PHP 8.1+ with strict types, readonly result objects, and Guzzle 7 under the hood

Installation

composer require ilovevideoeditor/sdk

Requires PHP >= 8.1 with the curl, json, and mbstring extensions.

Quick start

<?php
require_once 'vendor/autoload.php';

use iLoveVideoEditor\SDK\iLoveVideoEditorClient;

$client = new iLoveVideoEditorClient([
    'apiKey' => getenv('ILOVEVIDEOEDITOR_API_KEY'),
]);

$result = $client->render([
    'name' => 'hello-world',
    'layers' => [
        ['type' => 'composition', 'width' => 1920, 'height' => 1080, 'fps' => 30],
    ],
], [
    'onProgress' => fn(string $status, float $progress) => printf("%s — %.0f%%\n", $status, $progress),
]);

echo $result->downloadUrl, PHP_EOL;

render() queues the job, polls until it completes, and returns a RenderResult with jobId, status, progress, url, downloadUrl, error, createdAt, and completedAt.

Authentication

Create an API key in your iLoveVideoEditor dashboard. Keys are prefixed with vf_live_ and are sent as the x-api-key header. Keep the key out of source control — read it from an environment variable:

$client = new iLoveVideoEditorClient([
    'apiKey' => getenv('ILOVEVIDEOEDITOR_API_KEY'),
]);

Documentation

Other official SDKs

License

MIT — see LICENSE.