Aggregation-keywords

I guess you meant terms and state.keyword.

If you are not defining any mapping in elasticsearch, then elasticsearch tries to automatically guess the mapping for you. If you sent a text within a state field, then elasticsearch created 2 fields behind the scene state and state.keyword. The former is more for full text search, the later more for computing aggregations, do sorting...

You can look at the mapping by doing:

GET /bank/_mapping