sitescreen / siterenderer
Official PHP SDK for SiteScreen Renderer API
dev-main
2026-02-22 17:51 UTC
Requires
- php: ^8.2
- ext-json: *
- guzzlehttp/guzzle: ^7.8
This package is not auto-updated.
Last update: 2026-05-18 17:44:47 UTC
README
sitescreen/siterenderer is a typed PHP SDK for the SiteScreen rendering API.
- Composer package name:
sitescreen/siterenderer - Current package version:
1.0.0 - Transport: Guzzle HTTP client
- Language level: PHP 8.2+
Installation
composer require sitescreen/siterenderer:^1.0
Quick Start
<?php declare(strict_types=1); require __DIR__ . '/vendor/autoload.php'; use SiteScreen\SiteRenderer\DTO\ContentType; use SiteScreen\SiteRenderer\DTO\RenderUrlWaitRequest; use SiteScreen\SiteRenderer\SiteScreenClient; $client = new SiteScreenClient( apiKey: 'YOUR_API_KEY', apiBaseUrl: 'https://api.sitescreen.io', cdnBaseUrl: 'https://cdn.sitescreen.io' ); $waitResult = $client->renderUrlAndWait( new RenderUrlWaitRequest( url: 'https://example.com', contentType: ContentType::PNG, maxWaitMs: 60_000 ) ); if (!$waitResult->completed) { echo "Queued job: {$waitResult->jobId}\n"; exit(0); } $file = $client->downloadFile($waitResult->job->fileUrl); $file->saveToPath(__DIR__ . '/result.png'); echo "Rendered: {$file->fileName}\n";
API Coverage
GET /healthGET /v1/presetsPOST /v1/render/screenshotPOST /v1/render/wait/screenshotPOST /v1/render/htmlPOST /v1/render/wait/htmlGET /v1/jobs/{id}GET /files/{fileName}
Design Notes
- All public classes use
declare(strict_types=1);. - DTO constructors are explicit and validate input.
- Responses are mapped into strict DTOs and enums.
- Non-2xx responses throw
ApiException. - Transport-level failures throw
TransportException.