yebto / watermark-api
PHP SDK for the YEB Watermark API. Add text, image, pattern watermarks to images, PDFs, video and audio.
dev-master
2026-03-06 22:21 UTC
Requires
- php: ^8.1
- yebto/api-client: ^1.0
Suggests
- illuminate/support: Required for Laravel Facade & ServiceProvider integration (^10.0|^11.0|^12.0)
This package is auto-updated.
Last update: 2026-03-06 22:22:29 UTC
README
PHP SDK for the YEB Watermark API. Add text, image, pattern watermarks to images, PDFs, video and audio.
Works standalone (plain PHP) or with Laravel (Facade + auto-discovery).
Requirements
- PHP 8.1+
- cURL extension
- YEB API Key (free tier available)
Installation
composer require yebto/watermark-api
Standalone Usage
use Yebto\WatermarkAPI\WatermarkAPI; $api = new WatermarkAPI(['key' => 'your-api-key']); $result = $api->addText('example');
Laravel Usage
Add your API key to .env:
YEB_KEY_ID=your-api-key
Use via Facade:
use WatermarkAPI; $result = WatermarkAPI::addText('example');
Or via dependency injection:
use Yebto\WatermarkAPI\WatermarkAPI; public function handle(WatermarkAPI $api) { $result = $api->addText('example'); }
Publish Config
php artisan vendor:publish --tag=yebto-watermark-config
Available Methods
| Method | Description |
|---|---|
addText($text) |
Add a text watermark |
addImage() |
Add an image watermark |
addPattern() |
Add a repeating pattern watermark |
addCode() |
Add a barcode/QR code watermark |
addAudio() |
Add an audio watermark |
preview() |
Preview a watermark before applying |
batch() |
Batch watermark multiple files |
batchRemove() |
Batch remove watermarks |
batchStatus($batch_id) |
Check batch job status |
templates() |
List watermark templates |
templateSave() |
Save a watermark template |
templateDelete($template_id) |
Delete a watermark template |
detect() |
Detect watermarks in a file |
verify() |
Verify a watermark |
remove() |
Remove a watermark from a file |
status($job_id) |
Check watermark job status |
download($job_id) |
Download a watermarked file |
brandKitSave() |
Save a brand kit |
brandKitList() |
List brand kits |
brandKitDelete($brand_kit_id) |
Delete a brand kit |
decodeCode() |
Decode a barcode/QR watermark |
readCode() |
Read a barcode/QR watermark from file |
All methods accept an optional $extra array parameter for additional API options.
Error Handling
use Yebto\ApiClient\Exceptions\ApiException; use Yebto\ApiClient\Exceptions\AuthenticationException; use Yebto\ApiClient\Exceptions\RateLimitException; try { $result = $api->addText('example'); } catch (AuthenticationException $e) { // Missing or invalid API key (401) } catch (RateLimitException $e) { // Too many requests (429) } catch (ApiException $e) { echo $e->getMessage(); echo $e->getHttpCode(); }
Free API Access
Register at yeb.to with Google OAuth to get a free API key.
Support
- API Documentation: https://yeb.to/api/watermark
- Email: support@yeb.to
- Issues: GitHub Issues
License
MIT - NETOX Ltd.