Confused about why scroll api doesn't seem to function

curl 'http://localhost:9200/<index>/<type>/_search?scroll=1m'  -H 'content-type: application/json;charset=UTF-8' -H 'accept: application/json' --data-binary '{"query":{"match_all":{}},"sort":["_doc"],"size":100}' --compressed

Output:

{"_index":"<index>","_type":"<type>","_id":"_search?scroll=1m","_version":5,"_shards":{"total":2,"successful":2,"failed":0},"created":false}

I have done some other things as well where the query is more complicated, but decided to take it to the simplest form available in the documentation. I was expecting to get back a "scroll_id"

current version of elastic search

{
  "version" : {
    "number" : "2.3.4",
    "build_hash" : "e455fd0c13dceca8dbbdbb1665d068ae55dabe3f",
    "build_timestamp" : "2016-06-30T11:24:31Z",
    "build_snapshot" : false,
    "lucene_version" : "5.5.0"
  }
}

That output you posted is the response you get when creating a document.

Also it is nice to wrap code in ``` so it is highlighted and stuff. It is also useful to add &pretty to most uses of curl so it is easier to read the responses.

Any idea why its giving the document create response?

I'm not sure! Something to do with the way you are invoking curl. Can you
remove some of the options and try again? Usually I just use -X and -d.

yeah no change

I tried this and it worked as expected:

curl -XPOST localhost:9200/test/test?refresh -d'{"test":"test"}'
curl 'http://localhost:9200/test/test/_search?scroll=1m'  -H 'content-type: application/json;charset=UTF-8' -H 'accept: application/json' --data-binary '{"query":{"match_all":{}},"sort":["_doc"],"size":100}' --compressed

Here is my curl version:

$ curl --version
curl 7.38.0 (x86_64-pc-linux-gnu) libcurl/7.38.0 OpenSSL/1.0.1t zlib/1.2.8 libidn/1.29 libssh2/1.4.3 librtmp/2.3
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtmp rtsp scp sftp smtp smtps telnet tftp 
Features: AsynchDNS IDN IPv6 Largefile GSS-API SPNEGO NTLM NTLM_WB SSL libz TLS-SRP 

I'm not sure if there is anything else I can do for you though.

I found the issue --- was too confident in one of the components I was using in my system -- it was working just fine for normal queries -- when trying to use it for the scroll api it's failing for some reason i.e _search vs _search?scroll=1m -- very weird