title: NSJSONSerialization isValidJSONObject returns false for received data from Venue search endpoint
body: <p>Xcode 8.1 Deployment target iOS 9.0</p>
  
  <p>I'm getting an array of compact venue objects as expected from Foursquare Venue Search endpoint in...</p>
  
  <pre><code>- (void)URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data
  </code></pre>
  
  <p>When I check the <em>data</em> object using...</p>
  
  <pre><code>if ([NSJSONSerialization isValidJSONObject:data])
  </code></pre>
  
  <p>i get a false.</p>
  
  <p>Can someone tell me what is wrong over here?</p>
  
  <p>Edit:
  Here is the complete if block (after adding typecast to <em>data</em> in if block)...</p>
  
  <pre><code>    id foundationObject;
  
  NSLog(@"data:- %@",data);
  if ([NSJSONSerialization isValidJSONObject:(id)data])
  {
      foundationObject = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
      NSLog(@"venues foundation object:- %@",foundationObject);
  }
  </code></pre>
  
  <p>Earlier the code didn't have the if block. just...</p>
  
  <pre><code>id foundationObject = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
  </code></pre>
  
  <p>The change was made when I realized (using breakpoint just after the above statement) that <em>foundationObject</em> was nil even though <em>data</em> wasn't.</p>
  
  <p>Note: this worked fine earlier when I shipped my app for iOS 9.x in march. Could the version of the Venue Endpoint being called be making a difference?</p>