PyWebhooks - A Webhooks Service

View the Project on GitHub chadlung/pywebhooks

A simple webhooks service, minimal features, minimal security, proof of concept

Build Status Coverage Status

Note: PyWebhooks is ideally deployed on an internal private cloud/network where you know and trust the end users and services using it. It should not be considered secure enough (currently) to be a publicly deployed service.

Don't like something? Need a feature? Please submit a pull request complete with tests and an update to the readme if required.

In order to run PyWebhooks you'll need to have RethinkDB and Redis installed on a server or server(s). RethinkDB is used to store the account, webooks, etc. data. Redis is used by Celery to handle the calls to the webhook endpoints.

Quick Start Vagrant: To get started quickly, see my introductory blog article as well as a helpful vagrant starter: vagrant-pywebhooks

Quick Start Docker Compose: To get started quickly, see my introductory blog article

Note: PyWebhooks has been tested on Ubuntu 14.04 and OS X. PyWebhooks has been tested with Python 3.4, prior Python 3.x versions have not been tested and Python 2.x support is not planned.

Why PyWebhooks?

I looked all over for a project that did something similar to this. You can find lots of code to listen for webhooks as well as some code for sending webhooks but I couldn't find anything that wrapped it into a complete package where you could run a server to allow for adding new accounts, letting those users create their own webhooks and then allow others to listen (subscribe) to those webhooks.

Apache 2 Licensed