DevCraft Документации
РазработкиAPI WrappersWebShare Proxy PHP WrapperEnglish

Getting started v1.0.0

Install and use the WebShare Proxy PHP wrapper.

PHP wrapper for the WebShare Proxy API with rate-limit retries, GET response caching, filtering, pagination iterators, and typed request helpers.

Requirements

  • PHP >= 8.3
  • Composer
  • WebShare API key

Installation

composer require devcraftclub/webshare-io-api-wrapper

Configuration

export API_KEY="your_webshare_api_key"

Or .env:

API_KEY=your_webshare_api_key
API_URL=https://proxy.webshare.io/api/
API_VERSION=v2
CACHE_ENABLED=1
CACHE_LIFETIME=3600
CACHE_DIRECTORY=./cache
ITERATE_MAX_PAGES=100
DEBUG=0
use Devcraft\Webshare\Classes\App;

App::init();
// or App::init('your_webshare_api_key');

App::Client() returns the shared HTTP client. App::Requests('Profile'|'Notification'|…) auto-discovers request classes.

Quick start

<?php

require_once 'vendor/autoload.php';

use Devcraft\Webshare\Classes\App;
use Devcraft\Webshare\Enums\FilterOperator;

App::init();

/** @var \Devcraft\Webshare\Requests\ProxyRequest $proxies */
$proxies = App::Requests('Proxy');
$proxies->query()
    ->withFilter('mode', 'direct')
    ->withPageSize(25)
    ->withFilter('country_code', ['US', 'DE'], FilterOperator::IN);

$list = $proxies->getList();

foreach ($proxies->iterate() as $proxy) {
    echo $proxy->getConnectionString(backbone: true), "\n";
}

Request surface

App::Requests keyCoverage
Proxylist, iterate, download, refresh
Profileprofile + preferences
Notificationlist/retrieve/dismiss/restore
ProxyReplacementlist/retrieve/create (v3)
ReplacedProxylist/download
ProxyConfigconfig/status/listStats/update (v3)
IpAuthorizationlist/iterate/CRUD + whatsMyIp
ProxyStatslist/aggregate/activities/download
DownloadTokenget/reset token by scope
ApiKeylist/iterate/CRUD
SubUserlist/iterate/CRUD/refresh + masqueradeAs()

Proxy Connection is not a REST resource — use Proxy::getConnectionString() (backbone/direct).

Domain glossary

TermMeaning
ProxySingle proxy endpoint from a list
ProxyListPaginated collection of Proxies
ProxyConfigPlan-level proxy configuration
IpAuthorizationAllowlisted source IP
SubUserChild account under the parent plan
X-SubuserHeader to masquerade as a SubUser
DownloadTokenTime-limited download key
PageIteratorWalks paginated pages until next is null
BackboneConnection / DirectConnectionConnection modes via getConnectionString()

Next

На этой странице