senderkit / senderkit-symfony
Symfony bundle for the SenderKit PHP SDK — DI wiring, configuration, webhook request verifier.
Package info
github.com/senderkit/senderkit-symfony
Type:symfony-bundle
pkg:composer/senderkit/senderkit-symfony
v0.2.0
2026-06-11 23:21 UTC
Requires
- php: >=8.1
- senderkit/senderkit-php: ^0.1 || ^0.2
- symfony/config: ^6.4 || ^7.0
- symfony/dependency-injection: ^6.4 || ^7.0
- symfony/http-foundation: ^6.4 || ^7.0
- symfony/http-kernel: ^6.4 || ^7.0
Requires (Dev)
- nyholm/psr7: ^1.8
- phpunit/phpunit: ^10.5
- symfony/framework-bundle: ^6.4 || ^7.0
- symfony/http-client: ^6.4 || ^7.0
Suggests
- symfony/http-client: Wires the framework's PSR-18 client (Psr18Client) into the SDK automatically.
README
Symfony integration for the SenderKit PHP SDK.
Install
composer require senderkit/senderkit-symfony
Register the bundle (Flex does this automatically) and configure config/packages/senderkit.yaml:
senderkit: api_key: '%env(SENDERKIT_API_KEY)%' webhook_secret: '%env(SENDERKIT_WEBHOOK_SECRET)%'
Usage
Autowire SenderKit\Client into any service or controller:
public function __construct(private readonly \SenderKit\Client $senderkit) {} $this->senderkit->send(new TemplateSend(template: 'welcome', to: $email));
When symfony/http-client is installed, the SDK automatically uses the framework's PSR-18 client.
Webhooks
use SenderKit\Symfony\Webhook\RequestVerifier; public function webhook(Request $request, RequestVerifier $verifier): Response { $event = $verifier->verify($request); // throws SignatureVerificationException on bad signature, RuntimeException if unconfigured // ... }