Minor thing, but this should probably be using the bang variant (`post_json!`) so that a 404 will raise an exception.  The non-bang variants rescue 404 errors and return nil.