IMPORTANT: This documentation is no longer updated. Refer to Elastic's version policy and the latest documentation.

Examples

edit

Below you can find examples of how to use the most frequently called APIs with the Python client.

Indexing a document

edit

To index a document, you need to specify three pieces of information: index, id, and a document:

from datetime import datetime
from elasticsearch import Elasticsearch
client = Elasticsearch('https://localhost:9200')

doc = {
    'author': 'author_name',
    'text': 'Interesting content...',
    'timestamp': datetime.now(),
}
resp = client.index(index="test-index", id=1, document=doc)
print(resp['result'])

Getting a document

edit

To get a document, you need to specify its index and id:

resp = client.get(index="test-index", id=1)
print(resp['_source'])

Refreshing an index

edit

You can perform the refresh operation on an index:

client.indices.refresh(index="test-index")

Searching for a document

edit

The search() method returns results that are matching a query:

resp = client.search(index="test-index", query={"match_all": {}})
print("Got %d Hits:" % resp['hits']['total']['value'])
for hit in resp['hits']['hits']:
    print("%(timestamp)s %(author)s: %(text)s" % hit["_source"])

Updating a document

edit

To update a document, you need to specify three pieces of information: index, id, and a doc:

from datetime import datetime
from elasticsearch import Elasticsearch

client = Elasticsearch('https://localhost:9200')

doc = {
    'author': 'author_name',
    'text': 'Interesting modified content...',
    'timestamp': datetime.now(),
}
resp = client.update(index="test-index", id=1, doc=doc)
print(resp['result'])

Deleting a document

edit

You can delete a document by specifying its index, and id in the delete() method:

client.delete(index="test-index", id=1)