snapshot-site / php-sdk
Official PHP SDK for the Snapshot Site API
v0.1.0
2026-03-30 19:53 UTC
Requires
- php: ^8.1
- ext-curl: *
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^11.5
Suggests
- ext-curl: Required to perform API requests
README
Official PHP SDK for the Snapshot Site API.
Install
composer require snapshot-site/php-sdk
Create your API token in Snapshot Site Console:
Usage
<?php require __DIR__ . '/vendor/autoload.php'; use SnapshotSite\Client; $client = new Client('ss_live_xxx'); $result = $client->screenshot([ 'url' => 'https://snapshot-site.com', 'format' => 'png', 'fullSize' => true, ]); echo $result['link'] ?? '';
Screenshot example
<?php require __DIR__ . '/vendor/autoload.php'; use SnapshotSite\Client; $client = new Client('ss_live_xxx'); $result = $client->screenshot([ 'url' => 'https://snapshot-site.com/pricing', 'width' => 1440, 'format' => 'png', 'fullSize' => true, 'hideCookie' => true, ]); print_r($result);
Analyze example
<?php require __DIR__ . '/vendor/autoload.php'; use SnapshotSite\Client; $client = new Client('ss_live_xxx'); $result = $client->analyze([ 'url' => 'https://snapshot-site.com', 'width' => 1440, 'fullSize' => true, 'enableSummary' => true, 'enableQuality' => true, ]); print_r($result);
Compare example
<?php require __DIR__ . '/vendor/autoload.php'; use SnapshotSite\Client; $client = new Client('ss_live_xxx'); $result = $client->compare([ 'before' => [ 'url' => 'https://snapshot-site.com/pricing', 'width' => 1440, 'fullSize' => true, 'hideCookie' => true, ], 'after' => [ 'url' => 'https://staging.snapshot-site.com/pricing', 'width' => 1440, 'fullSize' => true, 'hideCookie' => true, ], 'threshold' => 0.1, ]); print_r($result);
Download assets locally
downloadTo() can save:
- a direct asset URL
- a screenshot response with
link - an analyze response with
screenshot.link - a compare response, where
diff.linkis preferred
<?php require __DIR__ . '/vendor/autoload.php'; use SnapshotSite\Client; $client = new Client('ss_live_xxx'); $result = $client->screenshot([ 'url' => 'https://snapshot-site.com/pricing', 'format' => 'png', 'fullSize' => true, ]); $client->downloadTo($result, __DIR__ . '/pricing.png');
Custom base URL
$client = new Client( apiKey: 'ss_live_xxx', baseUrl: 'https://api.prod.ss.snapshot-site.com' );
Tests
composer install
composer test