Aeson instances for GitHub Webhook payloads.

Version on this page:0.16.0
LTS Haskell 22.29:0.17.0
Stackage Nightly 2024-07-18:0.17.0
Latest on Hackage:0.17.0

See all snapshots github-webhooks appears in

MIT licensed by Kyle Van Berendonck, Christian Sakai, Thomas DuBuisson, Rob Berry, Domen Kozar, Alistair Burrowes, Matthew Bauer, Julien Debon, Robert Hensing
Maintained by Kyle Van Berendonck
This version can be pinned in stack with:github-webhooks-0.16.0@sha256:94871c5d738fd078bc824cc01fb912855efaffae94449808af98fe7d587fac1f,4366

Module documentation for 0.16.0

Complete instances for decoding GitHub Webhook payloads (using aeson). See the README at for examples. Sponsored by



  • The invitation and membership fields were made optional for OrganizationEvent (resolves #37)
  • The target repository field was made optional for PullRequestTarget (by Robert Hensing, resolves #51)
  • Support for marketplace purchase event (by Alistair Burrowes, resolves #46)
  • The maintaining sponsor has rebranded to Cuedo Control Engineering
  • The CI pipeline was migrated to GitHub Actions, and tests for extra platforms were added.


  • Corrected false failures in the test suite when using time-1.9 and later (by Julien Debon)


  • Corrected description for CheckRunEventAction
  • Fixed a decoding error for CheckRunEventActionRerequested
  • Corrected a new hlint failure that was introduced by a recent hlint release


  • Support for node_id, which is used by the GraphQL API (by Alistair Burrowes)
  • Handle the case where issue.body is null (by Rob Berry)
  • Support for mergeable_state option in pull requests (by Matthew Bauer)


  • Support for CheckSuiteEvent and CheckRunEvent was added (resolves #25)


  • OwnerType of Bot is now supported (by Domen Kozar, resolves #22)
  • GHC-7.10 requires less changes to build the bundled examples (resolves #6)
  • Fixed issues to do with updated stack package format and CI build (resolves #23, et al.)
  • Added a security policy clarifying how security issues should be disclosed (resolves #24)
  • The latest release is now available on the release branch (resolves #10)


  • Fixed a bug parsing related PR with empty body (by Rob Berry)
  • Updated copyright and contact information


  • Significantly improved documentation coverage and added module descriptions (by Christian Sakai, resolves #5)
  • Fixed a bug where the installation id field of PullRequestEvent was not optional (by Rob Berry)
  • Implementing head and base fields to PullRequestReview (by Rob Berry and Thomas DuBuisson)


  • Fixed a bug whereby the test fixtures were not included in the source distribution (resolves #8)
  • Marked the modules as Trustworthy indicating that they do not perform unsafe operations (resolves #9)
  • Include stack files for older resolvers in CI and the source distribution
  • Removed flags from the cabal file that prevented older GHC from being able to build (contributes #6)


  • This is an alpha testing release with an incomplete feature set to recieve feedback on the API.
  • The API may change in the recent future. When alpha testing has commenced, the version will start at 1.0.0.