tapp/filament-webhook-client
webhook-client with a Filament resource (WebhookCallResource), policy layer, and navigation integration, making it a low-friction addition to existing Filament panels.WebhookCall model in a Filament resource. This ensures compatibility with Filament’s resource-based CRUD while preserving Spatie’s core functionality.filament-webhook-client.php config).laravel-webhook-client (v10.x+) must be installed and configured. The package does not replace it but provides a UI layer.spatie/laravel-webhook-client (core webhook logic).filament/filament), which may pull in additional packages (e.g., Blade, Livewire).php artisan vendor:publish) and register the plugin in AdminPanelProvider.webhook_calls table.| Risk Area | Assessment | Mitigation |
|---|---|---|
| Version Lock-in | Tight coupling to Spatie’s webhook-client schema. Future Spatie breaking changes (e.g., table renames) may require package updates. |
Monitor Spatie’s changelog; test against minor/patch updates pre-release. |
| Filament Version Support | Package supports Filament 4.x/5.x but may lag behind major Filament releases (e.g., Filament 6.x). | Pin to LTS Filament versions; contribute upstream if critical features are missing. |
| Custom Logic Limitations | UI-only package; cannot modify Spatie’s webhook handling (e.g., payload processing, retries). | Extend Spatie’s core logic separately or use Filament’s resource hooks (e.g., afterSave). |
| Performance | Filament resources can be resource-intensive for large webhook_calls tables. |
Implement pagination, lazy-loading, or database indexing for webhook_calls. Use Filament’s QueryBuilder for complex filtering. |
| Security | Policies are configurable but default to read-only access. Sensitive data (e.g., signing secrets) may leak if not properly restricted. | Override policies to enforce least-privilege access; audit WebhookCallPolicy. |
webhook-client?
webhook_calls table?
QueryBuilder to avoid performance issues.spatie/laravel-webhook-testing or build custom Filament widgets.| Stack Component | Compatibility |
|---|---|
| Laravel | 10.x–13.x (tested; see changelog for PHP 8.5 support). |
| Filament | 4.x/5.x (v4.x package) or 3.x (v1.x). |
| Spatie Webhook Client | v10.x+ (mandatory). |
| PHP | 8.1–8.5 (PHP 8.5 added in v4.1.1). |
| Database | MySQL, PostgreSQL, SQLite (inherits Spatie’s requirements). |
| Frontend | Blade/Livewire (Filament’s default); Inertia/Vue/React if using Filament’s Inertia support. |
composer require spatie/laravel-webhook-client:"^10.0"
php artisan vendor:publish --provider="Spatie\WebhookClient\WebhookClientServiceProvider"
composer require tapp/filament-webhook-client:"^4.0"
php artisan vendor:publish --tag="filament-webhook-client-config"
php artisan vendor:publish --tag="filament-webhook-client-translations" # Optional
app/Providers/Filament/AdminPanelProvider.php:
public function panel(Panel $panel): Panel {
return $panel->plugins([
FilamentWebhookClientPlugin::make(),
]);
}
WebhookCallPolicy if default permissions are insufficient.WebhookCallResource via Filament’s resource customization (e.g., add tabs, widgets).composer why-not to detect version conflicts.composer.json:
"spatie/laravel-webhook-client": "^10.0",
"filament/filament": "^4.0 || ^5.0"
webhook-client and configure endpoints.webhook_signature).webhook_calls.How can I help you explore Laravel packages today?