Better error message capture

Why do we just return the result here if we couldn't parse JSON? Might want a comment to explain.