This is an edge case. The null ref was caused by an old rev of the code having the JSON data in the wrong shape. I agree with the comment in principle but in this case the scope of the try block seemed pretty narrow: intended to catch the JSON access methods. (Alternatively a strongly type version would have just failed with a deserialize error which doesn't seem any better in this context.)

We absolutely don't expect this so this seems like a reasonable exception vs if.