PHPackages                             sintra/pimcore-webhooks - 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. [API Development](/categories/api)
4. /
5. sintra/pimcore-webhooks

ActivePimcore-bundle[API Development](/categories/api)

sintra/pimcore-webhooks
=======================

A Pimcore's bundle for implementing webhooks

264.3k8[12 issues](https://github.com/Sintraconsulting/pimcore-webhooks/issues)PHP

Since Mar 13Pushed 2y ago4 watchersCompare

[ Source](https://github.com/Sintraconsulting/pimcore-webhooks)[ Packagist](https://packagist.org/packages/sintra/pimcore-webhooks)[ RSS](/packages/sintra-pimcore-webhooks/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (3)Used By (0)

WebHookBundle Plugin
====================

[](#webhookbundle-plugin)

[![Compile and Tests](https://github.com/Sintraconsulting/pimcore-webhooks/actions/workflows/php.yml/badge.svg)](https://github.com/Sintraconsulting/pimcore-webhooks/actions/workflows/php.yml)[![CodeFactor](https://camo.githubusercontent.com/1dde3ec0c5b3762bf58ccf1618fadc7cd0f3465148fdca52f1eddf16aebe06a7/68747470733a2f2f7777772e636f6465666163746f722e696f2f7265706f7369746f72792f6769746875622f73696e747261636f6e73756c74696e672f70696d636f72652d776562686f6f6b732f6261646765)](https://www.codefactor.io/repository/github/sintraconsulting/pimcore-webhooks)

This extention provide an easy way to send dataobjects to an external sites via json, whenever a pimcore event occurs on a specified class. This bundle installs the webHook class through which it is possible to define, from the UI, which dataObjects to listen for sending data to an external website, whenever a pimcore event occurs on the specified dataobject.

How to Install WebHookBundle
============================

[](#how-to-install-webhookbundle)

1. download and install the bundle from composer
------------------------------------------------

[](#1-download-and-install-the-bundle-from-composer)

For installig WebHookBundle, the first step is to open your terminal and type:

```
docker-compose exec php bash
composer require sintra/pimcore-webhooks:dev-main
```

After you have installed the Toolbox Bundle via composer, open pimcore backend and go to `Tools` =&gt; `Extension`:

- Click the green `+` Button in `Enable / Disable` row
- Click the green `+` Button in `Install/Uninstall` row

[![](assets/ExtentionManager.png?raw=true)](assets/ExtentionManager.png?raw=true)

2. Configure the bundle
-----------------------

[](#2-configure-the-bundle)

Now that the bundle is installed you can start creating your webhooks!. Follows the next stesp.

1. create a folder called `Webhooks`. Although this is not mandatory and you can name it as you want.
2. create a webhook object in it:

- In setting panel you can specify the name of the classes to monitor, the events to listen to, and the URL of the site to send the json object
- In the security panel, you can set an api-key to provie to the specified URS, an a pair of public/private key to generate a signature

The following video shows how this can be done in seconds. [![](assets/CreateWebHooks2.gif?raw=true)](assets/CreateWebHooks2.gif?raw=true)Now you are ready to use the Webhok bundle!

Webook configuration
====================

[](#webook-configuration)

Availbale options
-----------------

[](#availbale-options)

You can specify:

- The class to monitor
- The URL to send data to
- The event to listen

The aviable event are:

- preAdd
- postAdd
- postAddFailure
- preUpdate
- postUpdate
- postUpdateFailure
- deleteInfo
- preDelete
- postDelete
- postDeleteFailure
- postCopy
- postCsvItemExport

Once the event occurs, the json represtantion of you data is sent to the specified url. In the header it is specified which event was launched.

Each event will trigger a request like this:

- headers
    - `x-listen-event`: contain the name of the event launched
    - `x-apikey`: contain a random generated key for autentication porpouse
    - `x-signature`: contain the data signature created with OPENSSL\_ALGO\_SHA1; public key is store in website settings
- body contains two main parts:
    - `dataObject`: json representation of your dataObject
    - `argumentrs`: exception code and message throws if a failure occurs

Security settings
-----------------

[](#security-settings)

To ensure the authenticity and security of the information transmitted, in the header there are a randomly generated api-key, and a signature generated through a pair of keys (public / private), stored in the Pimcore website setting. These are created automatically when the bundle is installed, but you can use your own.

[![](assets/WebSiteSettings.png?raw=true)](assets/WebSiteSettings.png?raw=true)

To run the tests you don't need to create any webhooks or classes, these will be created automatically, you just have to initialize the testURL attribute with a valid url.

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance11

Infrequent updates — may be unmaintained

Popularity32

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity30

Early-stage or recently created project

 Bus Factor1

Top contributor holds 89.8% 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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/300199854895226b22de6db9e852de24d4597b66f827838b51c82e2bb5ad2610?d=identicon)[sintra](/maintainers/sintra)

---

Top Contributors

[![MarcoMisiani](https://avatars.githubusercontent.com/u/80473928?v=4)](https://github.com/MarcoMisiani "MarcoMisiani (149 commits)")[![zeppaman](https://avatars.githubusercontent.com/u/5618315?v=4)](https://github.com/zeppaman "zeppaman (13 commits)")[![christophluehr](https://avatars.githubusercontent.com/u/1352356?v=4)](https://github.com/christophluehr "christophluehr (3 commits)")[![ngeleedst](https://avatars.githubusercontent.com/u/10942458?v=4)](https://github.com/ngeleedst "ngeleedst (1 commits)")

### Embed Badge

![Health badge](/badges/sintra-pimcore-webhooks/health.svg)

```
[![Health](https://phpackages.com/badges/sintra-pimcore-webhooks/health.svg)](https://phpackages.com/packages/sintra-pimcore-webhooks)
```

###  Alternatives

[stripe/stripe-php

Stripe PHP Library

4.0k143.3M480](/packages/stripe-stripe-php)[twilio/sdk

A PHP wrapper for Twilio's API

1.6k92.9M272](/packages/twilio-sdk)[knplabs/github-api

GitHub API v3 client

2.2k15.8M187](/packages/knplabs-github-api)[facebook/php-business-sdk

PHP SDK for Facebook Business

90121.9M34](/packages/facebook-php-business-sdk)[meilisearch/meilisearch-php

PHP wrapper for the Meilisearch API

73813.7M114](/packages/meilisearch-meilisearch-php)[google/gax

Google API Core for PHP

263103.1M454](/packages/google-gax)

PHPackages © 2026

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