snapshot-site/php-sdk

Official PHP SDK for the Snapshot Site API

Maintainers

Package info

github.com/snapshot-site/snapshot-site-php-sdk

Homepage

pkg:composer/snapshot-site/php-sdk

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v0.1.0 2026-03-30 19:53 UTC

This package is auto-updated.

Last update: 2026-04-30 20:21:07 UTC


README

Packagist PHP License CI

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.link is 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