Previously, this would have accepted a normal request, and returned
a json response. However, if there were any errors in the request
(and it is easy to introduce errors with invalid start/end times),
it would result in using the fallback web error handler. Since we
never want this route to handle non-json requests, it's easiest to
just enforce that, so we don't have to worry about error handling
for non-json requests.