Webhook integrations

There are a number of third party services you can use with Buildkite webhooks. Some services (such as RequestBin and Zapier) are designed specifically with webhooks in mind, and others (such as AWS Lambda, Google Cloud Functions, IronWorker and Webtask) are general purpose programming platforms which can be triggered with webhook HTTP requests.

AWS Lambda

AWS Lambda is a service for running functions, and when combined with AWS API Gateway, can be used to process your Buildkite webhooks.

There are many ways to integrate webhooks with AWS Lambda. The following repositories demonstrate two ways to process Buildkite webhooks using AWS Lambda:

Google Cloud Functions

Google Cloud Functions are a Google Cloud service for hosted JavaScript execution, and also supports exposing functions using URLs. See the Calling Cloud Functions documentation for how to expose them, and their Hello World walkthrough for getting started.

IronWorker

Iron.io's IronWorker is a service for hosted code execution using Docker containers. You can follow their webhook worker documentation and sample code for an example of how to create an endpoint to use with Buildkite webhooks.

Zapier

Zapier is a system for connecting APIs together, and has built in support for hundreds of services. For example, you could use Zapier to send an email when a build has finished, save a build artifact into a Dropbox folder, or post to a Slack room substituting values such as the build URL and number into the message body.

To use Buildkite webhooks with Zapier create a new Zap and select Webhook.

Webtask

Webtask allows you to write Node.js powered backend code without having to run a server, and it supports cron (scheduled runs) and secure token storage (for things like API keys). You can use our LIFX webtask example to get started with processing webhooks using Webtask:

:node: Webtask.io webhook example application github.com/buildkite/lifx-buildkite-build-light-webtask