Hey Kristof,Thanks for the input. A few things. I'm not mixing the REST and JS API. Nor am I asking to have them mixed. These APIs have a relationship. In JS API v2.0 when you call .queryIds() method on a FeatureLayer it sends a restful URL to the server with a number of parameters. One of those is returnIdsOnly, which specifies that you only want IDs returned. This happens even if you are doing .queryIds() on a 9.3.1 map service. See the example code below.Yes, queryIds is functionality that is supported at 10.0 MapServices and not 9.3.1 MapServices. However, that doesn't mean that people aren't using the JS 2.0 API to make calls to 9.3.1 map services. ESRI's samples for JS 2.0 API are full of examples like here. Sure, people SHOULD know that they won't be able to use the full functionality of the 2.0 API against old map services (as I did when I started this last week). But that doesn't mean they won't forget. And they will try to make 2.0 method calls (like queryIds()) by mistake and there is NO mention of these problematic version conflicts in the JS 2.0 API. That's all I'm saying. Wouldn't it be nice if people using the new 2.0 FeatureLayer had a sentence at the beginning of this doc saying a word or two reminding them that certain methods are going to get unexpected results when using 9.3.1 map services. Right now the ONLY mention of this potentiality is here. I don't think that is a unreasonable request. Just trying to make the documentation better.Why do I think this is confusing for some people? Because when you're using the JS API v2.0 .queryIds() method on a 9.3.1 MapService (see code example below) even if you shouldn't be it still works -- and you still get features back and it still executes your callback all is if the 9.3.1 map service supports that call in a weird way. No errors returned. Not too confusing once you figure it out. But it kept me going for an hour. See the actual requests generated from the script below at the very bottom of this post.function initQueryIDCalls(){
var mapService931URL = "http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Demographics/ESRI_Census_USA/MapServer/3";
var mapService10URL = "http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Earthquakes/Since_1970/MapServer/0";
featurelayer931 = new esri.layers.FeatureLayer(mapService931URL, {mode: esri.layers.FeatureLayer.MODE_SNAPSHOT});
featurelayer10 = new esri.layers.FeatureLayer(mapService10URL, {mode: esri.layers.FeatureLayer.MODE_SNAPSHOT});
var query = new esri.tasks.Query();
query.where = "1=1";
featurelayer931.queryIds(query);
featurelayer10.queryIds(query);
}
1) JS API 2.0 queryIds() request on 9.3.1 Map Service2) JS API 2.0 queryIds() request on 10.0 Map Service