From e042f51836538adfd848ade8f0d26dc7665b2c77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Istv=C3=A1n=20Zolt=C3=A1n=20Szab=C3=B3?= Date: Fri, 13 Oct 2023 11:27:46 +0200 Subject: [PATCH] [DOCS] Adds quickstart guide to ES Py Read The Docs (#2335) Co-authored-by: Quentin Pradet --- docs/sphinx/index.rst | 1 + docs/sphinx/quickstart.rst | 129 +++++++++++++++++++++++++++++++++++++ 2 files changed, 130 insertions(+) create mode 100644 docs/sphinx/quickstart.rst diff --git a/docs/sphinx/index.rst b/docs/sphinx/index.rst index 122970f02..307827344 100644 --- a/docs/sphinx/index.rst +++ b/docs/sphinx/index.rst @@ -110,6 +110,7 @@ Contents .. toctree:: :maxdepth: 3 + quickstart api exceptions async diff --git a/docs/sphinx/quickstart.rst b/docs/sphinx/quickstart.rst new file mode 100644 index 000000000..e21cfe49f --- /dev/null +++ b/docs/sphinx/quickstart.rst @@ -0,0 +1,129 @@ +Quickstart +========== + +This guide shows you how to install the Elasticsearch Python client and perform basic +operations like indexing or searching documents. + +Requirements +------------ + +- `Python `_ 3.6 or newer +- `pip `_ + + +Installation +------------ + +To install the client, run the following command: + +.. code-block:: console + + $ python -m pip install elasticsearch + + +Connecting +---------- + +You can connect to Elastic Cloud using an API key and the Cloud ID. + +.. code-block:: python + + from elasticsearch import Elasticsearch + + client = Elasticsearch(cloud_id="YOUR_CLOUD_ID", api_key="YOUR_API_KEY") + +Your Cloud ID can be found on the **My deployment** page of your deployment +under **Cloud ID**. + +You can generate an API key on the **Management** page under Security. + +.. image:: ../guide/images/create-api-key.png + + +Using the client +---------------- + +Time to use Elasticsearch! This section walks you through the most important +operations of Elasticsearch. The following examples assume that the Python +client was instantiated as above. + + +Creating an index +^^^^^^^^^^^^^^^^^ + +This is how you create the `my_index` index: + +.. code-block:: python + + client.indices.create(index="my_index") + + +Indexing documents +^^^^^^^^^^^^^^^^^^ + +This indexes a document with the index API: + +.. code-block:: python + + client.index( + index="my_index", + id="my_document_id", + document={ + "foo": "foo", + "bar": "bar", + }, + ) + + +Getting documents +^^^^^^^^^^^^^^^^^ + +You can get documents by using the following code: + +.. code-block:: python + + client.get(index="my_index", id="my_document_id") + + +Searching documents +^^^^^^^^^^^^^^^^^^^ + +This is how you can create a single match query with the Python client: + + +.. code-block:: python + + client.search(index="my_index", query={"match": {"foo": {"query": "foo"}}}) + + +Updating documents +^^^^^^^^^^^^^^^^^^ + +This is how you can update a document, for example to add a new field: + +.. code-block:: python + + client.update( + index="my_index", + id="my_document_id", + doc={ + "foo": "bar", + "new_field": "new value", + }, + ) + + +Deleting documents +^^^^^^^^^^^^^^^^^^ + +.. code-block:: python + + client.delete(index="my_index", id="my_document_id") + + +Deleting an index +^^^^^^^^^^^^^^^^^ + +.. code-block:: python + + client.indices.delete(index="my_index")