code: def render_POST(self, request):
          
          try:
              d = self.getAndSubmitChanges(request)
          except Exception:
              d = defer.fail()
  
          def ok(_):
              request.setResponseCode(202)
              request.finish()
  
          def err(why):
              code = 500
              if why.check(ValueError):
                  code = 400
                  msg = unicode2bytes(why.getErrorMessage())
              else:
                  log.err(why, "adding changes from web hook")
                  msg = b'Error processing changes.'
              request.setResponseCode(code, msg)
              request.write(msg)
              request.finish()
  
          d.addCallbacks(ok, err)
  
          return server.NOT_DONE_YET
docs: Responds to events and starts the build process
            different implementations can decide on what methods they will accept
  
          :arguments:
              request
                  the http request object