# Doc can be found by query but not by get

**URL:** <https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860>\
**Category:** Elasticsearch\
**Created:** [August 10, 2018, 11:26am UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860 "2018-08-10T11:26:45Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Cristi\_Boariu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/cristi_boariu/32/4367_2.png) [@Cristi\_Boariu](https://discuss.elastic.co/u/Cristi_Boariu)\
**Post date:** [August 10, 2018, 11:26am UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/1 "2018-08-10T11:26:45Z")

</div>

I have indexed a few documents for some users and I can find any of them by id, eg:

`GET /athlete/_search?q=id:19`  
(returns my athlete in \_source):

```
{
  "took": 2,
  "timed_out": false,
  "_shards": {
    "total": 5,
    "successful": 5,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": 1,
    "max_score": 1,
    "hits": [
      {
        "_index": "athlete",
        "_type": "doc",
        "_id": "19",
        "_score": 1,
        "_source": {
          "type": "athlete",
          "firstname": "Cristi",
          "id": 19,
          "fullname": "Cristi B",
          "followers": 2,
          "lastname": "Boariu",
          "username": "cristiboariuok",
          "urlthumb": "http://www.google.com",
          "@version": "1",
          "@timestamp": "2018-08-10T11:05:02.185Z"
        }
      }
    ]
  }
}

```

but when I try to get that specific doc by id:  
`GET /athlete/_doc/19`

it returns:

```
{
  "_index": "athlete",
  "_type": "_doc",
  "_id": "19",
  "found": false
}

```

Can anybody give a helping hand please?

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [August 10, 2018, 11:55am UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/2 "2018-08-10T11:55:13Z")

</div>

Did you use routing function by any chance? Or Parent/Child feature?

---

<div class="post-metadata">

**Author:** ![Cristi\_Boariu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/cristi_boariu/32/4367_2.png) [@Cristi\_Boariu](https://discuss.elastic.co/u/Cristi_Boariu)\
**Post date:** [August 10, 2018, 12:08pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/3 "2018-08-10T12:08:47Z")

</div>

No...

This is the logstash script I built to import data from mysql into ES:

```
input {
  jdbc { 
    jdbc_connection_string => "jdbc:mysql://ip/admin"
    # The user we wish to execute our statement as
    jdbc_user => "root"
    jdbc_password => "pwd"
    # The path to our downloaded jdbc driver
    jdbc_driver_library => "/user/share/logstash/mysql-connector-java-5.1.46.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    tracking_column => "id"
    use_column_value => true
    schedule => "* * * * *"
    # our query
    statement => "
    SELECT 
    	u.id,
        u.username,
        u.firstName,
        u.lastName,
        CONCAT(u.firstName, ' ', u.lastName) as fullName,
        u.type,
        u.followers,
        a.urlThumb
    FROM user u
    LEFT JOIN
        asset a ON a.id = u.imageId
    WHERE u.type = 'athlete';"
    }
}

output {
  elasticsearch {
    hosts => ["https://host:9243"]
    index => "athlete"
    user => "elastic"
    password => "pwd"
    document_id => "%{id}"
    action => index
  }
  stdout {
    codec => rubydebug
  }
}
```

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [August 10, 2018, 12:17pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/4 "2018-08-10T12:17:11Z")

</div>

What is the output of

```auto
GET athlete/_settings

```

---

<div class="post-metadata">

**Author:** ![Cristi\_Boariu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/cristi_boariu/32/4367_2.png) [@Cristi\_Boariu](https://discuss.elastic.co/u/Cristi_Boariu)\
**Post date:** [August 10, 2018, 12:17pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/5 "2018-08-10T12:17:36Z")

</div>

> [@dadoonet](#):
>
> GET athlete/\_settings

```auto
{
  "athlete": {
    "settings": {
      "index": {
        "creation_date": "1533897887106",
        "number_of_shards": "5",
        "number_of_replicas": "1",
        "uuid": "XEvXcd_5RTGr3xPgeeihAw",
        "version": {
          "created": "6030199"
        },
        "provided_name": "athlete"
      }
    }
  }
}

```

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [August 10, 2018, 1:57pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/6 "2018-08-10T13:57:23Z")

</div>

Oh I see.

There is a typo between `doc` and `_doc`.

Try:

```auto
GET athlete/doc/19

```

---

<div class="post-metadata">

**Author:** ![Cristi\_Boariu](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/cristi_boariu/32/4367_2.png) [@Cristi\_Boariu](https://discuss.elastic.co/u/Cristi_Boariu)\
**Post date:** [August 10, 2018, 3:47pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/7 "2018-08-10T15:47:38Z")

</div>

Thanks a lot...It works indeed.

But please note that here [https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-get.html) is: `_doc`, eg:

`GET twitter/_doc/0`

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [August 10, 2018, 4:24pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/8 "2018-08-10T16:24:14Z")

</div>

This is true but the doc type you have in your case is `doc` and not `_doc`.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [September 7, 2018, 4:24pm UTC](https://discuss.elastic.co/t/doc-can-be-found-by-query-but-not-by-get/143860/9 "2018-09-07T16:24:16Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
