What is the current timeout for webhooks that are sent to GitHub applications? And could you by any chance increase the timeout?

My special use case here is hosting web applications on free hosting plans by providers Heroku or now. After some time without requests, these services put apps to “sleep” and they get “woken up” the first time they receive a request again. For both Heroku and Zeit, the webhook requests coming from GitHub are usually timing out. For example for now, waking up the app takes about 20-30s, I haven’t tested Heroku recently.

This is very unfortunate because the first request is often times part of a first-run experience of a GitHub app user, from their perspective the app simply does not work as advertised.

If you can’t increase the timeouts in general, I wonder if you can make a check to see if a request has been sent in the past ~5min and if not, increase the timeout for requests until the first response arrives?

@gr2m I can’t speak to the particulars of the implementation, but I can offer a workaround that I’ve considered using myself: there might be a monitoring service that could ping your apps regularly—which would have the side effect of keeping them awake.

@gr2m Ivan pointed me to the context for current timeout settings. In short: they were recently lowered from 30 seconds to 10 seconds in response to some specific behavior issues that were observed with the longer timeouts.