Integrate screenshot capture into Laravel. Use in controllers, jobs, or queued tasks.
composer require guzzlehttp/guzzle
// app/Http/Controllers/ScreenshotController.php
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Http;
class ScreenshotController extends Controller
{
public function capture(Request $request)
{
$response = Http::get("https://snapapi.tech/v1/screenshot", [
"url" => $request->input("url", "https://example.com"),
"api_key" => config("services.snapapi.key"),
"format" => "png"
]);
return response($response->body())->header("Content-Type", "image/png");
}
}
SnapAPI renders pages in a real Chromium browser, so JavaScript-heavy Laravel apps render perfectly. You get: