Developing a service hook

AppHarbor supports service hooks, similar to those of Bitbucket, GitHub etc.

Service hooks can be used for sending notifications or triggering actions after a build. We invoke the service for both succeeded and failed builds and send along metadata about the build (the commit ID and the commit message, the name of the application and the status).

Service hooks are defined in the application dashboard.

We will send a POST request content-type "application/json" and the following body:

{
  "application": {
    "name": "Foo",
    "slug": "foo",
    "url": "https://appharbor.com/applications/foo"
  }, 
  "build": {
    "id": "bar",
    "branch" : {
         "name" : "baz",
         "commit" : {
             "id" : "77d991fe61187d205f329ddf9387d118a09fadcd",
             "message" : "Implement foobar"
         }
    },
    "status": "succeeded",
    "url": "https://appharbor.com/applications/foo/builds/bar"
  }
}

For an example of how to implement a service hook, take a look at the open-source TweetHarbor.