Kibana field type and Elasticsearch mapping don't match

I spent a long time today trying to apply a new index template, to change the type of a field from a string to an integer. Then I used the GET Mapping API and saw this :

"response_time" : {
    "type" : "integer"
    },

I suspect there was no problem with Elasticsearch or Logstash in the first place, but for some reason Kibana still treats it as a string. I deleted all my old indices and index templates (the data wasn't important). I've changed other fields using a custom mapping and Kibana hasn't done this before. What could be causing this?

Hi @egray,

I want to confirm that you've refreshed the field list in Kibana for the index pattern?

The refresh button is located at the top right when viewing an index pattern in Kibana management.

Thank you, this fixed it, although I had to create a new index pattern because there were no index patterns. I don't know why any logs were showing up at all, or why previously I haven't had to do this.

I'm guessing there could have been a mismatch on types between indices of that index pattern causing the string type to be what Kibana used.