docs: def put_mapping(self, doc_type=None, mapping=None, indices=None, ignore_conflicts=None):
          """
          Register specific mapping definition for a specific type against one or more indices.
          (See :ref:`es-guide-reference-api-admin-indices-put-mapping`)
  
          """
          if not isinstance(mapping, dict):
              if mapping is None:
                  mapping = {}
              if hasattr(mapping, "as_dict"):
                  mapping = mapping.as_dict()
  
          if doc_type:
              path = self.conn._make_path(indices, doc_type, "_mapping")
              if doc_type not in mapping:
                  mapping = {doc_type: mapping}
          else:
              path = self.conn._make_path(indices, (), "_mapping")
  
          parameters = {}
  
          if ignore_conflicts is not None:
              parameters['ignore_conflicts'] = ignore_conflicts
  
          return self.conn._send_request('PUT', path, mapping, params=parameters)