Installation
The official PHP SDK is maintained in the EvoCrawl monorepo at apps/php-sdk. To install the EvoCrawl PHP SDK, add the dependency via Composer:Requires PHP 8.1 or later.
Laravel Integration
The SDK includes first-class Laravel support with auto-discovery. After installing the package, publish the configuration file:.env file:
Usage
- Get an API key from evocrawl.com
- Set the API key as an environment variable named
EVOCRAWL_API_KEY, or pass it withEvocrawlClient::create(apiKey: ...)
Using the Laravel Facade
In a Laravel application you can use theEvocrawl facade or dependency injection:
Scraping a URL
To scrape a single URL, use thescrape method.
JSON Extraction
Extract structured JSON withJsonFormat via the scrape endpoint:
Crawling a Website
To crawl a website and wait for completion, usecrawl.
Start a Crawl
Start a job without waiting usingstartCrawl.
Checking Crawl Status
Check crawl progress withgetCrawlStatus.
Cancelling a Crawl
Cancel a running crawl withcancelCrawl.
Crawl Errors
Fetch crawl-level errors (if any) withgetCrawlErrors.
Mapping a Website
Discover links on a site usingmap.
Searching the Web
Search with optional search settings usingsearch.
Batch Scraping
Scrape multiple URLs in parallel usingbatchScrape.
startBatchScrape, getBatchScrapeStatus, and cancelBatchScrape:
Agent
Run an AI-powered agent withagent.
startAgent, getAgentStatus, and cancelAgent:
Usage & Metrics
Check concurrency and remaining credits:Browser
The PHP SDK includes Browser Sandbox helpers.Create a Session
Execute Code
Scrape-Bound Interactive Session
Use a scrape job ID to run follow-up browser code in the same replayed context:interact(...)runs code in the scrape-bound browser session (and initializes it on first use).stopInteractiveBrowser(...)explicitly stops the interactive session when you are done.
List & Close Sessions
Configuration
EvocrawlClient::create() supports the following options:
Custom HTTP Client
You can pass a pre-configuredGuzzleHttp\ClientInterface implementation to control connection pooling, middleware, proxy settings, and other HTTP features. When provided, the timeoutSeconds setting is ignored in favor of the client’s own configuration.
Error Handling
The SDK throws runtime exceptions underEvocrawl\Exceptions.
Are you an AI agent that needs a EvoCrawl API key? See evocrawl.com/agent-onboarding/SKILL.md for automated onboarding instructions.

