diff --git a/eve_elastic/elastic.py b/eve_elastic/elastic.py
index <HASH>..<HASH> 100644
--- a/eve_elastic/elastic.py
+++ b/eve_elastic/elastic.py
@@ -291,8 +291,8 @@ class Elastic(DataLayer):
         ids = []
         kwargs.update(self._es_args(resource))
         for doc in doc_or_docs:
-            doc.update(self.es.index(body=doc, id=doc.get('_id'), **kwargs))
-            ids.append(doc['_id'])
+            res = self.es.index(body=doc, id=doc.get('_id'), **kwargs)
+            ids.append(res.get('_id', doc.get('_id')))
         get_indices(self.es).refresh(self.index)
         return ids
fix(insert): don't extend document on insert

it should avoid adding elastic internal data to docs like _version, _index, _type