PHPackages                             lupuscoding/webhook-sender - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. lupuscoding/webhook-sender

ActiveLibrary[HTTP &amp; Networking](/categories/http)

lupuscoding/webhook-sender
==========================

Simple Sender for webhook requests.

1.0.0(4y ago)05[1 issues](https://github.com/LupusCoding/webhook-sender/issues)MITPHPPHP &gt;=7.4

Since Dec 15Pushed 4y ago1 watchersCompare

[ Source](https://github.com/LupusCoding/webhook-sender)[ Packagist](https://packagist.org/packages/lupuscoding/webhook-sender)[ Docs](http://lupuscoding.de)[ RSS](/packages/lupuscoding-webhook-sender/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (3)Used By (0)

webhook-sender - Webhook Sender
===============================

[](#webhook-sender---webhook-sender)

Simple Sender for webhook requests.

Contents
--------

[](#contents)

- [Requirements](#requirements)
- [Install](#install)
- [Development](#development)
- [Usage](#usage)
- [Testing](#testing)

Requirements [\#](#requirements)
--------------------------------

[](#requirements-)

- PHP &gt;= 7.4

Install [\#](#install)
----------------------

[](#install-)

```
composer require lupuscoding/webhook-sender
```

Usage [\#](#usage)
------------------

[](#usage-)

### Send a message to a webhook

[](#send-a-message-to-a-webhook)

The sender accepts objects, that implement the JsonSerializable interface. Just initialize an object, that implements the interface and hand it over, to the Sender::send method.

```
use LupusCoding\Webhooks\Sender\Sender;
// Init your serializable object
/** @var JsonSerializable $mySerializableObject */
$mySerializableObject = new MySerializableObject();
// Setup the hook url
$webhookUrl = 'https://httpbin.org/post';
// Init sender
$sender = new Sender($webhookUrl, false);
// Send object ot webhook
$sender->send($mySerializableObject);
// Get response
$response = $sender->getLastResponse();
```

### Create a valid serializable object

[](#create-a-valid-serializable-object)

By implementing the JsonSerializable interface and creating the jsonSerialize method, you are able to decide, which data will be sent.

```
use JsonSerializable;

class MySerializableObject implements JsonSerializable
{
    private string $stringToPush;
    private string $stringToProcess;
    private bool $boolToPush;
    private bool $onlyToProcess;

    /* Getters and Setters may be here */

    public function jsonSerialize(): array
    {
        return [
            'stringToPush' => $this->stringToPush,
            'boolToPush' => $this->boolToPush,
        ];
    }
}
```

This example has two properties that should be pushed / send and two properties that should not be sent.

Development [\#](#development)
------------------------------

[](#development-)

- Every contribution should respect PSR-2 and PSR-12.
- Methods must provide argument types and return types.
- Class properties must be typed.
- doc blocks must only contain descriptive information.
- doc blocks may additionally contain a type declaration for arguments or return values, if the type declaration is not precise.

For example: `func(): array` may not be precise if the method returns an array of arrays or objects. Consider a doc block entry like `@return array[]` or `@return MyObject[]` for clarification.

Testing [\#](#testing)
----------------------

[](#testing-)

Webhook test site:

First install **phpunit** by executing

```
composer install
```

Then start phpunit by executing

```
vendor/bin/phpunit
```

**Optional:** Look at the webhook test site, to get more information.

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1615d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e9778bcba284a3c7b5ad0bee8577d852823ab8b0ef3048b54172534ab5539395?d=identicon)[LupusCoding](/maintainers/LupusCoding)

---

Top Contributors

[![LupusCoding](https://avatars.githubusercontent.com/u/25911406?v=4)](https://github.com/LupusCoding "LupusCoding (5 commits)")

---

Tags

microsoftwebhook

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lupuscoding-webhook-sender/health.svg)

```
[![Health](https://phpackages.com/badges/lupuscoding-webhook-sender/health.svg)](https://phpackages.com/packages/lupuscoding-webhook-sender)
```

###  Alternatives

[shopify/shopify-api

Shopify API Library for PHP

4634.8M16](/packages/shopify-shopify-api)[symfony/webhook

Eases sending and consuming webhooks

573.0M35](/packages/symfony-webhook)[renoki-co/laravel-aws-webhooks

Easy webhook handler for Laravel to catch AWS SNS notifications for various services.

73248.5k](/packages/renoki-co-laravel-aws-webhooks)[skrepr/teams-connector

A simple PHP package for sending messages to Microsoft Teams

239.6k1](/packages/skrepr-teams-connector)[akhan619/laravel-ses-tracking

A Laravel artisan based package to create the AWS (SES + SNS) infrastructure to receive email event notifications with Http/Https endpoint.

149.9k](/packages/akhan619-laravel-ses-tracking)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
