title: Mapping Elasticsearch with Python
body: <p>I have JSON docs (referred to below as "file_content") that have strings that I want all set to not_analyzed. I am <em>trying</em> to accomplish this as such:</p>
  
  <pre><code>if not es.indices.exists(index='telemfile'):
                  es.indices.create('telemfile')                                                  #  Create the index to work with
                  namapping = {
                      "mappings": {
                          "telemetry_file": {
                              "dynamic_templates": [{
                                  "string_fields": {
                                      "match": "*",
                                      "match_mapping_type": "string",
                                      "mapping": {
                                          "type": "string",
                                          "index": "not_analyzed"
                                      }
                                  }
                              }]
                          }
                      }
                  }
                  es.indices.put_mapping(index='telemfile', doc_type='telemetry_file', body=namapping)
  
              es.index(index='telemfile', doc_type='telemetry_file', body=file_content)
  </code></pre>
  
  <p>but I get the following error:
   MapperParsingException[Root type mapping not empty after parsing! Remaining fields:   [mappings : {telemetry_file={dynamic_templates=[{string_fields={mapping={type=string, index=not_analyzed}, match=*, match_mapping_type=string}}]}}]]; 
  Can anyone tell me what I am doing wrong?</p>