I'm not a huge fan of doing error handling this way. I think it's a lot easier to read if we catch the exception raised in `parse_datetime` and construct the `HttpResponse` here. That way you don't have to duplicate the same parsing logic for the legacy dashboard. (Though I do think `dateutil.parser` is probably the best bet.)