erwane/whep-postal

Postal webhooks handler

2.2.0 2025-08-12 21:01 UTC

This package is auto-updated.

Last update: 2025-08-12 21:23:59 UTC


README

Software License codecov CI Packagist Downloads Packagist Version

Webhook handler for postal emailing provider.

Usage

composer require erwane/whep-postal
use WHEP\Exception\IpException;  
use WHEP\Exception\ProviderException;  
use WHEP\Factory;

try {
    $provider = Factory::provider('postal', [
        'allowed_ip' => ['my.postal.server.ipv4', 'my:postal:server::ipv6'],
        'client_ip' => $_SERVER['REMOTE_ADDR'] ?? null, // Use method from your framework to get the ServerRequest client ip.
        'callbacks' => [
            ProviderInterface::EVENT_BLOCKED => [$this, 'callbackInvalidate'],
            ProviderInterface::EVENT_BOUNCE_QUOTA => [$this, 'callbackUnsub'],
        ],
    ]);

    // process the data.
    $provider->process($webhookData);
    
    // Data available from provider getters.
    $recipient = $provider->getRecipient();
    
    // Launch callbacks
    $provider->callback();
} catch (IpException $e) {
    // log ?
} catch (ProviderException $e) {
    // log ?
}

See WHEP Client README for options and getters methods.