Skip to content
E Webhook Package Documentation

Custom Providers

Custom providers

Custom providers let you adapt RelayKit to any webhook source.

Create a provider class

namespace App\Webhooks\Providers;

use RelayKit\Providers\Provider;
use RelayKit\Requests\IncomingWebhook;

class AcmeProvider extends Provider
{
    public function eventName(IncomingWebhook $webhook): string
    {
        return $webhook->payload('event.name');
    }

    public function signatureHeader(): string
    {
        return 'X-Acme-Signature';
    }
}

Register the provider

'providers' => [
    'acme' => App\Webhooks\Providers\AcmeProvider::class,
],

Provider URLs

The provider key controls the endpoint URL.

https://example.com/webhooks/acme

Provider specific configuration

Providers can read from Laravel config, environment variables, or constructor arguments.

public function secret(): string
{
    return config('services.acme.webhook_secret');
}

© Webhook Package Documentation