From 6e55472ca3747b48b21aa4294b57bad38d366a2f Mon Sep 17 00:00:00 2001
From: Marci W <333176+marciw@users.noreply.github.com>
Date: Fri, 7 Mar 2025 08:37:23 -0500
Subject: [PATCH] [docs] Migrate docs from AsciiDoc to Markdown (#2582) (#2596)

* delete asciidoc files

* add migrated files

---------

Co-authored-by: Marci W <333176+marciw@users.noreply.github.com>
(cherry picked from commit 7aedc17771e71315d50ad808160f3a7a82200bcf)

Co-authored-by: Colleen McGinnis <colleen.j.mcginnis@gmail.com>
---
 docs/basic-config.asciidoc                    |  37 --
 docs/config.asciidoc                          |   9 -
 docs/docset.yml                               | 490 ++++++++++++++++++
 docs/dsl.asciidoc                             |   6 -
 docs/ecs.asciidoc                             |  34 --
 docs/examples/apm/screenshot.jpg              | Bin 324480 -> 0 bytes
 docs/getting-started.asciidoc                 | 141 -----
 docs/helpers/index.asciidoc                   |  10 -
 docs/index.asciidoc                           |  32 --
 docs/installation.asciidoc                    |  61 ---
 docs/integrations.asciidoc                    |  30 --
 docs/open-telemetry.asciidoc                  |  94 ----
 docs/overview.asciidoc                        |  38 --
 docs/rails.asciidoc                           |  24 -
 .../Helpers.md}                               | 131 +++--
 .../activemodel_activerecord.md}              |  51 +-
 .../advanced-config.md}                       | 199 +++----
 docs/{api.asciidoc => reference/api.md}       | 104 ++--
 docs/reference/basic-config.md                |  37 ++
 docs/reference/client-helpers.md              |  14 +
 docs/reference/configuration.md               |  14 +
 .../connecting.md}                            | 209 ++++----
 docs/reference/dsl.md                         |  11 +
 docs/reference/ecs.md                         |  37 ++
 .../esql.asciidoc => reference/esql.md}       |  78 ++-
 .../examples.md}                              |  96 ++--
 docs/reference/getting-started.md             | 125 +++++
 docs/reference/index.md                       |  40 ++
 docs/reference/installation.md                |  44 ++
 docs/reference/integrations.md                |  26 +
 docs/reference/opentelemetry.md               |  97 ++++
 .../persistence.md}                           |  78 ++-
 docs/reference/ruby_on_rails.md               |  23 +
 docs/reference/toc.yml                        |  24 +
 .../transport.md}                             | 169 +++---
 docs/release-notes/breaking-changes.md        |  28 +
 docs/release-notes/deprecations.md            |  28 +
 docs/release-notes/index.md                   |  27 +
 docs/release-notes/known-issues.md            |  20 +
 docs/release-notes/toc.yml                    |   5 +
 docs/release_notes/70.asciidoc                | 195 -------
 docs/release_notes/710.asciidoc               |  62 ---
 docs/release_notes/711.asciidoc               |  49 --
 docs/release_notes/712.asciidoc               |  28 -
 docs/release_notes/713.asciidoc               |  53 --
 docs/release_notes/714.asciidoc               |  93 ----
 docs/release_notes/715.asciidoc               |  20 -
 docs/release_notes/716.asciidoc               |  96 ----
 docs/release_notes/717.asciidoc               |  29 --
 docs/release_notes/75.asciidoc                |  59 ---
 docs/release_notes/76.asciidoc                |  86 ---
 docs/release_notes/77.asciidoc                |  77 ---
 docs/release_notes/78.asciidoc                | 103 ----
 docs/release_notes/79.asciidoc                |  60 ---
 docs/release_notes/80.asciidoc                |  74 ---
 docs/release_notes/81.asciidoc                |  55 --
 docs/release_notes/810.asciidoc               |  51 --
 docs/release_notes/811.asciidoc               |  24 -
 docs/release_notes/812.asciidoc               |  65 ---
 docs/release_notes/813.asciidoc               |  76 ---
 docs/release_notes/814.asciidoc               |  52 --
 docs/release_notes/815.asciidoc               |  99 ----
 docs/release_notes/816.asciidoc               |  57 --
 docs/release_notes/817.asciidoc               |  20 -
 docs/release_notes/82.asciidoc                |  49 --
 docs/release_notes/83.asciidoc                |  33 --
 docs/release_notes/84.asciidoc                |  31 --
 docs/release_notes/85.asciidoc                | 105 ----
 docs/release_notes/86.asciidoc                |  23 -
 docs/release_notes/87.asciidoc                |  35 --
 docs/release_notes/88.asciidoc                |  47 --
 docs/release_notes/89.asciidoc                |  54 --
 docs/release_notes/index.asciidoc             |  74 ---
 docs/troubleshooting.asciidoc                 |  97 ----
 74 files changed, 1552 insertions(+), 3300 deletions(-)
 delete mode 100644 docs/basic-config.asciidoc
 delete mode 100644 docs/config.asciidoc
 create mode 100644 docs/docset.yml
 delete mode 100644 docs/dsl.asciidoc
 delete mode 100644 docs/ecs.asciidoc
 delete mode 100644 docs/examples/apm/screenshot.jpg
 delete mode 100644 docs/getting-started.asciidoc
 delete mode 100644 docs/helpers/index.asciidoc
 delete mode 100644 docs/index.asciidoc
 delete mode 100644 docs/installation.asciidoc
 delete mode 100644 docs/integrations.asciidoc
 delete mode 100644 docs/open-telemetry.asciidoc
 delete mode 100644 docs/overview.asciidoc
 delete mode 100644 docs/rails.asciidoc
 rename docs/{helpers/bulk-scroll.asciidoc => reference/Helpers.md} (78%)
 rename docs/{model.asciidoc => reference/activemodel_activerecord.md} (55%)
 rename docs/{advanced-config.asciidoc => reference/advanced-config.md} (55%)
 rename docs/{api.asciidoc => reference/api.md} (68%)
 create mode 100644 docs/reference/basic-config.md
 create mode 100644 docs/reference/client-helpers.md
 create mode 100644 docs/reference/configuration.md
 rename docs/{connecting.asciidoc => reference/connecting.md} (57%)
 create mode 100644 docs/reference/dsl.md
 create mode 100644 docs/reference/ecs.md
 rename docs/{helpers/esql.asciidoc => reference/esql.md} (72%)
 rename docs/{examples.asciidoc => reference/examples.md} (82%)
 create mode 100644 docs/reference/getting-started.md
 create mode 100644 docs/reference/index.md
 create mode 100644 docs/reference/installation.md
 create mode 100644 docs/reference/integrations.md
 create mode 100644 docs/reference/opentelemetry.md
 rename docs/{persistence.asciidoc => reference/persistence.md} (56%)
 create mode 100644 docs/reference/ruby_on_rails.md
 create mode 100644 docs/reference/toc.yml
 rename docs/{transport.asciidoc => reference/transport.md} (57%)
 create mode 100644 docs/release-notes/breaking-changes.md
 create mode 100644 docs/release-notes/deprecations.md
 create mode 100644 docs/release-notes/index.md
 create mode 100644 docs/release-notes/known-issues.md
 create mode 100644 docs/release-notes/toc.yml
 delete mode 100644 docs/release_notes/70.asciidoc
 delete mode 100644 docs/release_notes/710.asciidoc
 delete mode 100644 docs/release_notes/711.asciidoc
 delete mode 100644 docs/release_notes/712.asciidoc
 delete mode 100644 docs/release_notes/713.asciidoc
 delete mode 100644 docs/release_notes/714.asciidoc
 delete mode 100644 docs/release_notes/715.asciidoc
 delete mode 100644 docs/release_notes/716.asciidoc
 delete mode 100644 docs/release_notes/717.asciidoc
 delete mode 100644 docs/release_notes/75.asciidoc
 delete mode 100644 docs/release_notes/76.asciidoc
 delete mode 100644 docs/release_notes/77.asciidoc
 delete mode 100644 docs/release_notes/78.asciidoc
 delete mode 100644 docs/release_notes/79.asciidoc
 delete mode 100644 docs/release_notes/80.asciidoc
 delete mode 100644 docs/release_notes/81.asciidoc
 delete mode 100644 docs/release_notes/810.asciidoc
 delete mode 100644 docs/release_notes/811.asciidoc
 delete mode 100644 docs/release_notes/812.asciidoc
 delete mode 100644 docs/release_notes/813.asciidoc
 delete mode 100644 docs/release_notes/814.asciidoc
 delete mode 100644 docs/release_notes/815.asciidoc
 delete mode 100644 docs/release_notes/816.asciidoc
 delete mode 100644 docs/release_notes/817.asciidoc
 delete mode 100644 docs/release_notes/82.asciidoc
 delete mode 100644 docs/release_notes/83.asciidoc
 delete mode 100644 docs/release_notes/84.asciidoc
 delete mode 100644 docs/release_notes/85.asciidoc
 delete mode 100644 docs/release_notes/86.asciidoc
 delete mode 100644 docs/release_notes/87.asciidoc
 delete mode 100644 docs/release_notes/88.asciidoc
 delete mode 100644 docs/release_notes/89.asciidoc
 delete mode 100644 docs/release_notes/index.asciidoc
 delete mode 100644 docs/troubleshooting.asciidoc

diff --git a/docs/basic-config.asciidoc b/docs/basic-config.asciidoc
deleted file mode 100644
index d0edd7ec76..0000000000
--- a/docs/basic-config.asciidoc
+++ /dev/null
@@ -1,37 +0,0 @@
-[[basic-config]]
-=== Basic configuration
-
-The table below contains the most important initialization parameters that you 
-can use.
-
-
-[cols="<,<,<"]
-|===
-
-| **Parameter**                   | **Data type**                          | **Description**
-| `adapter`                       | Symbol                                 | A specific adapter for Faraday (for example, `:patron`).
-| `api_key`                       | String, Hash                           | For API key Authentication. Either the base64 encoding of `id` and `api_key` joined by a colon as a string, or a hash with the `id` and `api_key` values.
-| `compression`                   | Boolean                                | Whether to compress requests. Gzip compression is used. Defaults to `false`. Responses are automatically inflated if they are compressed. If a custom transport object is used, it must handle the request compression and response inflation.
-| `enable_meta_header`            | Boolean                                | Whether to enable sending the meta data header to Cloud. Defaults to `true`.
-| `hosts`                         | String, Array                          | Single host passed as a string or hash, or multiple hosts passed as an array; `host` or `url` keys are also valid.
-| `log`                           | Boolean                                | Whether to use the default logger. Disabled by default.
-| `logger`                        | Object                                 | An instance of a Logger-compatible object.
-| `opaque_id_prefix`              | String                                 | Sets a prefix for X-Opaque-Id when initializing the client. This is prepended to the id you set before each request if you're using X-Opaque-Id.
-| `opentelemetry_tracer_provider` | `OpenTelemetry::Trace::TracerProvider` | An explicit TracerProvider to use instead of the global one with OpenTelemetry. This enables better dependency injection and simplifies testing.
-| `randomize_hosts`               | Boolean                                | Whether to shuffle connections on initialization and reload. Defaults to `false`.
-| `reload_connections`            | Boolean, Number                        | Whether to reload connections after X requests. Defaults to `false`.
-| `reload_on_failure`             | Boolean                                | Whether to reload connections after failure. Defaults to `false`.
-| `request_timeout`               | Integer                                | The request timeout to be passed to transport in options.
-| `resurrect_after`               | Integer                                | Specifies after how many seconds a dead connection should be tried again.
-| `retry_on_failure`              | Boolean, Number                        | Whether to retry X times when request fails before raising and exception. Defaults to `false`.
-| `retry_on_status`               | Array, Number                          | Specifies which status code needs to be returned to retry.
-| `selector`                      | Constant                               | An instance of selector strategy implemented with {Elastic::Transport::Transport::Connections::Selector::Base}.
-| `send_get_body_as`              | String                                 | Specifies the HTTP method to use for GET requests with a body. Defaults to `GET`.
-| `serializer_class`              | Constant                               | Specifies a serializer class to use. It is initialized by the transport and passed the transport instance.
-| `sniffer_timeout`               | Integer                                | Specifies the timeout for reloading connections in seconds. Defaults to `1`.
-| `trace`                         | Boolean                                | Whether to use the default tracer. Disabled by default.
-| `tracer`                        | Object                                 | Specifies an instance of a Logger-compatible object.
-| `transport`                     | Object                                 | Specifies a transport instance.
-| `transport_class`               | Constant                               | Specifies a transport class to use. It is initialized by the client and passed hosts and all arguments.
-| `transport_options`             | Hash                                   | Specifies the options to be passed to the `Faraday::Connection` constructor.
-|===
diff --git a/docs/config.asciidoc b/docs/config.asciidoc
deleted file mode 100644
index c9897f8313..0000000000
--- a/docs/config.asciidoc
+++ /dev/null
@@ -1,9 +0,0 @@
-[[ruby-config]]
-== Configuration
-
-This page contains information about how to configure the Ruby client tailored 
-to your needs. Almost every aspect of the client is configurable. However, in 
-most cases you only need to set a couple of parameters.
-
-* <<basic-config>>
-* <<advanced-config>>
\ No newline at end of file
diff --git a/docs/docset.yml b/docs/docset.yml
new file mode 100644
index 0000000000..fb1b1471b7
--- /dev/null
+++ b/docs/docset.yml
@@ -0,0 +1,490 @@
+project: 'Ruby client'
+exclude:
+  - examples/**
+cross_links:
+  - docs-content
+  - ecs
+  - ecs-logging-ruby
+toc:
+  - toc: reference
+  - toc: release-notes
+subs:
+  ref:   "https://www.elastic.co/guide/en/elasticsearch/reference/current"
+  ref-bare:   "https://www.elastic.co/guide/en/elasticsearch/reference"
+  ref-8x:   "https://www.elastic.co/guide/en/elasticsearch/reference/8.1"
+  ref-80:   "https://www.elastic.co/guide/en/elasticsearch/reference/8.0"
+  ref-7x:   "https://www.elastic.co/guide/en/elasticsearch/reference/7.17"
+  ref-70:   "https://www.elastic.co/guide/en/elasticsearch/reference/7.0"
+  ref-60:   "https://www.elastic.co/guide/en/elasticsearch/reference/6.0"
+  ref-64:   "https://www.elastic.co/guide/en/elasticsearch/reference/6.4"
+  xpack-ref:   "https://www.elastic.co/guide/en/x-pack/6.2"
+  logstash-ref:   "https://www.elastic.co/guide/en/logstash/current"
+  kibana-ref:   "https://www.elastic.co/guide/en/kibana/current"
+  kibana-ref-all:   "https://www.elastic.co/guide/en/kibana"
+  beats-ref-root:   "https://www.elastic.co/guide/en/beats"
+  beats-ref:   "https://www.elastic.co/guide/en/beats/libbeat/current"
+  beats-ref-60:   "https://www.elastic.co/guide/en/beats/libbeat/6.0"
+  beats-ref-63:   "https://www.elastic.co/guide/en/beats/libbeat/6.3"
+  beats-devguide:   "https://www.elastic.co/guide/en/beats/devguide/current"
+  auditbeat-ref:   "https://www.elastic.co/guide/en/beats/auditbeat/current"
+  packetbeat-ref:   "https://www.elastic.co/guide/en/beats/packetbeat/current"
+  metricbeat-ref:   "https://www.elastic.co/guide/en/beats/metricbeat/current"
+  filebeat-ref:   "https://www.elastic.co/guide/en/beats/filebeat/current"
+  functionbeat-ref:   "https://www.elastic.co/guide/en/beats/functionbeat/current"
+  winlogbeat-ref:   "https://www.elastic.co/guide/en/beats/winlogbeat/current"
+  heartbeat-ref:   "https://www.elastic.co/guide/en/beats/heartbeat/current"
+  journalbeat-ref:   "https://www.elastic.co/guide/en/beats/journalbeat/current"
+  ingest-guide:   "https://www.elastic.co/guide/en/ingest/current"
+  fleet-guide:   "https://www.elastic.co/guide/en/fleet/current"
+  apm-guide-ref:   "https://www.elastic.co/guide/en/apm/guide/current"
+  apm-guide-7x:   "https://www.elastic.co/guide/en/apm/guide/7.17"
+  apm-app-ref:   "https://www.elastic.co/guide/en/kibana/current"
+  apm-agents-ref:   "https://www.elastic.co/guide/en/apm/agent"
+  apm-android-ref:   "https://www.elastic.co/guide/en/apm/agent/android/current"
+  apm-py-ref:   "https://www.elastic.co/guide/en/apm/agent/python/current"
+  apm-py-ref-3x:   "https://www.elastic.co/guide/en/apm/agent/python/3.x"
+  apm-node-ref-index:   "https://www.elastic.co/guide/en/apm/agent/nodejs"
+  apm-node-ref:   "https://www.elastic.co/guide/en/apm/agent/nodejs/current"
+  apm-node-ref-1x:   "https://www.elastic.co/guide/en/apm/agent/nodejs/1.x"
+  apm-rum-ref:   "https://www.elastic.co/guide/en/apm/agent/rum-js/current"
+  apm-ruby-ref:   "https://www.elastic.co/guide/en/apm/agent/ruby/current"
+  apm-java-ref:   "https://www.elastic.co/guide/en/apm/agent/java/current"
+  apm-go-ref:   "https://www.elastic.co/guide/en/apm/agent/go/current"
+  apm-dotnet-ref:   "https://www.elastic.co/guide/en/apm/agent/dotnet/current"
+  apm-php-ref:   "https://www.elastic.co/guide/en/apm/agent/php/current"
+  apm-ios-ref:   "https://www.elastic.co/guide/en/apm/agent/swift/current"
+  apm-lambda-ref:   "https://www.elastic.co/guide/en/apm/lambda/current"
+  apm-attacher-ref:   "https://www.elastic.co/guide/en/apm/attacher/current"
+  docker-logging-ref:   "https://www.elastic.co/guide/en/beats/loggingplugin/current"
+  esf-ref:   "https://www.elastic.co/guide/en/esf/current"
+  kinesis-firehose-ref:   "https://www.elastic.co/guide/en/kinesis/{{kinesis_version}}"
+  estc-welcome-current:   "https://www.elastic.co/guide/en/starting-with-the-elasticsearch-platform-and-its-solutions/current"
+  estc-welcome:   "https://www.elastic.co/guide/en/starting-with-the-elasticsearch-platform-and-its-solutions/current"
+  estc-welcome-all:   "https://www.elastic.co/guide/en/starting-with-the-elasticsearch-platform-and-its-solutions"
+  hadoop-ref:   "https://www.elastic.co/guide/en/elasticsearch/hadoop/current"
+  stack-ref:   "https://www.elastic.co/guide/en/elastic-stack/current"
+  stack-ref-67:   "https://www.elastic.co/guide/en/elastic-stack/6.7"
+  stack-ref-68:   "https://www.elastic.co/guide/en/elastic-stack/6.8"
+  stack-ref-70:   "https://www.elastic.co/guide/en/elastic-stack/7.0"
+  stack-ref-80:   "https://www.elastic.co/guide/en/elastic-stack/8.0"
+  stack-ov:   "https://www.elastic.co/guide/en/elastic-stack-overview/current"
+  stack-gs:   "https://www.elastic.co/guide/en/elastic-stack-get-started/current"
+  stack-gs-current:   "https://www.elastic.co/guide/en/elastic-stack-get-started/current"
+  javaclient:   "https://www.elastic.co/guide/en/elasticsearch/client/java-api/current"
+  java-api-client:   "https://www.elastic.co/guide/en/elasticsearch/client/java-api-client/current"
+  java-rest:   "https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current"
+  jsclient:   "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current"
+  jsclient-current:   "https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current"
+  es-ruby-client:   "https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current"
+  es-dotnet-client:   "https://www.elastic.co/guide/en/elasticsearch/client/net-api/current"
+  es-php-client:   "https://www.elastic.co/guide/en/elasticsearch/client/php-api/current"
+  es-python-client:   "https://www.elastic.co/guide/en/elasticsearch/client/python-api/current"
+  defguide:   "https://www.elastic.co/guide/en/elasticsearch/guide/2.x"
+  painless:   "https://www.elastic.co/guide/en/elasticsearch/painless/current"
+  plugins:   "https://www.elastic.co/guide/en/elasticsearch/plugins/current"
+  plugins-8x:   "https://www.elastic.co/guide/en/elasticsearch/plugins/8.1"
+  plugins-7x:   "https://www.elastic.co/guide/en/elasticsearch/plugins/7.17"
+  plugins-6x:   "https://www.elastic.co/guide/en/elasticsearch/plugins/6.8"
+  glossary:   "https://www.elastic.co/guide/en/elastic-stack-glossary/current"
+  upgrade_guide:   "https://www.elastic.co/products/upgrade_guide"
+  blog-ref:   "https://www.elastic.co/blog/"
+  curator-ref:   "https://www.elastic.co/guide/en/elasticsearch/client/curator/current"
+  curator-ref-current:   "https://www.elastic.co/guide/en/elasticsearch/client/curator/current"
+  metrics-ref:   "https://www.elastic.co/guide/en/metrics/current"
+  metrics-guide:   "https://www.elastic.co/guide/en/metrics/guide/current"
+  logs-ref:   "https://www.elastic.co/guide/en/logs/current"
+  logs-guide:   "https://www.elastic.co/guide/en/logs/guide/current"
+  uptime-guide:   "https://www.elastic.co/guide/en/uptime/current"
+  observability-guide:   "https://www.elastic.co/guide/en/observability/current"
+  observability-guide-all:   "https://www.elastic.co/guide/en/observability"
+  siem-guide:   "https://www.elastic.co/guide/en/siem/guide/current"
+  security-guide:   "https://www.elastic.co/guide/en/security/current"
+  security-guide-all:   "https://www.elastic.co/guide/en/security"
+  endpoint-guide:   "https://www.elastic.co/guide/en/endpoint/current"
+  sql-odbc:   "https://www.elastic.co/guide/en/elasticsearch/sql-odbc/current"
+  ecs-ref:   "https://www.elastic.co/guide/en/ecs/current"
+  ecs-logging-ref:   "https://www.elastic.co/guide/en/ecs-logging/overview/current"
+  ecs-logging-go-logrus-ref:   "https://www.elastic.co/guide/en/ecs-logging/go-logrus/current"
+  ecs-logging-go-zap-ref:   "https://www.elastic.co/guide/en/ecs-logging/go-zap/current"
+  ecs-logging-go-zerolog-ref:   "https://www.elastic.co/guide/en/ecs-logging/go-zap/current"
+  ecs-logging-java-ref:   "https://www.elastic.co/guide/en/ecs-logging/java/current"
+  ecs-logging-dotnet-ref:   "https://www.elastic.co/guide/en/ecs-logging/dotnet/current"
+  ecs-logging-nodejs-ref:   "https://www.elastic.co/guide/en/ecs-logging/nodejs/current"
+  ecs-logging-php-ref:   "https://www.elastic.co/guide/en/ecs-logging/php/current"
+  ecs-logging-python-ref:   "https://www.elastic.co/guide/en/ecs-logging/python/current"
+  ecs-logging-ruby-ref:   "https://www.elastic.co/guide/en/ecs-logging/ruby/current"
+  ml-docs:   "https://www.elastic.co/guide/en/machine-learning/current"
+  eland-docs:   "https://www.elastic.co/guide/en/elasticsearch/client/eland/current"
+  eql-ref:   "https://eql.readthedocs.io/en/latest/query-guide"
+  extendtrial:   "https://www.elastic.co/trialextension"
+  wikipedia:   "https://en.wikipedia.org/wiki"
+  forum:   "https://discuss.elastic.co/"
+  xpack-forum:   "https://discuss.elastic.co/c/50-x-pack"
+  security-forum:   "https://discuss.elastic.co/c/x-pack/shield"
+  watcher-forum:   "https://discuss.elastic.co/c/x-pack/watcher"
+  monitoring-forum:   "https://discuss.elastic.co/c/x-pack/marvel"
+  graph-forum:   "https://discuss.elastic.co/c/x-pack/graph"
+  apm-forum:   "https://discuss.elastic.co/c/apm"
+  enterprise-search-ref:   "https://www.elastic.co/guide/en/enterprise-search/current"
+  app-search-ref:   "https://www.elastic.co/guide/en/app-search/current"
+  workplace-search-ref:   "https://www.elastic.co/guide/en/workplace-search/current"
+  enterprise-search-node-ref:   "https://www.elastic.co/guide/en/enterprise-search-clients/enterprise-search-node/current"
+  enterprise-search-php-ref:   "https://www.elastic.co/guide/en/enterprise-search-clients/php/current"
+  enterprise-search-python-ref:   "https://www.elastic.co/guide/en/enterprise-search-clients/python/current"
+  enterprise-search-ruby-ref:   "https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current"
+  elastic-maps-service:   "https://maps.elastic.co"
+  integrations-docs:   "https://docs.elastic.co/en/integrations"
+  integrations-devguide:   "https://www.elastic.co/guide/en/integrations-developer/current"
+  time-units:   "https://www.elastic.co/guide/en/elasticsearch/reference/current/api-conventions.html#time-units"
+  byte-units:   "https://www.elastic.co/guide/en/elasticsearch/reference/current/api-conventions.html#byte-units"
+  apm-py-ref-v:   "https://www.elastic.co/guide/en/apm/agent/python/current"
+  apm-node-ref-v:   "https://www.elastic.co/guide/en/apm/agent/nodejs/current"
+  apm-rum-ref-v:   "https://www.elastic.co/guide/en/apm/agent/rum-js/current"
+  apm-ruby-ref-v:   "https://www.elastic.co/guide/en/apm/agent/ruby/current"
+  apm-java-ref-v:   "https://www.elastic.co/guide/en/apm/agent/java/current"
+  apm-go-ref-v:   "https://www.elastic.co/guide/en/apm/agent/go/current"
+  apm-ios-ref-v:   "https://www.elastic.co/guide/en/apm/agent/swift/current"
+  apm-dotnet-ref-v:   "https://www.elastic.co/guide/en/apm/agent/dotnet/current"
+  apm-php-ref-v:   "https://www.elastic.co/guide/en/apm/agent/php/current"
+  ecloud:   "Elastic Cloud"
+  esf:   "Elastic Serverless Forwarder"
+  ess:   "Elasticsearch Service"
+  ece:   "Elastic Cloud Enterprise"
+  eck:   "Elastic Cloud on Kubernetes"
+  serverless-full:   "Elastic Cloud Serverless"
+  serverless-short:   "Serverless"
+  es-serverless:   "Elasticsearch Serverless"
+  es3:   "Elasticsearch Serverless"
+  obs-serverless:   "Elastic Observability Serverless"
+  sec-serverless:   "Elastic Security Serverless"
+  serverless-docs:   "https://docs.elastic.co/serverless"
+  cloud:   "https://www.elastic.co/guide/en/cloud/current"
+  ess-utm-params:   "?page=docs&placement=docs-body"
+  ess-baymax:   "?page=docs&placement=docs-body"
+  ess-trial:   "https://cloud.elastic.co/registration?page=docs&placement=docs-body"
+  ess-product:   "https://www.elastic.co/cloud/elasticsearch-service?page=docs&placement=docs-body"
+  ess-console:   "https://cloud.elastic.co?page=docs&placement=docs-body"
+  ess-console-name:   "Elasticsearch Service Console"
+  ess-deployments:   "https://cloud.elastic.co/deployments?page=docs&placement=docs-body"
+  ece-ref:   "https://www.elastic.co/guide/en/cloud-enterprise/current"
+  eck-ref:   "https://www.elastic.co/guide/en/cloud-on-k8s/current"
+  ess-leadin:   "You can run Elasticsearch on your own hardware or use our hosted Elasticsearch Service that is available on AWS, GCP, and Azure. https://cloud.elastic.co/registration{ess-utm-params}[Try the Elasticsearch Service for free]."
+  ess-leadin-short:   "Our hosted Elasticsearch Service is available on AWS, GCP, and Azure, and you can https://cloud.elastic.co/registration{ess-utm-params}[try it for free]."
+  ess-icon:   "image:https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg[link=\"https://cloud.elastic.co/registration{ess-utm-params}\", title=\"Supported on Elasticsearch Service\"]"
+  ece-icon:   "image:https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud_ece.svg[link=\"https://cloud.elastic.co/registration{ess-utm-params}\", title=\"Supported on Elastic Cloud Enterprise\"]"
+  cloud-only:   "This feature is designed for indirect use by https://cloud.elastic.co/registration{ess-utm-params}[Elasticsearch Service], https://www.elastic.co/guide/en/cloud-enterprise/{ece-version-link}[Elastic Cloud Enterprise], and https://www.elastic.co/guide/en/cloud-on-k8s/current[Elastic Cloud on Kubernetes]. Direct use is not supported."
+  ess-setting-change:   "image:https://doc-icons.s3.us-east-2.amazonaws.com/logo_cloud.svg[link=\"{ess-trial}\", title=\"Supported on {ess}\"] indicates a change to a supported https://www.elastic.co/guide/en/cloud/current/ec-add-user-settings.html[user setting] for Elasticsearch Service."
+  ess-skip-section:   "If you use Elasticsearch Service, skip this section. Elasticsearch Service handles these changes for you."
+  api-cloud:   "https://www.elastic.co/docs/api/doc/cloud"
+  api-ece:   "https://www.elastic.co/docs/api/doc/cloud-enterprise"
+  api-kibana-serverless:   "https://www.elastic.co/docs/api/doc/serverless"
+  es-feature-flag:   "This feature is in development and not yet available for use. This documentation is provided for informational purposes only."
+  es-ref-dir:   "'{{elasticsearch-root}}/docs/reference'"
+  apm-app:   "APM app"
+  uptime-app:   "Uptime app"
+  synthetics-app:   "Synthetics app"
+  logs-app:   "Logs app"
+  metrics-app:   "Metrics app"
+  infrastructure-app:   "Infrastructure app"
+  siem-app:   "SIEM app"
+  security-app:   "Elastic Security app"
+  ml-app:   "Machine Learning"
+  dev-tools-app:   "Dev Tools"
+  ingest-manager-app:   "Ingest Manager"
+  stack-manage-app:   "Stack Management"
+  stack-monitor-app:   "Stack Monitoring"
+  alerts-ui:   "Alerts and Actions"
+  rules-ui:   "Rules"
+  rac-ui:   "Rules and Connectors"
+  connectors-ui:   "Connectors"
+  connectors-feature:   "Actions and Connectors"
+  stack-rules-feature:   "Stack Rules"
+  user-experience:   "User Experience"
+  ems:   "Elastic Maps Service"
+  ems-init:   "EMS"
+  hosted-ems:   "Elastic Maps Server"
+  ipm-app:   "Index Pattern Management"
+  ingest-pipelines:   "ingest pipelines"
+  ingest-pipelines-app:   "Ingest Pipelines"
+  ingest-pipelines-cap:   "Ingest pipelines"
+  ls-pipelines:   "Logstash pipelines"
+  ls-pipelines-app:   "Logstash Pipelines"
+  maint-windows:   "maintenance windows"
+  maint-windows-app:   "Maintenance Windows"
+  maint-windows-cap:   "Maintenance windows"
+  custom-roles-app:   "Custom Roles"
+  data-source:   "data view"
+  data-sources:   "data views"
+  data-source-caps:   "Data View"
+  data-sources-caps:   "Data Views"
+  data-source-cap:   "Data view"
+  data-sources-cap:   "Data views"
+  project-settings:   "Project settings"
+  manage-app:   "Management"
+  index-manage-app:   "Index Management"
+  data-views-app:   "Data Views"
+  rules-app:   "Rules"
+  saved-objects-app:   "Saved Objects"
+  tags-app:   "Tags"
+  api-keys-app:   "API keys"
+  transforms-app:   "Transforms"
+  connectors-app:   "Connectors"
+  files-app:   "Files"
+  reports-app:   "Reports"
+  maps-app:   "Maps"
+  alerts-app:   "Alerts"
+  crawler:   "Enterprise Search web crawler"
+  ents:   "Enterprise Search"
+  app-search-crawler:   "App Search web crawler"
+  agent:   "Elastic Agent"
+  agents:   "Elastic Agents"
+  fleet:   "Fleet"
+  fleet-server:   "Fleet Server"
+  integrations-server:   "Integrations Server"
+  ingest-manager:   "Ingest Manager"
+  ingest-management:   "ingest management"
+  package-manager:   "Elastic Package Manager"
+  integrations:   "Integrations"
+  package-registry:   "Elastic Package Registry"
+  artifact-registry:   "Elastic Artifact Registry"
+  aws:   "AWS"
+  stack:   "Elastic Stack"
+  xpack:   "X-Pack"
+  es:   "Elasticsearch"
+  kib:   "Kibana"
+  esms:   "Elastic Stack Monitoring Service"
+  esms-init:   "ESMS"
+  ls:   "Logstash"
+  beats:   "Beats"
+  auditbeat:   "Auditbeat"
+  filebeat:   "Filebeat"
+  heartbeat:   "Heartbeat"
+  metricbeat:   "Metricbeat"
+  packetbeat:   "Packetbeat"
+  winlogbeat:   "Winlogbeat"
+  functionbeat:   "Functionbeat"
+  journalbeat:   "Journalbeat"
+  es-sql:   "Elasticsearch SQL"
+  esql:   "ES|QL"
+  elastic-agent:   "Elastic Agent"
+  k8s:   "Kubernetes"
+  log-driver-long:   "Elastic Logging Plugin for Docker"
+  security:   "X-Pack security"
+  security-features:   "security features"
+  operator-feature:   "operator privileges feature"
+  es-security-features:   "Elasticsearch security features"
+  stack-security-features:   "Elastic Stack security features"
+  endpoint-sec:   "Endpoint Security"
+  endpoint-cloud-sec:   "Endpoint and Cloud Security"
+  elastic-defend:   "Elastic Defend"
+  elastic-sec:   "Elastic Security"
+  elastic-endpoint:   "Elastic Endpoint"
+  swimlane:   "Swimlane"
+  sn:   "ServiceNow"
+  sn-itsm:   "ServiceNow ITSM"
+  sn-itom:   "ServiceNow ITOM"
+  sn-sir:   "ServiceNow SecOps"
+  jira:   "Jira"
+  ibm-r:   "IBM Resilient"
+  webhook:   "Webhook"
+  webhook-cm:   "Webhook - Case Management"
+  opsgenie:   "Opsgenie"
+  bedrock:   "Amazon Bedrock"
+  gemini:   "Google Gemini"
+  hive:   "TheHive"
+  monitoring:   "X-Pack monitoring"
+  monitor-features:   "monitoring features"
+  stack-monitor-features:   "Elastic Stack monitoring features"
+  watcher:   "Watcher"
+  alert-features:   "alerting features"
+  reporting:   "X-Pack reporting"
+  report-features:   "reporting features"
+  graph:   "X-Pack graph"
+  graph-features:   "graph analytics features"
+  searchprofiler:   "Search Profiler"
+  xpackml:   "X-Pack machine learning"
+  ml:   "machine learning"
+  ml-cap:   "Machine learning"
+  ml-init:   "ML"
+  ml-features:   "machine learning features"
+  stack-ml-features:   "Elastic Stack machine learning features"
+  ccr:   "cross-cluster replication"
+  ccr-cap:   "Cross-cluster replication"
+  ccr-init:   "CCR"
+  ccs:   "cross-cluster search"
+  ccs-cap:   "Cross-cluster search"
+  ccs-init:   "CCS"
+  ilm:   "index lifecycle management"
+  ilm-cap:   "Index lifecycle management"
+  ilm-init:   "ILM"
+  dlm:   "data lifecycle management"
+  dlm-cap:   "Data lifecycle management"
+  dlm-init:   "DLM"
+  search-snap:   "searchable snapshot"
+  search-snaps:   "searchable snapshots"
+  search-snaps-cap:   "Searchable snapshots"
+  slm:   "snapshot lifecycle management"
+  slm-cap:   "Snapshot lifecycle management"
+  slm-init:   "SLM"
+  rollup-features:   "data rollup features"
+  ipm:   "index pattern management"
+  ipm-cap:   "Index pattern"
+  rollup:   "rollup"
+  rollup-cap:   "Rollup"
+  rollups:   "rollups"
+  rollups-cap:   "Rollups"
+  rollup-job:   "rollup job"
+  rollup-jobs:   "rollup jobs"
+  rollup-jobs-cap:   "Rollup jobs"
+  dfeed:   "datafeed"
+  dfeeds:   "datafeeds"
+  dfeed-cap:   "Datafeed"
+  dfeeds-cap:   "Datafeeds"
+  ml-jobs:   "machine learning jobs"
+  ml-jobs-cap:   "Machine learning jobs"
+  anomaly-detect:   "anomaly detection"
+  anomaly-detect-cap:   "Anomaly detection"
+  anomaly-job:   "anomaly detection job"
+  anomaly-jobs:   "anomaly detection jobs"
+  anomaly-jobs-cap:   "Anomaly detection jobs"
+  dataframe:   "data frame"
+  dataframes:   "data frames"
+  dataframe-cap:   "Data frame"
+  dataframes-cap:   "Data frames"
+  watcher-transform:   "payload transform"
+  watcher-transforms:   "payload transforms"
+  watcher-transform-cap:   "Payload transform"
+  watcher-transforms-cap:   "Payload transforms"
+  transform:   "transform"
+  transforms:   "transforms"
+  transform-cap:   "Transform"
+  transforms-cap:   "Transforms"
+  dataframe-transform:   "transform"
+  dataframe-transform-cap:   "Transform"
+  dataframe-transforms:   "transforms"
+  dataframe-transforms-cap:   "Transforms"
+  dfanalytics-cap:   "Data frame analytics"
+  dfanalytics:   "data frame analytics"
+  dataframe-analytics-config:   "'{dataframe} analytics config'"
+  dfanalytics-job:   "'{dataframe} analytics job'"
+  dfanalytics-jobs:   "'{dataframe} analytics jobs'"
+  dfanalytics-jobs-cap:   "'{dataframe-cap} analytics jobs'"
+  cdataframe:   "continuous data frame"
+  cdataframes:   "continuous data frames"
+  cdataframe-cap:   "Continuous data frame"
+  cdataframes-cap:   "Continuous data frames"
+  cdataframe-transform:   "continuous transform"
+  cdataframe-transforms:   "continuous transforms"
+  cdataframe-transforms-cap:   "Continuous transforms"
+  ctransform:   "continuous transform"
+  ctransform-cap:   "Continuous transform"
+  ctransforms:   "continuous transforms"
+  ctransforms-cap:   "Continuous transforms"
+  oldetection:   "outlier detection"
+  oldetection-cap:   "Outlier detection"
+  olscore:   "outlier score"
+  olscores:   "outlier scores"
+  fiscore:   "feature influence score"
+  evaluatedf-api:   "evaluate {dataframe} analytics API"
+  evaluatedf-api-cap:   "Evaluate {dataframe} analytics API"
+  binarysc:   "binary soft classification"
+  binarysc-cap:   "Binary soft classification"
+  regression:   "regression"
+  regression-cap:   "Regression"
+  reganalysis:   "regression analysis"
+  reganalysis-cap:   "Regression analysis"
+  depvar:   "dependent variable"
+  feature-var:   "feature variable"
+  feature-vars:   "feature variables"
+  feature-vars-cap:   "Feature variables"
+  classification:   "classification"
+  classification-cap:   "Classification"
+  classanalysis:   "classification analysis"
+  classanalysis-cap:   "Classification analysis"
+  infer-cap:   "Inference"
+  infer:   "inference"
+  lang-ident-cap:   "Language identification"
+  lang-ident:   "language identification"
+  data-viz:   "Data Visualizer"
+  file-data-viz:   "File Data Visualizer"
+  feat-imp:   "feature importance"
+  feat-imp-cap:   "Feature importance"
+  nlp:   "natural language processing"
+  nlp-cap:   "Natural language processing"
+  apm-agent:   "APM agent"
+  apm-go-agent:   "Elastic APM Go agent"
+  apm-go-agents:   "Elastic APM Go agents"
+  apm-ios-agent:   "Elastic APM iOS agent"
+  apm-ios-agents:   "Elastic APM iOS agents"
+  apm-java-agent:   "Elastic APM Java agent"
+  apm-java-agents:   "Elastic APM Java agents"
+  apm-dotnet-agent:   "Elastic APM .NET agent"
+  apm-dotnet-agents:   "Elastic APM .NET agents"
+  apm-node-agent:   "Elastic APM Node.js agent"
+  apm-node-agents:   "Elastic APM Node.js agents"
+  apm-php-agent:   "Elastic APM PHP agent"
+  apm-php-agents:   "Elastic APM PHP agents"
+  apm-py-agent:   "Elastic APM Python agent"
+  apm-py-agents:   "Elastic APM Python agents"
+  apm-ruby-agent:   "Elastic APM Ruby agent"
+  apm-ruby-agents:   "Elastic APM Ruby agents"
+  apm-rum-agent:   "Elastic APM Real User Monitoring (RUM) JavaScript agent"
+  apm-rum-agents:   "Elastic APM RUM JavaScript agents"
+  apm-lambda-ext:   "Elastic APM AWS Lambda extension"
+  project-monitors:   "project monitors"
+  project-monitors-cap:   "Project monitors"
+  private-location:   "Private Location"
+  private-locations:   "Private Locations"
+  pwd:   "YOUR_PASSWORD"
+  esh:   "ES-Hadoop"
+  default-dist:   "default distribution"
+  oss-dist:   "OSS-only distribution"
+  observability:   "Observability"
+  api-request-title:   "Request"
+  api-prereq-title:   "Prerequisites"
+  api-description-title:   "Description"
+  api-path-parms-title:   "Path parameters"
+  api-query-parms-title:   "Query parameters"
+  api-request-body-title:   "Request body"
+  api-response-codes-title:   "Response codes"
+  api-response-body-title:   "Response body"
+  api-example-title:   "Example"
+  api-examples-title:   "Examples"
+  api-definitions-title:   "Properties"
+  multi-arg:   "†footnoteref:[multi-arg,This parameter accepts multiple arguments.]"
+  multi-arg-ref:   "†footnoteref:[multi-arg]"
+  yes-icon:   "image:https://doc-icons.s3.us-east-2.amazonaws.com/icon-yes.png[Yes,20,15]"
+  no-icon:   "image:https://doc-icons.s3.us-east-2.amazonaws.com/icon-no.png[No,20,15]"
+  es-repo:   "https://github.com/elastic/elasticsearch/"
+  es-issue:   "https://github.com/elastic/elasticsearch/issues/"
+  es-pull:   "https://github.com/elastic/elasticsearch/pull/"
+  es-commit:   "https://github.com/elastic/elasticsearch/commit/"
+  kib-repo:   "https://github.com/elastic/kibana/"
+  kib-issue:   "https://github.com/elastic/kibana/issues/"
+  kibana-issue:   "'{kib-repo}issues/'"
+  kib-pull:   "https://github.com/elastic/kibana/pull/"
+  kibana-pull:   "'{kib-repo}pull/'"
+  kib-commit:   "https://github.com/elastic/kibana/commit/"
+  ml-repo:   "https://github.com/elastic/ml-cpp/"
+  ml-issue:   "https://github.com/elastic/ml-cpp/issues/"
+  ml-pull:   "https://github.com/elastic/ml-cpp/pull/"
+  ml-commit:   "https://github.com/elastic/ml-cpp/commit/"
+  apm-repo:   "https://github.com/elastic/apm-server/"
+  apm-issue:   "https://github.com/elastic/apm-server/issues/"
+  apm-pull:   "https://github.com/elastic/apm-server/pull/"
+  kibana-blob:   "https://github.com/elastic/kibana/blob/current/"
+  apm-get-started-ref:   "https://www.elastic.co/guide/en/apm/get-started/current"
+  apm-server-ref:   "https://www.elastic.co/guide/en/apm/server/current"
+  apm-server-ref-v:   "https://www.elastic.co/guide/en/apm/server/current"
+  apm-server-ref-m:   "https://www.elastic.co/guide/en/apm/server/master"
+  apm-server-ref-62:   "https://www.elastic.co/guide/en/apm/server/6.2"
+  apm-server-ref-64:   "https://www.elastic.co/guide/en/apm/server/6.4"
+  apm-server-ref-70:   "https://www.elastic.co/guide/en/apm/server/7.0"
+  apm-overview-ref-v:   "https://www.elastic.co/guide/en/apm/get-started/current"
+  apm-overview-ref-70:   "https://www.elastic.co/guide/en/apm/get-started/7.0"
+  apm-overview-ref-m:   "https://www.elastic.co/guide/en/apm/get-started/master"
+  infra-guide:   "https://www.elastic.co/guide/en/infrastructure/guide/current"
+  a-data-source:   "a data view"
+  icon-bug:   "pass:[<span class=\"eui-icon icon-bug\"></span>]"
+  icon-checkInCircleFilled:   "pass:[<span class=\"eui-icon icon-checkInCircleFilled\"></span>]"
+  icon-warningFilled:   "pass:[<span class=\"eui-icon icon-warningFilled\"></span>]"
diff --git a/docs/dsl.asciidoc b/docs/dsl.asciidoc
deleted file mode 100644
index 922624a4fa..0000000000
--- a/docs/dsl.asciidoc
+++ /dev/null
@@ -1,6 +0,0 @@
-[[dsl]]
-=== Elasticsearch DSL
-
-The https://github.com/elastic/elasticsearch-dsl-ruby[elasticsearch-dsl] gem provides a Ruby API for the https://www.elasticsearch.com/guide/en/elasticsearch/reference/current/query-dsl.html[Elasticsearch Query DSL]. The library allows to programmatically build complex search definitions for {es} in Ruby, which are translated to Hashes, and ultimately, JSON, the language of {es}.
-
-See https://github.com/elastic/elasticsearch-dsl-ruby#elasticsearchdsl[the README] for more information.
diff --git a/docs/ecs.asciidoc b/docs/ecs.asciidoc
deleted file mode 100644
index 218708038b..0000000000
--- a/docs/ecs.asciidoc
+++ /dev/null
@@ -1,34 +0,0 @@
-[[ecs]]
-=== Elastic Common Schema (ECS)
-
-The https://www.elastic.co/guide/en/ecs/current/ecs-reference.html[Elastic Common Schema (ECS)] is an open source format that defines a common set of fields to be used when storing event data like logs in Elasticsearch.
-
-You can use the library https://github.com/elastic/ecs-logging-ruby[ecs-logging] which is a set of libraries that enables you to transform your application logs to structured logs that comply with the ECS format.
-
-Add this line to your application's Gemfile:
-
-[source,ruby]
-------------------------------------
-gem 'ecs-logging'
-------------------------------------
-
-Then execute `bundle install`. Or install from the command line yourself:
-
-[source,ruby]
-------------------------------------
-$ gem install ecs-logging
-------------------------------------
-
-Then configure the client to use the logger:
-[source,ruby]
-------------------------------------
-require 'ecs_logging/logger'
-require 'elasticsearch'
-
-logger = EcsLogging::Logger.new($stdout)
-client = Elasticsearch::Client.new(logger: logger)
-> client.info
-{"@timestamp":"2022-07-12T05:31:18.590Z","log.level":"INFO","message":"GET http://localhost:9200/ [status:200, request:0.009s, query:n/a]","ecs.version":"1.4.0"}...
-------------------------------------
-
-See https://www.elastic.co/guide/en/ecs-logging/ruby/current/index.html[ECS Logging Ruby Reference] for more information on how to configure the logger.
diff --git a/docs/examples/apm/screenshot.jpg b/docs/examples/apm/screenshot.jpg
deleted file mode 100644
index 6ba778dfb5d651ce72fafa085953dab3087bad71..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 324480
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%0DG03p-DVmEWomnxiyJwbM
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%0A<CbcE&&#Hj38pJ^)7@LN^6Hw$OWowF&lf8~
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
Ch~I($

diff --git a/docs/getting-started.asciidoc b/docs/getting-started.asciidoc
deleted file mode 100644
index a4500847b4..0000000000
--- a/docs/getting-started.asciidoc
+++ /dev/null
@@ -1,141 +0,0 @@
-[[getting-started-ruby]]
-== Getting started
-
-This page guides you through the installation process of the Ruby client, shows 
-you how to instantiate the client, and how to perform basic Elasticsearch 
-operations with it.
-
-[discrete]
-=== Requirements
-
-A currently maintained version of Ruby (3.0+) or JRuby (9.3+).
-
-[discrete]
-=== Installation 
-
-To install the latest version of the client, run the following command:
-
-[source,shell]
---------------------------
-gem install elasticsearch
---------------------------
-
-Refer to the <<ruby-install>> page to learn more.
-
-
-[discrete]
-=== Connecting
-
-You can connect to the Elastic Cloud using an API key and the Elasticsearch 
-endpoint. 
-
-[source,rb]
-----
-client = Elasticsearch::Client.new(
-  cloud_id: '<CloudID>',
-  api_key: '<ApiKey>'
-)
-----
-
-Your Elasticsearch endpoint can be found on the **My deployment** page of your 
-deployment:
-
-image::images/es_endpoint.jpg[alt="Finding Elasticsearch endpoint",align="center"]
-
-You can generate an API key on the **Management** page under Security.
-
-image::images/create_api_key.png[alt="Create API key",align="center"]
-
-For other connection options, refer to the <<connecting>> section.
-
-
-[discrete]
-=== Operations
-
-Time to use Elasticsearch! This section walks you through the basic, and most 
-important, operations of Elasticsearch. For more operations and more advanced 
-examples, refer to the <<examples>> page.
-
-
-[discrete]
-==== Creating an index
-
-This is how you create the `my_index` index:
-
-[source,rb]
-----
-client.indices.create(index: 'my_index')
-----
-
-
-[discrete]
-==== Indexing documents
-
-This is a simple way of indexing a document:
-
-[source,rb]
-----
-document = { name: 'elasticsearch-ruby' }
-response = client.index(index: 'my_index', body: document)
-# You can get the indexed document id with:
-response['_id']
-=> "PlgIDYkBWS9Ngdx5IMy-"
-id = response['_id']
-----
-
-
-[discrete]
-==== Getting documents
-
-You can get documents by using the following code:
-
-[source,rb]
-----
-client.get(index: 'my_index', id: id)
-----
-
-
-[discrete]
-==== Searching documents
-
-This is how you can create a single match query with the Ruby client: 
-
-[source,rb]
-----
-client.search(index: 'my_index', body: { query: { match_all: {} } })
-----
-
-
-[discrete]
-==== Updating documents
-
-This is how you can update a document, for example to add a new field:
-
-[source,rb]
-----
-client.update(index: 'my_index', id: id, body: { doc: { language: 'Ruby' } })
-----
-
-
-[discrete]
-==== Deleting documents
-
-[source,rb]
-----
-client.delete(index: 'my_index', id: id)
-----
-
-
-[discrete]
-==== Deleting an index
-
-[source,rb]
-----
-client.indices.delete(index: 'my_index')
-----
-
-
-[discrete]
-== Further reading
-
-* Use <<Helpers>> for a more confortable experience with the APIs.
\ No newline at end of file
diff --git a/docs/helpers/index.asciidoc b/docs/helpers/index.asciidoc
deleted file mode 100644
index 1e475886cd..0000000000
--- a/docs/helpers/index.asciidoc
+++ /dev/null
@@ -1,10 +0,0 @@
-[[client-helpers]]
-== Client helpers
-
-The Ruby client includes the following helpers:
-
-* <<Helpers>>
-* <<esql>>
-
-include::bulk-scroll.asciidoc[]
-include::esql.asciidoc[]
\ No newline at end of file
diff --git a/docs/index.asciidoc b/docs/index.asciidoc
deleted file mode 100644
index b83dd47058..0000000000
--- a/docs/index.asciidoc
+++ /dev/null
@@ -1,32 +0,0 @@
-= Elasticsearch Ruby Client
-
-:doctype:           book
-
-include::{asciidoc-dir}/../../shared/versions/stack/{source_branch}.asciidoc[]
-include::{asciidoc-dir}/../../shared/attributes.asciidoc[]
-
-:es-docs: https://www.elastic.co/guide/en/elasticsearch/reference/{branch} 
-
-include::overview.asciidoc[]
-
-include::getting-started.asciidoc[]
-
-include::installation.asciidoc[]
-
-include::connecting.asciidoc[]
-
-include::config.asciidoc[]
-
-include::basic-config.asciidoc[]
-
-include::advanced-config.asciidoc[]
-
-include::integrations.asciidoc[]
-
-include::examples.asciidoc[]
-
-include::troubleshooting.asciidoc[]
-
-include::helpers/index.asciidoc[]
-
-include::release_notes/index.asciidoc[]
diff --git a/docs/installation.asciidoc b/docs/installation.asciidoc
deleted file mode 100644
index 15ce2f60a8..0000000000
--- a/docs/installation.asciidoc
+++ /dev/null
@@ -1,61 +0,0 @@
-[[ruby-install]]
-== Installation
-
-Install the Rubygem for the latest {es} version by using the following command:
-
-[source,sh]
-------------------------------------
-gem install elasticsearch
-------------------------------------
-
-
-Or add the `elasticsearch` Ruby gem to your Gemfile:
-
-[source,ruby]
-------------------------------------
-gem 'elasticsearch'
-------------------------------------
-
-
-
-You can install the Ruby gem for a specific {es} version by using the following 
-command:
-
-[source,sh]
-------------------------------------
-gem install elasticsearch -v 7.0.0
-------------------------------------
-
-
-Or you can add a specific version of {es} to your Gemfile:
-
-[source,ruby]
-------------------------------------
-gem 'elasticsearch', '~> 7.0'
-------------------------------------
-
-
-[discrete]
-=== {es} and Ruby Version Compatibility
-
-The {es} client is compatible with currently maintained Ruby versions. We follow
-Ruby’s own maintenance policy and officially support all currently maintained
-versions per
-https://www.ruby-lang.org/en/downloads/branches/[Ruby Maintenance Branches].
-
-Language clients are forward compatible; meaning that clients support
-communicating with greater or equal minor versions of {es} without breaking. It
-does not mean that the client automatically supports new features of newer {es} 
-versions; it is only possible after a release of a new client version. For
-example, a 8.12 client version won't automatically support the new features of
-the 8.13 version of {es}, the 8.13 client version is required for that.
-{es} language clients are only backwards compatible with default distributions
-and without guarantees made.
-
-|===
-| Gem Version   |   | {es} Version | Supported
-
-| 7.x           | → | 7.x          | 7.17
-| 8.x           | → | 8.x          | 8.x
-| main          | → | main         |
-|===
\ No newline at end of file
diff --git a/docs/integrations.asciidoc b/docs/integrations.asciidoc
deleted file mode 100644
index c758d17201..0000000000
--- a/docs/integrations.asciidoc
+++ /dev/null
@@ -1,30 +0,0 @@
-[[integrations]]
-== Integrations
-
-The Rubygems listed on this page make it easier to operate with {es} by using 
-the Ruby client.
-
-* <<transport>>
-* <<api>>
-* <<opentelemetry>>
-* <<ecs>>
-* <<activemodel_activerecord>>
-* <<ruby_on_rails>>
-* <<persistence>>
-* <<dsl>>
-
-include::transport.asciidoc[]
-
-include::api.asciidoc[]
-
-include::open-telemetry.asciidoc[]
-
-include::ecs.asciidoc[]
-
-include::model.asciidoc[]
-
-include::rails.asciidoc[]
-
-include::persistence.asciidoc[]
-
-include::dsl.asciidoc[]
diff --git a/docs/open-telemetry.asciidoc b/docs/open-telemetry.asciidoc
deleted file mode 100644
index 87fd86206b..0000000000
--- a/docs/open-telemetry.asciidoc
+++ /dev/null
@@ -1,94 +0,0 @@
-[[opentelemetry]]
-=== Using OpenTelemetry
-
-You can use https://opentelemetry.io/[OpenTelemetry] to monitor the performance and behavior of your {es} requests through the Ruby Client.
-The Ruby Client comes with built-in OpenTelemetry instrumentation that emits https://www.elastic.co/guide/en/apm/guide/current/apm-distributed-tracing.html[distributed tracing spans] by default.
-With that, applications https://opentelemetry.io/docs/instrumentation/ruby/manual/[instrumented with OpenTelemetry] or using the https://opentelemetry.io/docs/instrumentation/ruby/automatic/[OpenTelemetry Ruby SDK] are inherently enriched with additional spans that contain insightful information about the execution of the {es} requests.
-
-The native instrumentation in the Ruby Client follows the https://opentelemetry.io/docs/specs/semconv/database/elasticsearch/[OpenTelemetry Semantic Conventions for {es}]. In particular, the instrumentation in the client covers the logical layer of {es} requests. A single span per request is created that is processed by the service through the Ruby Client. The following image shows a trace that records the handling of two different {es} requests: a `ping` request and a `search` request.
-
-[role="screenshot"]
-image::images/otel-waterfall-without-http.png[alt="Distributed trace with Elasticsearch spans",align="center"]
-
-Usually, OpenTelemetry auto-instrumentation modules come with instrumentation support for HTTP-level communication. In this case, in addition to the logical {es} client requests, spans will be captured for the physical HTTP requests emitted by the client. The following image shows a trace with both, {es} spans (in blue) and the corresponding HTTP-level spans (in red):
-
-[role="screenshot"]
-image::images/otel-waterfall-with-http.png[alt="Distributed trace with Elasticsearch spans",align="center"]
-
-Advanced Ruby Client behavior such as nodes round-robin and request retries are revealed through the combination of logical {es} spans and the physical HTTP spans. The following example shows a `search` request in a scenario with two nodes:
-
-[role="screenshot"]
-image::images/otel-waterfall-retry.png[alt="Distributed trace with Elasticsearch spans",align="center"]
-
-The first node is unavailable and results in an HTTP error, while the retry to the second node succeeds. Both HTTP requests are subsumed by the logical {es} request span (in blue).
-
-[discrete]
-==== Setup the OpenTelemetry instrumentation
-
-When using the https://opentelemetry.io/docs/instrumentation/ruby/manual[OpenTelemetry Ruby SDK manually] or using the https://opentelemetry.io/docs/instrumentation/ruby/automatic/[OpenTelemetry Ruby Auto-Instrumentations], the Ruby Client's OpenTelemetry instrumentation is enabled by default and uses the global OpenTelemetry SDK with the global tracer provider. You can provide a tracer provider via the Ruby Client configuration option `opentelemetry_tracer_provider` when instantiating the client. This is sometimes useful for testing or other specific use cases.
-
-[source,ruby]
-------------------------------------
-client = Elasticsearch::Client.new(
-  cloud_id: '<CloudID>',
-  api_key: '<ApiKey>',
-  opentelemetry_tracer_provider: tracer_provider
-)
-------------------------------------
-
-[discrete]
-==== Configuring the OpenTelemetry instrumentation
-
-You can configure the OpenTelemetry instrumentation through Environment Variables.
-The following configuration options are available.
-
-[discrete]
-[[opentelemetry-config-enable]]
-===== Enable / Disable the OpenTelemetry instrumentation
-
-With this configuration option you can enable (default) or disable the built-in OpenTelemetry instrumentation.
-
-**Default:** `true`
-
-|============
-| Environment Variable | `OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_ENABLED`
-|============
-
-[discrete]
-===== Capture search request bodies
-
-Per default, the built-in OpenTelemetry instrumentation does not capture request bodies due to data privacy considerations. You can use this option to enable capturing of search queries from the request bodies of {es} search requests in case you wish to gather this information regardless. The options are to capture the raw search query, sanitize the query with a default list of sensitive keys, or not capture it at all.
-
-**Default:** `omit`
-
-**Valid Options:** `omit`, `sanitize`, `raw`
-
-|============
-| Environment Variable | `OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_CAPTURE_SEARCH_QUERY`
-|============
-
-[discrete]
-===== Sanitize the {es} search request body
-
-You can configure the list of keys whose values are redacted when the search query is captured. Values must be comma-separated.
-Note in v8.3.0 and v8.3.1, the environment variable `OTEL_INSTRUMENTATION_ELASTICSEARCH_CAPTURE_SEARCH_QUERY` was available
-but is now deprecated in favor of the environment variable including `RUBY`.
-
-**Default:** `nil`
-
-|============
-| Environment Variable | `OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_SEARCH_QUERY_SANITIZE_KEYS`
-|============
-
-Example:
-
-```bash
-OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_SEARCH_QUERY_SANITIZE_KEYS='sensitive-key,other-sensitive-key'
-```
-
-[discrete]
-==== Overhead
-
-The OpenTelemetry instrumentation (as any other monitoring approach) may come with a slight overhead on CPU, memory, and/or latency. The overhead may only occur when the instrumentation is enabled (default) and an OpenTelemetry SDK is active in the target application. When the instrumentation is disabled or no OpenTelemetry SDK is active within the target application, monitoring overhead is not expected when using the client.
-
-Even in cases where the instrumentation is enabled and is actively used (by an OpenTelemetry SDK), the overhead is minimal and negligible in the vast majority of cases. In edge cases where there is a noticeable overhead, the <<opentelemetry-config-enable,instrumentation can be explicitly disabled>> to eliminate any potential impact on performance.
\ No newline at end of file
diff --git a/docs/overview.asciidoc b/docs/overview.asciidoc
deleted file mode 100644
index 108094e23b..0000000000
--- a/docs/overview.asciidoc
+++ /dev/null
@@ -1,38 +0,0 @@
-[[ruby_client]]
-== Overview
-
-The `elasticsearch` http://rubygems.org/gems/elasticsearch[Rubygem] provides a low-level client for communicating with an {es} cluster, fully compatible with other official clients.
-
-More documentation is hosted in https://github.com/elastic/elasticsearch-ruby[Github] and http://rubydoc.info/gems/elasticsearch[RubyDoc].
-
-Refer to the <<getting-started-ruby>> page for a step-by-step quick start with
-the Ruby client.
-
-[discrete]
-=== Features
-
-* Pluggable logging and tracing
-* Pluggable connection selection strategies (round-robin, random, custom)
-* Pluggable transport implementation, customizable and extendable
-* Pluggable serializer implementation
-* Request retries and dead connections handling
-* Node reloading (based on cluster state) on errors or on demand
-* Modular API implementation
-* 100% REST API coverage
-
-
-[discrete]
-[[transport-api]]
-=== Transport and API
-
-The `elasticsearch` gem combines two separate Rubygems:
-
-* https://github.com/elastic/elastic-transport-ruby/[`elastic-transport`] - provides an HTTP Ruby client for connecting to the {es} cluster. Refer to the documentation: <<transport>>
-
-* https://github.com/elastic/elasticsearch-ruby/tree/main/elasticsearch-api[`elasticsearch-api`] - provides a Ruby API for the {es} RESTful API.
-
-Please consult their respective documentation for configuration options and technical details.
-
-Notably, the documentation and comprehensive examples for all the API methods are contained in the source, and available online at http://rubydoc.info/gems/elasticsearch-api/Elasticsearch/API/Actions[Rubydoc].
-
-Keep in mind, that for optimal performance, you should use an HTTP library which supports persistent ("keep-alive") HTTP connections.
diff --git a/docs/rails.asciidoc b/docs/rails.asciidoc
deleted file mode 100644
index d1c84e1b86..0000000000
--- a/docs/rails.asciidoc
+++ /dev/null
@@ -1,24 +0,0 @@
-[[ruby_on_rails]]
-=== Ruby On Rails
-
-The `elasticsearch-rails` http://rubygems.org/gems/elasticsearch-rails[Rubygem]
-provides features suitable for Ruby on Rails applications.
-
-
-[discrete]
-==== Features
-
-* Rake tasks for importing data from application models
-* Integration with Rails' instrumentation framework
-* Templates for generating example Rails application
-
-
-[discrete]
-==== Example applications
-
-You can generate a fully working example Ruby on Rails application with 
-templates provides.
-
-Please refer to the 
-https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-rails[documentation] 
-for more information.
diff --git a/docs/helpers/bulk-scroll.asciidoc b/docs/reference/Helpers.md
similarity index 78%
rename from docs/helpers/bulk-scroll.asciidoc
rename to docs/reference/Helpers.md
index 8d638bab65..67c7be3393 100644
--- a/docs/helpers/bulk-scroll.asciidoc
+++ b/docs/reference/Helpers.md
@@ -1,98 +1,93 @@
-[[Helpers]]
-=== Bulk and Scroll helpers
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/Helpers.html
+---
 
-The {es} Ruby client includes Bulk and Scroll helpers for working with results more efficiently.
+# Bulk and Scroll helpers [Helpers]
 
-[discrete]
-==== Bulk helper
+The {{es}} Ruby client includes Bulk and Scroll helpers for working with results more efficiently.
 
-The Bulk API in Elasticsearch allows you to perform multiple indexing or deletion operations through a single API call, resulting in reduced overhead and improved indexing speed. The actions are specified in the request body using a newline delimited JSON (NDJSON) structure. In the Elasticsearch Ruby client, the `bulk` method supports several data structures as a parameter. You can use the Bulk API in an idiomatic way without concerns about payload formatting. Refer to <<ex-bulk>> for more information.
 
+## Bulk helper [_bulk_helper]
 
-The BulkHelper provides a better developer experience when using the Bulk API. At its simplest, you can send it a collection of hashes in an array, and it will bulk ingest them into {es}.
+The Bulk API in Elasticsearch allows you to perform multiple indexing or deletion operations through a single API call, resulting in reduced overhead and improved indexing speed. The actions are specified in the request body using a newline delimited JSON (NDJSON) structure. In the Elasticsearch Ruby client, the `bulk` method supports several data structures as a parameter. You can use the Bulk API in an idiomatic way without concerns about payload formatting. Refer to [Bulk requests](/reference/examples.md#ex-bulk) for more information.
+
+The BulkHelper provides a better developer experience when using the Bulk API. At its simplest, you can send it a collection of hashes in an array, and it will bulk ingest them into {{es}}.
 
 To use the BulkHelper, require it in your code:
 
-[source,ruby]
-----
+```ruby
 require 'elasticsearch/helpers/bulk_helper'
-----
+```
 
 Instantiate a BulkHelper with a client, and an index:
-[source,ruby]
-----
+
+```ruby
 client = Elasticsearch::Client.new
 bulk_helper = Elasticsearch::Helpers::BulkHelper.new(client, index)
-----
+```
 
 This helper works on the index you pass in during initialization, but you can change the index at any time in your code:
 
-[source,ruby]
-----
+```ruby
 bulk_helper.index = 'new_index'
-----
+```
 
 If you want to index a collection of documents, use the `ingest` method:
 
-[source,ruby]
-----
+```ruby
 documents = [
   { name: 'document1', date: '2024-05-16' },
   { name: 'document2', date: '2023-12-19' },
   { name: 'document3', date: '2024-07-07' }
 ]
 bulk_helper.ingest(documents)
-----
+```
 
-If you're ingesting a large set of data and want to separate the documents into smaller pieces before sending them to {es}, use the `slice` parameter.
+If you’re ingesting a large set of data and want to separate the documents into smaller pieces before sending them to {{es}}, use the `slice` parameter.
 
-[source,ruby]
-----
+```ruby
 bulk_helper.ingest(documents, { slice: 2 })
-----
+```
 
 This way the data will be sent in two different bulk requests.
 
 You can also include the parameters you would send to the Bulk API either in the query parameters or in the request body. The method signature is `ingest(docs, params = {}, body = {}, &block)`. Additionally, the method can be called with a block, that will provide access to the response object received from calling the Bulk API and the documents sent in the request:
 
-[source,ruby]
-----
+```ruby
 helper.ingest(documents) { |_, docs| puts "Ingested #{docs.count} documents" }
-----
+```
 
 You can update and delete documents with the BulkHelper too. To delete a set of documents, you can send an array of document ids:
 
-[source,ruby]
-----
+```ruby
 ids = ['shm0I4gB6LpJd9ljO9mY', 'sxm0I4gB6LpJd9ljO9mY', 'tBm0I4gB6LpJd9ljO9mY', 'tRm0I4gB6LpJd9ljO9mY', 'thm0I4gB6LpJd9ljO9mY', 'txm0I4gB6LpJd9ljO9mY', 'uBm0I4gB6LpJd9ljO9mY', 'uRm0I4gB6LpJd9ljO9mY', 'uhm0I4gB6LpJd9ljO9mY', 'uxm0I4gB6LpJd9ljO9mY']
 helper.delete(ids)
-----
+```
 
 To update documents, you can send the array of documents with their respective ids:
-[source,ruby]
-----
+
+```ruby
 documents = [
   {name: 'updated name 1', id: 'AxkFJYgB6LpJd9ljOtr7'},
   {name: 'updated name 2', id: 'BBkFJYgB6LpJd9ljOtr7'}
 ]
 helper.update(documents)
-----
+```
 
-[discrete]
-===== Ingest a JSON file
+
+### Ingest a JSON file [_ingest_a_json_file]
 
 `BulkHelper` also provides a helper to ingest data straight from a JSON file. By giving a file path as an input, the helper will parse and ingest the documents in the file:
 
-[source,ruby]
-----
+```ruby
 file_path = './data.json'
 helper.ingest_json(file_path)
-----
+```
 
 In cases where the array of data you want to ingest is not necessarily in the root of the JSON file, you can provide the keys to access the data, for example given the following JSON file:
 
-[source,json]
-----
+```json
 {
   "field": "value",
   "status": 200,
@@ -107,56 +102,50 @@ In cases where the array of data you want to ingest is not necessarily in the ro
     ]
   }
 }
-----
+```
 
 The following is an example of the Ruby code to ingest the documents in the JSON above:
 
-[source,ruby]
-----
+```ruby
 bulk_helper.ingest_json(file_path, { keys: ['data', 'items'] })
-----
+```
+
 
-[discrete]
-==== Scroll helper
+## Scroll helper [_scroll_helper]
 
 This helper provides an easy way to get results from a Scroll.
 
 To use the ScrollHelper, require it in your code:
 
-[source,ruby]
-----
+```ruby
 require 'elasticsearch/helpers/scroll_helper'
-----
+```
 
 Instantiate a ScrollHelper with a client, an index, and a body (with the scroll API parameters) which will be used in every following scroll request:
 
-[source,ruby]
-----
+```ruby
 client = Elasticsearch::Client.new
 scroll_helper = Elasticsearch::Helpers::ScrollHelper.new(client, index, body)
-----
+```
 
 There are two ways to get the results from a scroll using the helper.
 
 1. You can iterate over a scroll using the methods in `Enumerable` such as `each` and `map`:
-+
---
-[source,ruby]
-----
-scroll_helper.each do |item|
-  puts item
-end
-----
---
+
+    ```ruby
+    scroll_helper.each do |item|
+      puts item
+    end
+    ```
+
 2. You can fetch results by page, with the `results` function:
-+
---
-[source,ruby]
-----
-my_documents = []
-while !(documents = scroll_helper.results).empty?
-  my_documents << documents
-end
-scroll_helper.clear
-----
---
+
+    ```ruby
+    my_documents = []
+    while !(documents = scroll_helper.results).empty?
+      my_documents << documents
+    end
+    scroll_helper.clear
+    ```
+
+
diff --git a/docs/model.asciidoc b/docs/reference/activemodel_activerecord.md
similarity index 55%
rename from docs/model.asciidoc
rename to docs/reference/activemodel_activerecord.md
index 8f4da31f7c..8a143def32 100644
--- a/docs/model.asciidoc
+++ b/docs/reference/activemodel_activerecord.md
@@ -1,16 +1,16 @@
-[[activemodel_activerecord]]
-=== ActiveModel / ActiveRecord
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/activemodel_activerecord.html
+---
 
-The `elasticsearch-model` http://rubygems.org/gems/elasticsearch-model[Rubygem]
-provides integration with Ruby domain objects ("models"), commonly found for 
-example, in Ruby on Rails applications.
+# ActiveModel / ActiveRecord [activemodel_activerecord]
 
-It uses the `elasticsearch` Rubygem as the client communicating with the {es} 
-cluster.
+The `elasticsearch-model` [Rubygem](http://rubygems.org/gems/elasticsearch-model) provides integration with Ruby domain objects ("models"), commonly found for example, in Ruby on Rails applications.
 
+It uses the `elasticsearch` Rubygem as the client communicating with the {{es}} cluster.
 
-[discrete]
-==== Features
+
+## Features [_features_2]
 
 * ActiveModel integration with adapters for ActiveRecord and Mongoid
 * Enumerable-based wrapper for search results
@@ -18,44 +18,38 @@ cluster.
 * Convenience model methods such as `search`, `mapping`, `import`, etc
 * Support for Kaminari and WillPaginate pagination
 * Extension implemented via proxy object to shield model namespace from collisions
-* Convenience methods for (re)creating the index, setting up mappings, indexing documents, ...
+* Convenience methods for (re)creating the index, setting up mappings, indexing documents, …​
 
 
-[discrete]
-==== Usage
+## Usage [_usage]
 
 Add the library to your Gemfile:
 
-[source,ruby]
-------------------------------------
+```ruby
 gem 'elasticsearch-rails'
-------------------------------------
+```
 
 Include the extension module in your model class:
 
-[source,ruby]
-------------------------------------
+```ruby
 class Article < ActiveRecord::Base
   include Elasticsearch::Model
 end
-------------------------------------
+```
 
 Import some data and perform a search:
 
-[source,ruby]
-------------------------------------
+```ruby
 Article.import
 
 response = Article.search 'fox dog'
 response.took
 # => 3
-------------------------------------
+```
 
-It is possible to either return results as model instances, or decorated 
-documents from {es}, with the `records` and `results` methods, respectively:
+It is possible to either return results as model instances, or decorated documents from {{es}}, with the `records` and `results` methods, respectively:
 
-[source,ruby]
-------------------------------------
+```ruby
 response.records.first
 # Article Load (0.4ms)  SELECT "articles".* FROM "articles"  WHERE ...
 => #<Article id: 3, title: "Foo " ...>
@@ -65,8 +59,7 @@ response.results.first._score
 
 response.results.first._source.title
 # => "Quick brown fox"
-------------------------------------
+```
+
+Consult the [documentation](https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-model) for more information.
 
-Consult the 
-https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-model[documentation]
-for more information.
diff --git a/docs/advanced-config.asciidoc b/docs/reference/advanced-config.md
similarity index 55%
rename from docs/advanced-config.asciidoc
rename to docs/reference/advanced-config.md
index 916a8f84c3..a05d51340c 100644
--- a/docs/advanced-config.asciidoc
+++ b/docs/reference/advanced-config.md
@@ -1,14 +1,16 @@
-[[advanced-config]]
-=== Advanced configuration
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/advanced-config.html
+---
 
-The client supports many configurations options for setting up and managing 
-connections, configuring logging, customizing the transport library, and so on.
+# Advanced configuration [advanced-config]
 
-[discrete]
-[[setting-hosts]]
-==== Setting hosts
+The client supports many configurations options for setting up and managing connections, configuring logging, customizing the transport library, and so on.
 
-To connect to a specific {es} host:
+
+## Setting hosts [setting-hosts]
+
+To connect to a specific {{es}} host:
 
 ```ruby
 Elasticsearch::Client.new(host: 'search.myserver.com')
@@ -32,12 +34,12 @@ Instead of strings, you can pass host information as an array of Hashes:
 Elasticsearch::Client.new(hosts: [ { host: 'myhost1', port: 8080 }, { host: 'myhost2', port: 8080 } ])
 ```
 
-NOTE: When specifying multiple hosts, you might want to enable the
-`retry_on_failure` or `retry_on_status` options to perform a failed request on 
-another node (refer to <<retry-failures>>).
+::::{note}
+When specifying multiple hosts, you might want to enable the `retry_on_failure` or `retry_on_status` options to perform a failed request on another node (refer to [Retrying on Failures](#retry-failures)).
+::::
+
 
-Common URL parts – scheme, HTTP authentication credentials, URL prefixes, and so 
-on – are handled automatically:
+Common URL parts – scheme, HTTP authentication credentials, URL prefixes, and so on – are handled automatically:
 
 ```ruby
 Elasticsearch::Client.new(url: 'https://username:password@api.server.org:4430/search')
@@ -51,37 +53,25 @@ Elasticsearch::Client.new(urls: 'http://localhost:9200,http://localhost:9201')
 
 Another way to configure URLs is to export the `ELASTICSEARCH_URL` variable.
 
-The client is automatically going to use a round-robin algorithm across the 
-hosts (unless you select or implement a different <<connection-selector>>).
+The client is automatically going to use a round-robin algorithm across the hosts (unless you select or implement a different [Connection Selector](#connection-selector)).
 
 
-[discrete]
-[[default-port]]
-==== Default port
+## Default port [default-port]
 
-The default port is `9200`. Specify a port for your host(s) if they differ from 
-this default.
+The default port is `9200`. Specify a port for your host(s) if they differ from this default.
 
-If you are using Elastic Cloud, the default port is port `9243`. You must supply 
-your username and password separately, and optionally a port. Refer to 
-<<auth-ec>>.
+If you are using Elastic Cloud, the default port is port `9243`. You must supply your username and password separately, and optionally a port. Refer to [Elastic Cloud](/reference/connecting.md#auth-ec).
 
 
-[discrete]
-[[logging]]
-==== Logging
+## Logging [logging]
 
-To log requests and responses to standard output with the default logger (an 
-instance of Ruby's `::Logger` class), set the log argument to true:
+To log requests and responses to standard output with the default logger (an instance of Ruby’s `::Logger` class), set the log argument to true:
 
 ```ruby
 Elasticsearch::Client.new(log: true)
 ```
 
-You can also use https://github.com/elastic/ecs-logging-ruby[`ecs-logging`] 
-which is a set of libraries that enables you to transform your application logs 
-to structured logs that comply with the 
-https://www.elastic.co/guide/en/ecs/current/ecs-reference.html[Elastic Common Schema]. See <<ecs>>.
+You can also use [`ecs-logging`](https://github.com/elastic/ecs-logging-ruby) which is a set of libraries that enables you to transform your application logs to structured logs that comply with the [Elastic Common Schema](ecs://docs/reference/index.md). See [Elastic Common Schema (ECS)](/reference/ecs.md).
 
 To trace requests and responses in the Curl format, set the `trace` argument:
 
@@ -91,11 +81,10 @@ Elasticsearch::Client.new(trace: true)
 
 You can customize the default logger or tracer:
 
-[source,ruby]
-------------------------------------
+```ruby
 client.transport.logger.formatter = proc { |s, d, p, m| "#{s}: #{m}\n" }
 client.transport.logger.level = Logger::INFO
-------------------------------------
+```
 
 Or, you can use a custom `::Logger` instance:
 
@@ -105,8 +94,7 @@ Elasticsearch::Client.new(logger: Logger.new(STDERR))
 
 You can pass the client any conforming logger implementation:
 
-[source,ruby]
-------------------------------------
+```ruby
 require 'logging' # https://github.com/TwP/logging/
 
 log = Logging.logger['elasticsearch']
@@ -114,60 +102,42 @@ log.add_appenders Logging.appenders.stdout
 log.level = :info
 
 client = Elasticsearch::Client.new(logger: log)
-------------------------------------
+```
 
 
-[discrete]
-[[apm-integration]]
-==== APM integration
+## APM integration [apm-integration]
 
-This client integrates seamlessly with Elastic APM via the Elastic APM Agent. It 
-automatically captures client requests if you are using the agent on your code. 
-If you're using `elastic-apm` v3.8.0 or up, you can set 
-`capture_elasticsearch_queries` to `true` in `config/elastic_apm.yml` to also 
-capture the body from requests in {es}. Refer to 
-https://github.com/elastic/elasticsearch-ruby/tree/main/docs/examples/apm[this example].
+This client integrates seamlessly with Elastic APM via the Elastic APM Agent. It automatically captures client requests if you are using the agent on your code. If you’re using `elastic-apm` v3.8.0 or up, you can set `capture_elasticsearch_queries` to `true` in `config/elastic_apm.yml` to also capture the body from requests in {{es}}. Refer to [this example](https://github.com/elastic/elasticsearch-ruby/tree/main/docs/examples/apm).
 
 
-[discrete]
-[[custom-http-headers]]
-==== Custom HTTP Headers
+## Custom HTTP Headers [custom-http-headers]
 
-You can set a custom HTTP header on the client's initializer:
+You can set a custom HTTP header on the client’s initializer:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(
   transport_options: {
     headers:
       {user_agent: "My App"}
   }
 )
-------------------------------------
+```
 
-You can also pass in `headers` as a parameter to any of the API Endpoints to set 
-custom headers for the request:
+You can also pass in `headers` as a parameter to any of the API Endpoints to set custom headers for the request:
 
 ```ruby
 client.search(index: 'myindex', q: 'title:test', headers: {user_agent: "My App"})
 ```
 
 
-[discrete]
-[[x-opaque-id]]
-==== Identifying running tasks with X-Opaque-Id
+## Identifying running tasks with X-Opaque-Id [x-opaque-id]
 
-The X-Opaque-Id header allows to track certain calls, or associate certain tasks 
-with the client that started them (refer to 
-https://www.elastic.co/guide/en/elasticsearch/reference/current/tasks.html#_identifying_running_tasks[the documentation]).
-To use this feature, you need to set an id for `opaque_id` on the client on each 
-request. Example:
+The X-Opaque-Id header allows to track certain calls, or associate certain tasks with the client that started them (refer to [the documentation](https://www.elastic.co/docs/api/doc/elasticsearch/group/endpoint-tasks)). To use this feature, you need to set an id for `opaque_id` on the client on each request. Example:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new
 client.search(index: 'myindex', q: 'title:test', opaque_id: '123456')
-------------------------------------
+```
 
 The search request includes the following HTTP Header:
 
@@ -175,15 +145,12 @@ The search request includes the following HTTP Header:
 X-Opaque-Id: 123456
 ```
 
-You can also set a prefix for X-Opaque-Id when initializing the client. This is 
-prepended to the id you set before each request if you're using X-Opaque-Id. 
-Example:
+You can also set a prefix for X-Opaque-Id when initializing the client. This is prepended to the id you set before each request if you’re using X-Opaque-Id. Example:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(opaque_id_prefix: 'eu-west1_')
 client.search(index: 'myindex', q: 'title:test', opaque_id: '123456')
-------------------------------------
+```
 
 The request includes the following HTTP Header:
 
@@ -192,12 +159,9 @@ X-Opaque-Id: eu-west1_123456
 ```
 
 
-[discrete]
-[[setting-timeouts]]
-==== Setting Timeouts
+## Setting Timeouts [setting-timeouts]
 
-For many operations in {es}, the default timeouts of HTTP libraries are too low. 
-To increase the timeout, you can use the `request_timeout` parameter:
+For many operations in {{es}}, the default timeouts of HTTP libraries are too low. To increase the timeout, you can use the `request_timeout` parameter:
 
 ```ruby
 Elasticsearch::Client.new(request_timeout: 5*60)
@@ -206,42 +170,30 @@ Elasticsearch::Client.new(request_timeout: 5*60)
 You can also use the `transport_options` argument documented below.
 
 
-[discrete]
-[[randomizing-hosts]]
-==== Randomizing Hosts
+## Randomizing Hosts [randomizing-hosts]
 
-If you pass multiple hosts to the client, it rotates across them in a 
-round-robin fashion by default. When the same client would be running in 
-multiple processes (for example, in a Ruby web server such as Thin), it might 
-keep connecting to the same nodes "at once". To prevent this, you can randomize 
-the hosts collection on initialization and reloading:
+If you pass multiple hosts to the client, it rotates across them in a round-robin fashion by default. When the same client would be running in multiple processes (for example, in a Ruby web server such as Thin), it might keep connecting to the same nodes "at once". To prevent this, you can randomize the hosts collection on initialization and reloading:
 
 ```ruby
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], randomize_hosts: true)
 ```
 
 
-[discrete]
-[[retry-failures]]
-==== Retrying on Failures
+## Retrying on Failures [retry-failures]
 
-When the client is initialized with multiple hosts, it makes sense to retry a 
-failed request on a different host:
+When the client is initialized with multiple hosts, it makes sense to retry a failed request on a different host:
 
 ```ruby
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], retry_on_failure: true)
 ```
 
-By default, the client does not retry the request. You can specify how many 
-times to retry before it raises an exception by passing a number to 
-`retry_on_failure`:
+By default, the client does not retry the request. You can specify how many times to retry before it raises an exception by passing a number to `retry_on_failure`:
 
 ```ruby
  Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], retry_on_failure: 5)
 ```
 
-You can also use `retry_on_status` to retry when specific status codes are 
-returned:
+You can also use `retry_on_status` to retry when specific status codes are returned:
 
 ```ruby
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], retry_on_status: [502, 503])
@@ -259,23 +211,18 @@ You can also set a `delay_on_retry` value in milliseconds. This will add a delay
  Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], retry_on_failure: 5, delay_on_retry: 1000)
 ```
 
-[discrete]
-[[reload-hosts]]
-==== Reloading Hosts
 
-{es} dynamically discovers new nodes in the cluster by default. You can leverage 
-this in the client, and periodically check for new nodes to spread the load.
+## Reloading Hosts [reload-hosts]
 
-To retrieve and use the information from the 
-https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-nodes-info.html[Nodes Info API] 
-on every 10,000th request:
+{{es}} dynamically discovers new nodes in the cluster by default. You can leverage this in the client, and periodically check for new nodes to spread the load.
+
+To retrieve and use the information from the [Nodes Info API](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-nodes-info) on every 10,000th request:
 
 ```ruby
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], reload_connections: true)
 ```
 
-You can pass a specific number of requests after which reloading should be 
-performed:
+You can pass a specific number of requests after which reloading should be performed:
 
 ```ruby
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], reload_connections: 1_000)
@@ -287,38 +234,34 @@ To reload connections on failures, use:
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], reload_on_failure: true)
 ```
 
-The reloading timeouts if not finished under 1 second by default. To change the 
-setting:
+The reloading timeouts if not finished under 1 second by default. To change the setting:
 
 ```ruby
 Elasticsearch::Client.new(hosts: ['localhost:9200', 'localhost:9201'], sniffer_timeout: 3)
 ```
 
-NOTE: When using reloading hosts ("sniffing") together with authentication, pass 
-the scheme, user and password with the host info – or, for more clarity, in the 
-`http` options:
+::::{note}
+When using reloading hosts ("sniffing") together with authentication, pass the scheme, user and password with the host info – or, for more clarity, in the `http` options:
+::::
+
 
-[source,ruby]
-------------------------------------
+```ruby
 Elasticsearch::Client.new(
   host: 'localhost:9200',
   http: { scheme: 'https', user: 'U', password: 'P' },
   reload_connections: true,
   reload_on_failure: true
 )
-------------------------------------
+```
 
 
-[discrete]
-[[connection-selector]]
-==== Connection Selector
+## Connection Selector [connection-selector]
 
 By default, the client rotates the connections in a round-robin fashion, using the `Elastic::Transport::Transport::Connections::Selector::RoundRobin` strategy.
 
-You can implement your own strategy to customize the behaviour. For example, let's have a "rack aware" strategy, which prefers the nodes with a specific attribute. The strategy uses the other nodes, only when these are unavailable:
+You can implement your own strategy to customize the behaviour. For example, let’s have a "rack aware" strategy, which prefers the nodes with a specific attribute. The strategy uses the other nodes, only when these are unavailable:
 
-[source,ruby]
-------------------------------------
+```ruby
 class RackIdSelector
   include Elastic::Transport::Transport::Connections::Selector::Base
 
@@ -331,24 +274,19 @@ class RackIdSelector
 end
 
 Elasticsearch::Client.new hosts: ['x1.search.org', 'x2.search.org'], selector_class: RackIdSelector
-------------------------------------
+```
 
 
-[discrete]
-[[serializer-implementations]]
-==== Serializer Implementations
+## Serializer Implementations [serializer-implementations]
 
-By default, the https://rubygems.org/gems/multi_json[MultiJSON] library is used as the serializer implementation, and it picks up the "right" adapter based on gems available.
+By default, the [MultiJSON](https://rubygems.org/gems/multi_json) library is used as the serializer implementation, and it picks up the "right" adapter based on gems available.
 
 The serialization component is pluggable, though, so you can write your own by including the `Elastic::Transport::Transport::Serializer::Base` module, implementing the required contract, and passing it to the client as the `serializer_class` or `serializer` parameter.
 
 
-[discrete]
-[[exception-handling]]
-==== Exception Handling
+## Exception Handling [exception-handling]
 
-The library defines a
-https://github.com/elastic/elastic-transport-ruby/blob/main/lib/elastic/transport/transport/errors.rb[number of exception classes] for various client and server errors, as well as unsuccessful HTTP responses, making it possible to rescue specific exceptions with desired granularity.
+The library defines a [number of exception classes](https://github.com/elastic/elastic-transport-ruby/blob/main/lib/elastic/transport/transport/errors.rb) for various client and server errors, as well as unsuccessful HTTP responses, making it possible to rescue specific exceptions with desired granularity.
 
 The highest-level exception is `Elastic::Transport::Transport::Error` and is raised for any generic client or server errors.
 
@@ -357,3 +295,4 @@ The highest-level exception is `Elastic::Transport::Transport::Error` and is rai
 As an example for response-specific errors, a 404 response status raises an `Elastic::Transport::Transport::Errors::NotFound` exception.
 
 Finally, `Elastic::Transport::Transport::SnifferTimeoutError` is raised when connection reloading ("sniffing") times out.
+
diff --git a/docs/api.asciidoc b/docs/reference/api.md
similarity index 68%
rename from docs/api.asciidoc
rename to docs/reference/api.md
index 85386c8122..261413b45c 100644
--- a/docs/api.asciidoc
+++ b/docs/reference/api.md
@@ -1,52 +1,49 @@
-[[api]]
-=== Elasticsearch API
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/api.html
+---
 
-The `elasticsearch-api` library provides a Ruby implementation of the https://www.elastic.co/elastic-stack/[Elasticsearch] REST API.
+# Elasticsearch API [api]
 
-[discrete]
-[[api-install]]
-==== Installation
+The `elasticsearch-api` library provides a Ruby implementation of the [Elasticsearch](https://www.elastic.co/elastic-stack/) REST API.
 
-Install the package from https://rubygems.org[Rubygems]:
 
-[source,bash]
-----------------------------
+## Installation [api-install]
+
+Install the package from [Rubygems](https://rubygems.org):
+
+```bash
 gem install elasticsearch-api
-----------------------------
+```
 
-To use an unreleased version, either add it to your `Gemfile` for https://bundler.io/[Bundler]:
+To use an unreleased version, either add it to your `Gemfile` for [Bundler](https://bundler.io/):
 
-[source,bash]
-----------------------------
+```bash
 gem 'elasticsearch-api', git: 'git://github.com/elasticsearch/elasticsearch-ruby.git'
-----------------------------
+```
 
 or install it from a source code checkout:
 
-[source,bash] 
-----------------------------
+```bash
 git clone https://github.com/elasticsearch/elasticsearch-ruby.git
 cd elasticsearch-ruby/elasticsearch-api
 bundle install
 rake install
-----------------------------
+```
+
+
+## Example usage [api-example-usage]
 
-[discrete]
-[[api-example-usage]]
-==== Example usage
+The library is designed as a group of standalone Ruby modules, which can be mixed into a class providing connection to Elasticsearch — an Elasticsearch client.
 
-The library is designed as a group of standalone Ruby modules, which can be mixed into a class
-providing connection to Elasticsearch -- an Elasticsearch client.
 
-[discrete]
-===== Usage with the `elasticsearch` gem
+### Usage with the `elasticsearch` gem [_usage_with_the_elasticsearch_gem]
 
-**When you use the client from the https://github.com/elasticsearch/elasticsearch-ruby[`elasticsearch-ruby`] client, the library modules have been already included**, so you just call the API methods.
+**When you use the client from the [`elasticsearch-ruby`](https://github.com/elasticsearch/elasticsearch-ruby) client, the library modules have been already included**, so you just call the API methods.
 
 The response will be an `Elasticsearch::API::Response` object which wraps an `Elasticsearch::Transport::Transport::Response` object. It provides `body`, `status` and `headers` methods, but you can treat is as a hash and access the keys directly.
 
-[source,rb]
-----------------------------
+```rb
 require 'elasticsearch'
 
 client = Elasticsearch::Client.new
@@ -91,22 +88,21 @@ client.search(index: 'myindex', body: { query: { match: { title: 'test' } } })
      "content-encoding"=>"gzip",
      "content-length"=>"188"},
    @status=200>>
-----------------------------
+```
 
-Full documentation and examples are included as RDoc annotations in the source code and available online at <http://rubydoc.info/gems/elasticsearch-api>.
+Full documentation and examples are included as RDoc annotations in the source code and available online at [http://rubydoc.info/gems/elasticsearch-api](http://rubydoc.info/gems/elasticsearch-api).
 
-[discrete]
-===== Usage with a custom client
 
-When you want to mix the library with your own client, it must conform to the following _contract_:
+### Usage with a custom client [_usage_with_a_custom_client]
+
+When you want to mix the library with your own client, it must conform to the following *contract*:
 
 * It responds to a `perform_request(method, path, params, body, headers)` method,
 * the method returns an object with `status`, `body` and `headers` methods.
 
-A simple client could look like this (_with a dependency on `active_support` to parse the query params_):
+A simple client could look like this (*with a dependency on `active_support` to parse the query params*):
 
-[source,rb]
-----------------------------
+```rb
 require 'multi_json'
 require 'faraday'
 require 'elasticsearch/api'
@@ -151,17 +147,14 @@ p client.cluster.health
 p client.index(index: 'myindex', id: 'custom', body: { title: "Indexing from my client" })
 # --> PUT myindex/mytype/custom {} {:title=>"Indexing from my client"}
 # => "{"ok":true, ... }"
-----------------------------
+```
+
 
-[discrete]
-===== Using JSON Builders
+### Using JSON Builders [_using_json_builders]
 
-Instead of passing the `:body` argument as a Ruby _Hash_, you can pass it as a _String_, potentially
-taking advantage of JSON builders such as https://github.com/rails/jbuilder[JBuilder] or
-https://github.com/bsiggelkow/jsonify[Jsonify]:
+Instead of passing the `:body` argument as a Ruby *Hash*, you can pass it as a *String*, potentially taking advantage of JSON builders such as [JBuilder](https://github.com/rails/jbuilder) or [Jsonify](https://github.com/bsiggelkow/jsonify):
 
-[source,rb]
-----------------------------
+```rb
 require 'jbuilder'
 
 query = Jbuilder.encode do |json|
@@ -181,16 +174,14 @@ client.search(index: 'myindex', body: query)
 # 2013-06-25 09:56:05 +0200: > {"query":{"match":{"title":{"query":"test 1","operator":"and"}}}}
 # ...
 # => {"took"=>21, ..., "hits"=>{"total"=>1, "hits"=>[{ "_source"=>{"title"=>"Test 1", ...}}]}}
-----------------------------
+```
 
-[discrete]
-===== Using Hash Wrappers
 
-For a more comfortable access to response properties, you may wrap it in one of the _Hash_ "object access"
-wrappers, such as https://github.com/intridea/hashie[`Hashie::Mash`]:
+### Using Hash Wrappers [_using_hash_wrappers]
 
-[source,rb]
-----------------------------
+For a more comfortable access to response properties, you may wrap it in one of the *Hash* "object access" wrappers, such as [`Hashie::Mash`](https://github.com/intridea/hashie):
+
+```rb
 require 'hashie'
 
 response = client.search(
@@ -205,16 +196,15 @@ mash = Hashie::Mash.new(response)
 
 mash.hits.hits.first._source.title
 # => 'Test'
-----------------------------
+```
+
 
-[discrete]
-=====  Using a Custom JSON Serializer
+### Using a Custom JSON Serializer [_using_a_custom_json_serializer]
 
-The library uses the https://rubygems.org/gems/multi_json/[MultiJson] gem by default but allows you to set a custom JSON library, provided it uses the standard `load/dump` interface:
+The library uses the [MultiJson](https://rubygems.org/gems/multi_json/) gem by default but allows you to set a custom JSON library, provided it uses the standard `load/dump` interface:
 
-[source,rb]
-----------------------------
+```rb
 Elasticsearch::API.settings[:serializer] = JrJackson::Json
 Elasticsearch::API.serializer.dump({foo: 'bar'})
 # => {"foo":"bar"}
-----------------------------
+```
diff --git a/docs/reference/basic-config.md b/docs/reference/basic-config.md
new file mode 100644
index 0000000000..f7bd47df7a
--- /dev/null
+++ b/docs/reference/basic-config.md
@@ -0,0 +1,37 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/basic-config.html
+---
+
+# Basic configuration [basic-config]
+
+The table below contains the most important initialization parameters that you can use.
+
+|     |     |     |
+| --- | --- | --- |
+| **Parameter** | **Data type** | **Description** |
+| `adapter` | Symbol | A specific adapter for Faraday (for example, `:patron`). |
+| `api_key` | String, Hash | For API key Authentication. Either the base64 encoding of `id` and `api_key` joined by a colon as a string, or a hash with the `id` and `api_key` values. |
+| `compression` | Boolean | Whether to compress requests. Gzip compression is used. Defaults to `false`. Responses are automatically inflated if they are compressed. If a custom transport object is used, it must handle the request compression and response inflation. |
+| `enable_meta_header` | Boolean | Whether to enable sending the meta data header to Cloud. Defaults to `true`. |
+| `hosts` | String, Array | Single host passed as a string or hash, or multiple hosts passed as an array; `host` or `url` keys are also valid. |
+| `log` | Boolean | Whether to use the default logger. Disabled by default. |
+| `logger` | Object | An instance of a Logger-compatible object. |
+| `opaque_id_prefix` | String | Sets a prefix for X-Opaque-Id when initializing the client. This is prepended to the id you set before each request if you’re using X-Opaque-Id. |
+| `opentelemetry_tracer_provider` | `OpenTelemetry::Trace::TracerProvider` | An explicit TracerProvider to use instead of the global one with OpenTelemetry. This enables better dependency injection and simplifies testing. |
+| `randomize_hosts` | Boolean | Whether to shuffle connections on initialization and reload. Defaults to `false`. |
+| `reload_connections` | Boolean, Number | Whether to reload connections after X requests. Defaults to `false`. |
+| `reload_on_failure` | Boolean | Whether to reload connections after failure. Defaults to `false`. |
+| `request_timeout` | Integer | The request timeout to be passed to transport in options. |
+| `resurrect_after` | Integer | Specifies after how many seconds a dead connection should be tried again. |
+| `retry_on_failure` | Boolean, Number | Whether to retry X times when request fails before raising and exception. Defaults to `false`. |
+| `retry_on_status` | Array, Number | Specifies which status code needs to be returned to retry. |
+| `selector` | Constant | An instance of selector strategy implemented with {Elastic::Transport::Transport::Connections::Selector::Base}. |
+| `send_get_body_as` | String | Specifies the HTTP method to use for GET requests with a body. Defaults to `GET`. |
+| `serializer_class` | Constant | Specifies a serializer class to use. It is initialized by the transport and passed the transport instance. |
+| `sniffer_timeout` | Integer | Specifies the timeout for reloading connections in seconds. Defaults to `1`. |
+| `trace` | Boolean | Whether to use the default tracer. Disabled by default. |
+| `tracer` | Object | Specifies an instance of a Logger-compatible object. |
+| `transport` | Object | Specifies a transport instance. |
+| `transport_class` | Constant | Specifies a transport class to use. It is initialized by the client and passed hosts and all arguments. |
+| `transport_options` | Hash | Specifies the options to be passed to the `Faraday::Connection` constructor. |
diff --git a/docs/reference/client-helpers.md b/docs/reference/client-helpers.md
new file mode 100644
index 0000000000..72220c37b7
--- /dev/null
+++ b/docs/reference/client-helpers.md
@@ -0,0 +1,14 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/client-helpers.html
+---
+
+# Client helpers [client-helpers]
+
+The Ruby client includes the following helpers:
+
+* [Bulk and Scroll helpers](/reference/Helpers.md)
+* [ES|QL](/reference/esql.md)
+
+
+
diff --git a/docs/reference/configuration.md b/docs/reference/configuration.md
new file mode 100644
index 0000000000..fdebc05c75
--- /dev/null
+++ b/docs/reference/configuration.md
@@ -0,0 +1,14 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/ruby-config.html
+---
+
+# Configuration [ruby-config]
+
+This page contains information about how to configure the Ruby client tailored to your needs. Almost every aspect of the client is configurable. However, in most cases you only need to set a couple of parameters.
+
+* [Basic configuration](/reference/basic-config.md)
+* [Advanced configuration](/reference/advanced-config.md)
+
+
+
diff --git a/docs/connecting.asciidoc b/docs/reference/connecting.md
similarity index 57%
rename from docs/connecting.asciidoc
rename to docs/reference/connecting.md
index 80e2acba63..8a75793639 100644
--- a/docs/connecting.asciidoc
+++ b/docs/reference/connecting.md
@@ -1,34 +1,28 @@
-[[connecting]]
-== Connecting
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/connecting.html
+---
 
-This page contains the information you need to connect and use the Client with 
-{es}.
+# Connecting [connecting]
 
-**On this page**
+This page contains the information you need to connect and use the Client with {{es}}.
 
-* <<client-auth, Authentication options>>
-* <<client-usage, Using the client>>
-* <<client-faas, Using the Client in a Function-as-a-Service Environment>>
-* <<client-comp, Enabling the Compatibility Mode>>
+## Authentication [client-auth]
 
-[discrete]
-[[client-auth]]
-=== Authentication
+This document contains code snippets to show you how to connect to various {{es}} providers.
 
-This document contains code snippets to show you how to connect to various {es} providers.
 
-[discrete]
-[[auth-ec]]
-==== Elastic Cloud
+### Elastic Cloud [auth-ec]
 
-If you are using https://www.elastic.co/cloud[Elastic Cloud], the client offers an easy way to connect to it. You need the Cloud ID that you can find in the cloud console, then your username and password.
+If you are using [Elastic Cloud](https://www.elastic.co/cloud), the client offers an easy way to connect to it. You need the Cloud ID that you can find in the cloud console, then your username and password.
 
-image::images/cloud_id.png["Cloud ID"]
+:::{image} ../images/cloud_id.png
+:alt: Cloud ID
+:::
 
 Once you have collected the Cloud ID you can use the client to connect to your Elastic Cloud instance, as follows:
 
-[source,ruby]
-------------------------------------
+```ruby
 require 'elasticsearch'
 
 client = Elasticsearch::Client.new(
@@ -36,55 +30,56 @@ client = Elasticsearch::Client.new(
   user: '<Username>',
   password: '<Password>',
 )
-------------------------------------
+```
 
 You can also connect to the Cloud by using API Key authentication. You can generate an `API key` in the `Management` page under the section `Security`.
 
-image::images/cloud_api_key.png["API key"]
+:::{image} ../images/cloud_api_key.png
+:alt: API key
+:::
 
 When you click on `Create API key` you can choose a name and set the other options (eg. restrict privileges, expire after time, etc).
 
-image::images/api_key_name.png["Choose an API name"]
+:::{image} ../images/api_key_name.png
+:alt: Choose an API name
+:::
 
-After this step you will get the `API key` in the API keys page. 
+After this step you will get the `API key` in the API keys page.
 
-image::images/cloud_api_key.png["API key"]
+:::{image} ../images/cloud_api_key.png
+:alt: API key
+:::
 
 **IMPORTANT**: you need to copy and store the `API key` in a secure place, since you will not be able to view it again in Elastic Cloud.
 
-Once you have collected the `Cloud ID` and the `API key` you can use the client
-to connect to your Elastic Cloud instance, as follows:
+Once you have collected the `Cloud ID` and the `API key` you can use the client to connect to your Elastic Cloud instance, as follows:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(
   cloud_id: '<CloudID>',
   api_key: '<ApiKey>'
 )
-------------------------------------
+```
 
 If you create the API Key through the dev console or the REST API, you may get instead a pair of `id` and `APIKey` values. The client also accepts a Hash for the `api_key` parameter, so you can pass in these values and it will encode the API Key internally:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(
   cloud_id: '<CloudID>',
   api_key: {id: '<Id>', api_key: '<APIKey>'}
 )
-------------------------------------
+```
 
-[discrete]
-[[connect-self-managed]]
-=== Connecting to a self-managed cluster
 
-{es} 8.0 offers security by default, that means authentication and TLS are enabled.
+## Connecting to a self-managed cluster [connect-self-managed]
 
-To connect to the {es} cluster you’ll need to configure the Ruby {es} client to use HTTPS with the generated CA certificate in order to make requests successfully.
+{{es}} 8.0 offers security by default, that means authentication and TLS are enabled.
 
-If you’re just getting started with {es} we recommend reading the documentation on configuring and starting {es} to ensure your cluster is running as expected.
+To connect to the {{es}} cluster you’ll need to configure the Ruby {{es}} client to use HTTPS with the generated CA certificate in order to make requests successfully.
 
-When you start {es} for the first time you’ll see a distinct block like the one below in the output from {es} (you may have to scroll up if it’s been a while):
+If you’re just getting started with {{es}} we recommend reading the documentation on configuring and starting {{es}} to ensure your cluster is running as expected.
 
+When you start {{es}} for the first time you’ll see a distinct block like the one below in the output from {{es}} (you may have to scroll up if it’s been a while):
 
 ```sh
 ----------------------------------------------------------------
@@ -105,31 +100,25 @@ Note down the `elastic` user password and HTTP CA fingerprint for the next secti
 Depending on the circumstances there are two options for verifying the HTTPS connection, either verifying with the CA certificate itself or via the HTTP CA certificate fingerprint.
 
 
-[discrete]
-[[ca-certificates]]
-==== Verifying HTTPS with CA certificates
+### Verifying HTTPS with CA certificates [ca-certificates]
 
-The generated root CA certificate can be found in the `certs` directory in your {es} config location (`$ES_CONF_PATH/certs/http_ca.crt`). If you're running {es} in Docker there is https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html[additional documentation for retrieving the CA certificate].
+The generated root CA certificate can be found in the `certs` directory in your {{es}} config location (`$ES_CONF_PATH/certs/http_ca.crt`). If you’re running {{es}} in Docker there is [additional documentation for retrieving the CA certificate](docs-content://deploy-manage/deploy/self-managed/install-elasticsearch-with-docker.md).
 
 Once you have the `http_ca.crt` file somewhere accessible pass the path to the client via `ca_certs`:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(
   host: "https://elastic:#{ELASTIC_PASSWORD}@localhost:9200",
   transport_options: { ssl: { ca_path: CERT_DIR } }
 )
-------------------------------------
+```
 
-[discrete]
-[[ca-fingerprint]]
-==== Verifying HTTPS with certificate fingerprints
 
+### Verifying HTTPS with certificate fingerprints [ca-fingerprint]
 
-This method of verifying the HTTPS connection takes advantage of the certificate fingerprint value noted down earlier. Take this SHA256 fingerprint value and pass it to the Ruby {es} client via `ca_fingerprint`:
+This method of verifying the HTTPS connection takes advantage of the certificate fingerprint value noted down earlier. Take this SHA256 fingerprint value and pass it to the Ruby {{es}} client via `ca_fingerprint`:
 
-[source,ruby]
-------------------------------------
+```ruby
 # Colons and uppercase/lowercase don't matter when using
 # the 'ca_fingerprint' parameter
 CERT_FINGERPRINT = '64F2593F...'
@@ -142,77 +131,65 @@ client = Elasticsearch::Client.new(
   transport_options: { ssl: { verify: false } },
   ca_fingerprint: CERT_FINGERPRINT
 )
-------------------------------------
+```
 
 The verification will be run once per connection.
 
-
 The certificate fingerprint can be calculated using `openssl x509` with the certificate file:
 
-[source,sh]
-----
+```sh
 openssl x509 -fingerprint -sha256 -noout -in /path/to/http_ca.crt
-----
+```
 
-If you don't have access to the generated CA file from {es} you can use the following script to output the root CA fingerprint of the {es} instance with `openssl s_client`:
+If you don’t have access to the generated CA file from {{es}} you can use the following script to output the root CA fingerprint of the {{es}} instance with `openssl s_client`:
 
-[source,sh]
-----
+```sh
 # Replace the values of 'localhost' and '9200' to the
 # corresponding host and port values for the cluster.
 openssl s_client -connect localhost:9200 -servername localhost -showcerts </dev/null 2>/dev/null \
   | openssl x509 -fingerprint -sha256 -noout -in /dev/stdin
-----
+```
 
 The output of `openssl x509` will look something like this:
 
-[source,sh]
-----
+```sh
 SHA256 Fingerprint=A5:2D:D9:35:11:E8:C6:04:5E:21:F1:66:54:B7:7C:9E:E0:F3:4A:EA:26:D9:F4:03:20:B5:31:C4:74:67:62:28
-----
-
+```
 
 
+### API Key authentication [auth-api-key]
 
-[discrete]
-[[auth-api-key]]
-==== API Key authentication
+You can also use [ApiKey](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-security-create-api-key) authentication.
 
-You can also use https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-create-api-key.html[ApiKey] authentication.
+::::{note}
+If you provide both basic authentication credentials and the ApiKey configuration, the ApiKey takes precedence.
+::::
 
-NOTE: If you provide both basic authentication credentials and the ApiKey configuration, the ApiKey takes precedence.
 
-[source,ruby]
-------------------------------------
+```ruby
 Elasticsearch::Client.new(
   host: host,
   transport_options: transport_options,
   api_key: credentials
 )
-------------------------------------
+```
 
-Where credentials is either the base64 encoding of `id` and `api_key` joined by 
-a colon or a hash with the `id` and `api_key`:
+Where credentials is either the base64 encoding of `id` and `api_key` joined by a colon or a hash with the `id` and `api_key`:
 
-[source,ruby]
-------------------------------------
+```ruby
 Elasticsearch::Client.new(
   host: host,
   transport_options: transport_options,
   api_key: {id: 'my_id', api_key: 'my_api_key'}
 )
-------------------------------------
+```
 
 
-[discrete]
-[[auth-basic]]
-==== Basic authentication
+### Basic authentication [auth-basic]
 
-You can pass the authentication credentials, scheme and port in the host 
-configuration hash:
+You can pass the authentication credentials, scheme and port in the host configuration hash:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(
   hosts:
 	  [
@@ -225,36 +202,31 @@ client = Elasticsearch::Client.new(
   	   }
 	  ]
 )
-------------------------------------
+```
 
 Or use the common URL format:
 
-[source,ruby]
-------------------------------------
+```ruby
 client = Elasticsearch::Client.new(url: 'https://username:password@localhost:9200')
-------------------------------------
+```
 
-To pass a custom certificate for SSL peer verification to Faraday-based clients,
-use the `transport_options` option:
+To pass a custom certificate for SSL peer verification to Faraday-based clients, use the `transport_options` option:
 
-[source,ruby]
-------------------------------------
+```ruby
 Elasticsearch::Client.new(
   url: 'https://username:password@localhost:9200',
   transport_options: {
 	ssl: { ca_file: '/path/to/http_ca.crt' }
   }
 )
-------------------------------------
+```
+
 
-[discrete]
-[[client-usage]]
-=== Usage
+## Usage [client-usage]
 
 The following snippet shows an example of using the Ruby client:
 
-[source,ruby]
-------------------------------------
+```ruby
 require 'elasticsearch'
 
 client = Elasticsearch::Client.new log: true
@@ -266,20 +238,17 @@ client.index(index: 'my-index', id: 1, body: { title: 'Test' })
 client.indices.refresh(index: 'my-index')
 
 client.search(index: 'my-index', body: { query: { match: { title: 'test' } } })
-------------------------------------
+```
+
 
+## Using the Client in a Function-as-a-Service Environment [client-faas]
 
-[discrete]
-[[client-faas]]
-=== Using the Client in a Function-as-a-Service Environment
+This section illustrates the best practices for leveraging the {{es}} client in a Function-as-a-Service (FaaS) environment. The most influential optimization is to initialize the client outside of the function, the global scope. This practice does not only improve performance but also enables background functionality as – for example – sniffing. The following examples provide a skeleton for the best practices.
 
-This section illustrates the best practices for leveraging the {es} client in a Function-as-a-Service (FaaS) environment. The most influential optimization is to initialize the client outside of the function, the global scope. This practice does not only improve performance but also enables background functionality as – for example – sniffing. The following examples provide a skeleton for the best practices.
 
-[discrete]
-==== GCP Cloud Functions
+### GCP Cloud Functions [_gcp_cloud_functions]
 
-[source,ruby]
-------------------------------------
+```ruby
 require 'functions_framework'
 require 'elasticsearch'
 
@@ -304,13 +273,12 @@ FunctionsFramework.http "hello_world" do |request|
     }
   )
 end
-------------------------------------
+```
 
-[discrete]
-==== AWS Lambda
 
-[source,ruby]
-------------------------------------
+### AWS Lambda [_aws_lambda]
+
+```ruby
 require 'elasticsearch'
 
 def client
@@ -336,17 +304,16 @@ def lambda_handler(event:, context:)
     }
   )
 end
-------------------------------------
+```
 
 Resources used to assess these recommendations:
 
-* https://cloud.google.com/functions/docs/bestpractices/tips#use_global_variables_to_reuse_objects_in_future_invocations[GCP Cloud Functions: Tips & Tricks]
-* https://docs.aws.amazon.com/lambda/latest/dg/best-practices.html[Best practices for working with AWS Lambda functions]
+* [GCP Cloud Functions: Tips & Tricks](https://cloud.google.com/functions/docs/bestpractices/tips#use_global_variables_to_reuse_objects_in_future_invocations)
+* [Best practices for working with AWS Lambda functions](https://docs.aws.amazon.com/lambda/latest/dg/best-practices.md)
+
 
-[discrete]
-[[client-comp]]
-=== Enabling the Compatibility Mode
+## Enabling the Compatibility Mode [client-comp]
 
 The Elasticsearch server version 8.0 is introducing a new compatibility mode that allows you a smoother upgrade experience from 7 to 8. In a nutshell, you can use the latest 7.x Elasticsearch client with an 8.x Elasticsearch server, giving more room to coordinate the upgrade of your codebase to the next major version.
 
-If you want to leverage this functionality, please make sure that you are using the latest 7.x client and set the environment variable `ELASTIC_CLIENT_APIVERSIONING` to `true`. The client is handling the rest internally. For every 8.0 and beyond client, you're all set! The compatibility mode is enabled by default.
+If you want to leverage this functionality, please make sure that you are using the latest 7.x client and set the environment variable `ELASTIC_CLIENT_APIVERSIONING` to `true`. The client is handling the rest internally. For every 8.0 and beyond client, you’re all set! The compatibility mode is enabled by default.
diff --git a/docs/reference/dsl.md b/docs/reference/dsl.md
new file mode 100644
index 0000000000..af686223d1
--- /dev/null
+++ b/docs/reference/dsl.md
@@ -0,0 +1,11 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/dsl.html
+---
+
+# Elasticsearch DSL [dsl]
+
+The [elasticsearch-dsl](https://github.com/elastic/elasticsearch-dsl-ruby) gem provides a Ruby API for the [Elasticsearch Query DSL](https://www.elasticsearch.com/guide/en/elasticsearch/reference/current/query-dsl.md). The library allows to programmatically build complex search definitions for {{es}} in Ruby, which are translated to Hashes, and ultimately, JSON, the language of {{es}}.
+
+See [the README](https://github.com/elastic/elasticsearch-dsl-ruby#elasticsearchdsl) for more information.
+
diff --git a/docs/reference/ecs.md b/docs/reference/ecs.md
new file mode 100644
index 0000000000..65100ebe4a
--- /dev/null
+++ b/docs/reference/ecs.md
@@ -0,0 +1,37 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/ecs.html
+---
+
+# Elastic Common Schema (ECS) [ecs]
+
+The [Elastic Common Schema (ECS)][Elastic Common Schema (ECS)](ecs://docs/reference/index.md)) is an open source format that defines a common set of fields to be used when storing event data like logs in Elasticsearch.
+
+You can use the library [ecs-logging](https://github.com/elastic/ecs-logging-ruby) which is a set of libraries that enables you to transform your application logs to structured logs that comply with the ECS format.
+
+Add this line to your application’s Gemfile:
+
+```ruby
+gem 'ecs-logging'
+```
+
+Then execute `bundle install`. Or install from the command line yourself:
+
+```ruby
+$ gem install ecs-logging
+```
+
+Then configure the client to use the logger:
+
+```ruby
+require 'ecs_logging/logger'
+require 'elasticsearch'
+
+logger = EcsLogging::Logger.new($stdout)
+client = Elasticsearch::Client.new(logger: logger)
+> client.info
+{"@timestamp":"2022-07-12T05:31:18.590Z","log.level":"INFO","message":"GET http://localhost:9200/ [status:200, request:0.009s, query:n/a]","ecs.version":"1.4.0"}...
+```
+
+See [ECS Logging Ruby Reference](ecs-logging-ruby://docs/reference/index.md) for more information on how to configure the logger.
+
diff --git a/docs/helpers/esql.asciidoc b/docs/reference/esql.md
similarity index 72%
rename from docs/helpers/esql.asciidoc
rename to docs/reference/esql.md
index 9a310911b5..6fea4bcdd9 100644
--- a/docs/helpers/esql.asciidoc
+++ b/docs/reference/esql.md
@@ -1,36 +1,29 @@
-[[esql]]
-=== ES|QL in the Ruby client
-++++
-<titleabbrev>ES|QL</titleabbrev>
-++++
+---
+navigation_title: "ES|QL"
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/esql.html
+---
 
-This page helps you understand and use {ref}/esql.html[ES|QL] in the
-Ruby client.
+# ES|QL in the Ruby client [esql]
+
+
+This page helps you understand and use [ES|QL](docs-content://explore-analyze/query-filter/languages/esql.md) in the Ruby client.
 
 There are two ways to use ES|QL in the Ruby client:
 
-* Use the Elasticsearch {es-docs}/esql-apis.html[ES|QL API] directly: This
-is the most flexible approach, but it's also the most complex because you must handle
-results in their raw form. You can choose the precise format of results,
-such as JSON, CSV, or text.
-* Use the Ruby ES|QL helper: The helper maps the raw response to an object that's
-more readily usable by your application.
+* Use the Elasticsearch [ES|QL API](https://www.elastic.co/docs/api/doc/elasticsearch/group/endpoint-esql) directly: This is the most flexible approach, but it’s also the most complex because you must handle results in their raw form. You can choose the precise format of results, such as JSON, CSV, or text.
+* Use the Ruby ES|QL helper: The helper maps the raw response to an object that’s more readily usable by your application.
 
 
-[discrete]
-[[esql-how-to]]
-==== ES|QL API
+## ES|QL API [esql-how-to]
 
-The {es-docs}/esql-query-api.html[ES|QL query API] allows you to specify how
-results should be returned. You can choose a
-{es-docs}/esql-rest.html#esql-rest-format[response format] such as CSV, text, or
-JSON, then fine-tune it with parameters like column separators and locale.
+The [ES|QL query API](https://www.elastic.co/docs/api/doc/elasticsearch/group/endpoint-esql) allows you to specify how results should be returned. You can choose a [response format](docs-content://explore-analyze/query-filter/languages/esql-rest.md#esql-rest-format) such as CSV, text, or JSON, then fine-tune it with parameters like column separators and locale.
 
 By default, the `query` API returns a Hash response with `columns` and `values`:
 
-[[esql-query]]
-[source,ruby]
-----
+$$$esql-query$$$
+
+```ruby
 query = <<ESQL
         FROM sample_data
         | EVAL duration_ms = ROUND(event.duration / 1000000.0, 1)
@@ -55,29 +48,22 @@ puts response
   ["2023-10-23T13:53:55.832Z", "172.21.3.15", 5033755, "Connection error", 5.0],
   ["2023-10-23T13:55:01.543Z", "172.21.3.15", 1756467, "Connected to 10.1.0.1", 1.8]
 ]}
-----
+```
 
 
-[discrete]
-[[esql-helper]]
-==== ES|QL helper
+## ES|QL helper [esql-helper]
 
-The ES|QL helper in the Ruby client provides an object response from the ES|QL 
-query API, instead of the default JSON value. 
+The ES|QL helper in the Ruby client provides an object response from the ES|QL query API, instead of the default JSON value.
 
 To use the ES|QL helper, require it in your code:
 
-[source,ruby]
-----
+```ruby
 require 'elasticsearch/helpers/esql_helper'
-----
+```
 
-The helper returns an array of hashes with the columns as keys and the 
-respective values. Using the <<esql-query,preceding example>>, the helper returns 
-the following:
+The helper returns an array of hashes with the columns as keys and the respective values. Using the [preceding example](#esql-query), the helper returns the following:
 
-[source,ruby]
-----
+```ruby
 response = Elasticsearch::Helpers::ESQLHelper.query(client, query)
 
 puts response
@@ -87,15 +73,11 @@ puts response
 {"duration_ms"=>1.2, "message"=>"Disconnected", "event.duration"=>1232382, "client.ip"=>"172.21.0.5", "@timestamp"=>"2023-10-23T13:33:34.937Z"}
 {"duration_ms"=>0.7, "message"=>"Connection error", "event.duration"=>725448, "client.ip"=>"172.21.3.15", "@timestamp"=>"2023-10-23T13:51:54.732Z"}
 {"duration_ms"=>8.3, "message"=>"Connection error", "event.duration"=>8268153, "client.ip"=>"172.21.3.15", "@timestamp"=>"2023-10-23T13:52:55.015Z"}
-----
+```
 
-Additionally, you can transform the data in the response by passing in a Hash 
-of `column => Proc` values. You could use this for example to convert 
-'@timestamp' into a DateTime object. Pass in a Hash to `query` as a `parser` 
-defining a `Proc` for each value you'd like to parse:
+Additionally, you can transform the data in the response by passing in a Hash of `column => Proc` values. You could use this for example to convert *@timestamp* into a DateTime object. Pass in a Hash to `query` as a `parser` defining a `Proc` for each value you’d like to parse:
 
-[source,ruby]
-----
+```ruby
 require 'elasticsearch/helpers/esql_helper'
 
 parser = {
@@ -104,12 +86,11 @@ parser = {
 response = Elasticsearch::Helpers::ESQLHelper.query(client, query, parser: parser)
 response.first['@timestamp']
 # <DateTime: 2023-10-23T12:15:03+00:00 ((2460241j,44103s,360000000n),+0s,2299161j)>
-----
+```
 
 You can pass in as many Procs as there are columns in the response. For example:
 
-[source,ruby]
-----
+```ruby
 parser = {
   '@timestamp' => Proc.new { |t| DateTime.parse(t) },
   'client.ip' => Proc.new { |i| IPAddr.new(i) },
@@ -125,4 +106,5 @@ puts response
 {"duration_ms"=>1.2, "message"=>"Disconnected", "event.duration"=>"1232382", "client.ip"=>#<IPAddr: IPv4:172.21.0.5/255.255.255.255>, "@timestamp"=>#<DateTime: 2023-10-23T13:33:34+00:00 ((2460241j,48814s,937000000n),+0s,2299161j)>}
 {"duration_ms"=>0.7, "message"=>"Connection error", "event.duration"=>"725448", "client.ip"=>#<IPAddr: IPv4:172.21.3.15/255.255.255.255>, "@timestamp"=>#<DateTime: 2023-10-23T13:51:54+00:00 ((2460241j,49914s,732000000n),+0s,2299161j)>}
 {"duration_ms"=>8.3, "message"=>"Connection error", "event.duration"=>"8268153", "client.ip"=>#<IPAddr: IPv4:172.21.3.15/255.255.255.255>, "@timestamp"=>#<DateTime: 2023-10-23T13:52:55+00:00 ((2460241j,49975s,15000000n),+0s,2299161j)>}
-----
+```
+
diff --git a/docs/examples.asciidoc b/docs/reference/examples.md
similarity index 82%
rename from docs/examples.asciidoc
rename to docs/reference/examples.md
index 22e9619505..75e850cfbc 100644
--- a/docs/examples.asciidoc
+++ b/docs/reference/examples.md
@@ -1,26 +1,26 @@
-[[examples]]
-== Examples
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/examples.html
+---
 
-Below you can find examples of how to use the most frequently called APIs with 
-the Ruby client.
+# Examples [examples]
 
-* <<ex-index>>
-* <<ex-get>>
-* <<ex-update>>
-* <<ex-delete>>
-* <<ex-bulk>>
-* <<ex-search>>
-* <<ex-multisearch>>
-* <<ex-scroll>>
-* <<ex-reindex>>
+Below you can find examples of how to use the most frequently called APIs with the Ruby client.
 
+* [Indexing a document](#ex-index)
+* [Getting a document](#ex-get)
+* [Updating a document](#ex-update)
+* [Deleting a document](#ex-delete)
+* [Bulk requests](#ex-bulk)
+* [Searching for a document](#ex-search)
+* [Multi search](#ex-multisearch)
+* [Scrolling](#ex-scroll)
+* [Reindexing](#ex-reindex)
 
-[discrete]
-[[ex-index]]
-=== Indexing a document
 
-Let's index a document with the following fields: `name`, `author`, 
-`release_date`, and `page_count`:
+## Indexing a document [ex-index]
+
+Let’s index a document with the following fields: `name`, `author`, `release_date`, and `page_count`:
 
 ```ruby
 body = {
@@ -34,9 +34,7 @@ client.index(index: 'books', body: body)
 ```
 
 
-[discrete]
-[[ex-get]]
-=== Getting a document
+## Getting a document [ex-get]
 
 You can get a document by ID:
 
@@ -46,9 +44,7 @@ client.get(index: 'books', id: id)
 ```
 
 
-[discrete]
-[[ex-update]]
-=== Updating a document
+## Updating a document [ex-update]
 
 Assume you have the following document:
 
@@ -65,9 +61,7 @@ client.update(index: 'books', id: id, body: { doc: { page_count: 225 } })
 ```
 
 
-[discrete]
-[[ex-delete]]
-=== Deleting a document
+## Deleting a document [ex-delete]
 
 You can delete a document by ID:
 
@@ -77,13 +71,9 @@ client.delete(index: 'books', id: id)
 ```
 
 
-[discrete]
-[[ex-bulk]]
-=== Bulk requests
+## Bulk requests [ex-bulk]
 
-The `bulk` operation of the client supports various different formats of the 
-payload: array of strings, header/data pairs, or the combined format where data 
-is passed along with the header in a single item in a custom `:data` key.
+The `bulk` operation of the client supports various different formats of the payload: array of strings, header/data pairs, or the combined format where data is passed along with the header in a single item in a custom `:data` key.
 
 Index several documents in one request:
 
@@ -109,8 +99,7 @@ body = [
 client.bulk(body: body)
 ```
 
-As mentioned, you can perform several operations in a single request with the 
-combined format passing data in the `:data` option:
+As mentioned, you can perform several operations in a single request with the combined format passing data in the `:data` option:
 
 ```ruby
 body = [
@@ -122,17 +111,13 @@ client.bulk(body: body)
 ```
 
 
-[discrete]
-[[ex-search]]
-=== Searching for a document
+## Searching for a document [ex-search]
 
-This example uses the same data that is used in the 
-https://www.elastic.co/guide/en/elasticsearch/reference/current/find-structure.html#find-structure-example-nld-json[Find structure API documentation].
+This example uses the same data that is used in the [Find structure API documentation](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-text-structure-find-structure).
 
 First, bulk index it:
 
-[source,ruby]
-----
+```ruby
 body = [
   { index: { _index: 'books', data: { name: 'Leviathan Wakes', author: 'James S.A. Corey', release_date: '2011-06-02', page_count: 561 } } },
   { index: { _index: 'books', data: { name: 'Hyperion', author: 'Dan Simmons', release_date: '1989-05-26', page_count: 482 } } },
@@ -160,10 +145,9 @@ body = [
   { index: { _index: 'books', data: { name: 'The Moon is a Harsh Mistress', author: 'Robert A. Heinlein', release_date: '1966-04-01', page_count: 288 } } }
 ]
 client.bulk(body: body)
-----
+```
 
-The `field` parameter is a common parameter, so it can be passed in directly in 
-the following way:
+The `field` parameter is a common parameter, so it can be passed in directly in the following way:
 
 ```ruby
 client.search(index: 'books', q: 'dune')
@@ -178,10 +162,10 @@ response['hits']['hits'].count # => 15
 ```
 
 
-[discrete]
-[[ex-multisearch]]
-=== Multi search 
+## Multi search [ex-multisearch]
+
 The following example shows how to perform a multisearch API call on `books` index:
+
 ```ruby
 body = [
   {},
@@ -192,12 +176,10 @@ body = [
 client.msearch(index:'books', body: body)
 ```
 
-[discrete]
-[[ex-scroll]]
-=== Scrolling
 
-Submit a search API request that includes an argument for the scroll query 
-parameter, save the search ID, then print out the book names you found:
+## Scrolling [ex-scroll]
+
+Submit a search API request that includes an argument for the scroll query parameter, save the search ID, then print out the book names you found:
 
 ```ruby
 # Search request with a scroll argument:
@@ -214,13 +196,11 @@ end
 ```
 
 
-[discrete]
-[[ex-reindex]]
-=== Reindexing
+## Reindexing [ex-reindex]
 
-The following example shows how to reindex the `books` index into a new index 
-called `books-reindexed`:
+The following example shows how to reindex the `books` index into a new index called `books-reindexed`:
 
 ```ruby
 client.reindex(body: {source: { index: 'books'}, dest: {index: 'books-reindexed' } })
 ```
+
diff --git a/docs/reference/getting-started.md b/docs/reference/getting-started.md
new file mode 100644
index 0000000000..41920656aa
--- /dev/null
+++ b/docs/reference/getting-started.md
@@ -0,0 +1,125 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/getting-started-ruby.html
+  - https://www.elastic.co/guide/en/serverless/current/elasticsearch-ruby-client-getting-started.html
+---
+
+# Getting started [getting-started-ruby]
+
+This page guides you through the installation process of the Ruby client, shows you how to instantiate the client, and how to perform basic Elasticsearch operations with it.
+
+
+### Requirements [_requirements]
+
+A currently maintained version of Ruby (3.0+) or JRuby (9.3+).
+
+
+### Installation [_installation]
+
+To install the latest version of the client, run the following command:
+
+```shell
+gem install elasticsearch
+```
+
+Refer to the [*Installation*](/reference/installation.md) page to learn more.
+
+
+### Connecting [_connecting]
+
+You can connect to the Elastic Cloud using an API key and the Elasticsearch endpoint.
+
+```rb
+client = Elasticsearch::Client.new(
+  cloud_id: '<CloudID>',
+  api_key: '<ApiKey>'
+)
+```
+
+Your Elasticsearch endpoint can be found on the **My deployment** page of your deployment:
+
+:::{image} ../images/es_endpoint.jpg
+:alt: Finding Elasticsearch endpoint
+:::
+
+You can generate an API key on the **Management** page under Security.
+
+:::{image} ../images/create_api_key.png
+:alt: Create API key
+:::
+
+For other connection options, refer to the [*Connecting*](/reference/connecting.md) section.
+
+
+### Operations [_operations]
+
+Time to use Elasticsearch! This section walks you through the basic, and most important, operations of Elasticsearch. For more operations and more advanced examples, refer to the [*Examples*](/reference/examples.md) page.
+
+
+#### Creating an index [_creating_an_index]
+
+This is how you create the `my_index` index:
+
+```rb
+client.indices.create(index: 'my_index')
+```
+
+
+#### Indexing documents [_indexing_documents]
+
+This is a simple way of indexing a document:
+
+```rb
+document = { name: 'elasticsearch-ruby' }
+response = client.index(index: 'my_index', body: document)
+# You can get the indexed document id with:
+response['_id']
+=> "PlgIDYkBWS9Ngdx5IMy-"
+id = response['_id']
+```
+
+
+#### Getting documents [_getting_documents]
+
+You can get documents by using the following code:
+
+```rb
+client.get(index: 'my_index', id: id)
+```
+
+
+#### Searching documents [_searching_documents]
+
+This is how you can create a single match query with the Ruby client:
+
+```rb
+client.search(index: 'my_index', body: { query: { match_all: {} } })
+```
+
+
+#### Updating documents [_updating_documents]
+
+This is how you can update a document, for example to add a new field:
+
+```rb
+client.update(index: 'my_index', id: id, body: { doc: { language: 'Ruby' } })
+```
+
+
+#### Deleting documents [_deleting_documents]
+
+```rb
+client.delete(index: 'my_index', id: id)
+```
+
+
+#### Deleting an index [_deleting_an_index]
+
+```rb
+client.indices.delete(index: 'my_index')
+```
+
+
+## Further reading [_further_reading]
+
+* Use [Bulk and Scroll helpers](/reference/Helpers.md) for a more confortable experience with the APIs.
diff --git a/docs/reference/index.md b/docs/reference/index.md
new file mode 100644
index 0000000000..088cd04b9b
--- /dev/null
+++ b/docs/reference/index.md
@@ -0,0 +1,40 @@
+---
+mapped_pages:
+  https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/index.html
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/ruby_client.html
+---
+
+# Ruby [ruby_client]
+
+The `elasticsearch` [Rubygem](http://rubygems.org/gems/elasticsearch) provides a low-level client for communicating with an {{es}} cluster, fully compatible with other official clients.
+
+More documentation is hosted in [Github](https://github.com/elastic/elasticsearch-ruby) and [RubyDoc](http://rubydoc.info/gems/elasticsearch).
+
+Refer to the [*Getting started*](/reference/getting-started.md) page for a step-by-step quick start with the Ruby client.
+
+
+## Features [_features]
+
+* Pluggable logging and tracing
+* Pluggable connection selection strategies (round-robin, random, custom)
+* Pluggable transport implementation, customizable and extendable
+* Pluggable serializer implementation
+* Request retries and dead connections handling
+* Node reloading (based on cluster state) on errors or on demand
+* Modular API implementation
+* 100% REST API coverage
+
+
+## Transport and API [transport-api]
+
+The `elasticsearch` gem combines two separate Rubygems:
+
+* [`elastic-transport`](https://github.com/elastic/elastic-transport-ruby/) - provides an HTTP Ruby client for connecting to the {{es}} cluster. Refer to the documentation: [Transport](/reference/transport.md)
+* [`elasticsearch-api`](https://github.com/elastic/elasticsearch-ruby/tree/main/elasticsearch-api) - provides a Ruby API for the {{es}} RESTful API.
+
+Please consult their respective documentation for configuration options and technical details.
+
+Notably, the documentation and comprehensive examples for all the API methods are contained in the source, and available online at [Rubydoc](http://rubydoc.info/gems/elasticsearch-api/Elasticsearch/API/Actions).
+
+Keep in mind, that for optimal performance, you should use an HTTP library which supports persistent ("keep-alive") HTTP connections.
+
diff --git a/docs/reference/installation.md b/docs/reference/installation.md
new file mode 100644
index 0000000000..73048cfa0d
--- /dev/null
+++ b/docs/reference/installation.md
@@ -0,0 +1,44 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/ruby-install.html
+---
+
+# Installation [ruby-install]
+
+Install the Rubygem for the latest {{es}} version by using the following command:
+
+```sh
+gem install elasticsearch
+```
+
+Or add the `elasticsearch` Ruby gem to your Gemfile:
+
+```ruby
+gem 'elasticsearch'
+```
+
+You can install the Ruby gem for a specific {{es}} version by using the following command:
+
+```sh
+gem install elasticsearch -v 7.0.0
+```
+
+Or you can add a specific version of {{es}} to your Gemfile:
+
+```ruby
+gem 'elasticsearch', '~> 7.0'
+```
+
+
+## {{es}} and Ruby version compatibility [_es_and_ruby_version_compatibility]
+
+The {{es}} client is compatible with currently maintained Ruby versions. We follow Ruby’s own maintenance policy and officially support all currently maintained versions per [Ruby Maintenance Branches](https://www.ruby-lang.org/en/downloads/branches/).
+
+Language clients are forward compatible; meaning that clients support communicating with greater or equal minor versions of {{es}} without breaking. It does not mean that the client automatically supports new features of newer {{es}} versions; it is only possible after a release of a new client version. For example, a 8.12 client version won’t automatically support the new features of the 8.13 version of {{es}}, the 8.13 client version is required for that. {{es}} language clients are only backwards compatible with default distributions and without guarantees made.
+
+| Gem Version |  | {{es}} Version | Supported |
+| --- | --- | --- | --- |
+| 7.x | → | 7.x | 7.17 |
+| 8.x | → | 8.x | 8.x |
+| main | → | main |  |
+
diff --git a/docs/reference/integrations.md b/docs/reference/integrations.md
new file mode 100644
index 0000000000..2b54bab453
--- /dev/null
+++ b/docs/reference/integrations.md
@@ -0,0 +1,26 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/integrations.html
+---
+
+# Integrations [integrations]
+
+The Rubygems listed on this page make it easier to operate with {{es}} by using the Ruby client.
+
+* [Transport](/reference/transport.md)
+* [Elasticsearch API](/reference/api.md)
+* [Using OpenTelemetry](/reference/opentelemetry.md)
+* [Elastic Common Schema (ECS)](/reference/ecs.md)
+* [ActiveModel / ActiveRecord](/reference/activemodel_activerecord.md)
+* [Ruby On Rails](/reference/ruby_on_rails.md)
+* [Persistence](/reference/persistence.md)
+* [Elasticsearch DSL](/reference/dsl.md)
+
+
+
+
+
+
+
+
+
diff --git a/docs/reference/opentelemetry.md b/docs/reference/opentelemetry.md
new file mode 100644
index 0000000000..ccc4863a8c
--- /dev/null
+++ b/docs/reference/opentelemetry.md
@@ -0,0 +1,97 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/opentelemetry.html
+---
+
+# Using OpenTelemetry [opentelemetry]
+
+You can use [OpenTelemetry](https://opentelemetry.io/) to monitor the performance and behavior of your {{es}} requests through the Ruby Client. The Ruby Client comes with built-in OpenTelemetry instrumentation that emits [distributed tracing spans](docs-content://solutions/observability/apps/traces-2.md) by default. With that, applications [instrumented with OpenTelemetry](https://opentelemetry.io/docs/instrumentation/ruby/manual/) or using the [OpenTelemetry Ruby SDK](https://opentelemetry.io/docs/instrumentation/ruby/automatic/) are inherently enriched with additional spans that contain insightful information about the execution of the {{es}} requests.
+
+The native instrumentation in the Ruby Client follows the [OpenTelemetry Semantic Conventions for {{es}}](https://opentelemetry.io/docs/specs/semconv/database/elasticsearch/). In particular, the instrumentation in the client covers the logical layer of {{es}} requests. A single span per request is created that is processed by the service through the Ruby Client. The following image shows a trace that records the handling of two different {{es}} requests: a `ping` request and a `search` request.
+
+:::{image} ../images/otel-waterfall-without-http.png
+:alt: Distributed trace with Elasticsearch spans
+:class: screenshot
+:::
+
+Usually, OpenTelemetry auto-instrumentation modules come with instrumentation support for HTTP-level communication. In this case, in addition to the logical {{es}} client requests, spans will be captured for the physical HTTP requests emitted by the client. The following image shows a trace with both, {{es}} spans (in blue) and the corresponding HTTP-level spans (in red):
+
+:::{image} ../images/otel-waterfall-with-http.png
+:alt: Distributed trace with Elasticsearch spans
+:class: screenshot
+:::
+
+Advanced Ruby Client behavior such as nodes round-robin and request retries are revealed through the combination of logical {{es}} spans and the physical HTTP spans. The following example shows a `search` request in a scenario with two nodes:
+
+:::{image} ../images/otel-waterfall-retry.png
+:alt: Distributed trace with Elasticsearch spans
+:class: screenshot
+:::
+
+The first node is unavailable and results in an HTTP error, while the retry to the second node succeeds. Both HTTP requests are subsumed by the logical {{es}} request span (in blue).
+
+
+## Setup the OpenTelemetry instrumentation [_setup_the_opentelemetry_instrumentation]
+
+When using the [OpenTelemetry Ruby SDK manually](https://opentelemetry.io/docs/instrumentation/ruby/manual) or using the [OpenTelemetry Ruby Auto-Instrumentations](https://opentelemetry.io/docs/instrumentation/ruby/automatic/), the Ruby Client’s OpenTelemetry instrumentation is enabled by default and uses the global OpenTelemetry SDK with the global tracer provider. You can provide a tracer provider via the Ruby Client configuration option `opentelemetry_tracer_provider` when instantiating the client. This is sometimes useful for testing or other specific use cases.
+
+```ruby
+client = Elasticsearch::Client.new(
+  cloud_id: '<CloudID>',
+  api_key: '<ApiKey>',
+  opentelemetry_tracer_provider: tracer_provider
+)
+```
+
+
+## Configuring the OpenTelemetry instrumentation [_configuring_the_opentelemetry_instrumentation]
+
+You can configure the OpenTelemetry instrumentation through Environment Variables. The following configuration options are available.
+
+
+### Enable / Disable the OpenTelemetry instrumentation [opentelemetry-config-enable]
+
+With this configuration option you can enable (default) or disable the built-in OpenTelemetry instrumentation.
+
+**Default:** `true`
+
+|     |     |
+| --- | --- |
+| Environment Variable | `OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_ENABLED` |
+
+
+### Capture search request bodies [_capture_search_request_bodies]
+
+Per default, the built-in OpenTelemetry instrumentation does not capture request bodies due to data privacy considerations. You can use this option to enable capturing of search queries from the request bodies of {{es}} search requests in case you wish to gather this information regardless. The options are to capture the raw search query, sanitize the query with a default list of sensitive keys, or not capture it at all.
+
+**Default:** `omit`
+
+**Valid Options:** `omit`, `sanitize`, `raw`
+
+|     |     |
+| --- | --- |
+| Environment Variable | `OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_CAPTURE_SEARCH_QUERY` |
+
+
+### Sanitize the {{es}} search request body [_sanitize_the_es_search_request_body]
+
+You can configure the list of keys whose values are redacted when the search query is captured. Values must be comma-separated. Note in v8.3.0 and v8.3.1, the environment variable `OTEL_INSTRUMENTATION_ELASTICSEARCH_CAPTURE_SEARCH_QUERY` was available but is now deprecated in favor of the environment variable including `RUBY`.
+
+**Default:** `nil`
+
+|     |     |
+| --- | --- |
+| Environment Variable | `OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_SEARCH_QUERY_SANITIZE_KEYS` |
+
+Example:
+
+```bash
+OTEL_RUBY_INSTRUMENTATION_ELASTICSEARCH_SEARCH_QUERY_SANITIZE_KEYS='sensitive-key,other-sensitive-key'
+```
+
+
+## Overhead [_overhead]
+
+The OpenTelemetry instrumentation (as any other monitoring approach) may come with a slight overhead on CPU, memory, and/or latency. The overhead may only occur when the instrumentation is enabled (default) and an OpenTelemetry SDK is active in the target application. When the instrumentation is disabled or no OpenTelemetry SDK is active within the target application, monitoring overhead is not expected when using the client.
+
+Even in cases where the instrumentation is enabled and is actively used (by an OpenTelemetry SDK), the overhead is minimal and negligible in the vast majority of cases. In edge cases where there is a noticeable overhead, the [instrumentation can be explicitly disabled](#opentelemetry-config-enable) to eliminate any potential impact on performance.
diff --git a/docs/persistence.asciidoc b/docs/reference/persistence.md
similarity index 56%
rename from docs/persistence.asciidoc
rename to docs/reference/persistence.md
index 8567a723cf..2bb497a96b 100644
--- a/docs/persistence.asciidoc
+++ b/docs/reference/persistence.md
@@ -1,42 +1,37 @@
-[[persistence]]
-=== Persistence
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/persistence.html
+---
 
-The `elasticsearch-persistence` 
-http://rubygems.org/gems/elasticsearch-persistence[Rubygem] provides persistence 
-layer for Ruby domain objects.
+# Persistence [persistence]
 
-It supports the repository design patterns. Versions before 6.0 also supported 
-the _active record_ design pattern.
+The `elasticsearch-persistence` [Rubygem](http://rubygems.org/gems/elasticsearch-persistence) provides persistence layer for Ruby domain objects.
 
+It supports the repository design patterns. Versions before 6.0 also supported the *active record* design pattern.
 
-[discrete]
-==== Repository
 
-The `Elasticsearch::Persistence::Repository` module provides an implementation 
-of the repository pattern and allows to save, delete, find and search objects 
-stored in {es}, as well as configure mappings and settings for the index.
+## Repository [_repository]
 
+The `Elasticsearch::Persistence::Repository` module provides an implementation of the repository pattern and allows to save, delete, find and search objects stored in {{es}}, as well as configure mappings and settings for the index.
 
-[discrete]
-===== Features
 
-* Access to the {es} client
+### Features [_features_4]
+
+* Access to the {{es}} client
 * Setting the index name, document type, and object class for deserialization
 * Composing mappings and settings for the index
 * Creating, deleting or refreshing the index
 * Finding or searching for documents
 * Providing access both to domain objects and hits for search results
-* Providing access to the {es} response for search results
+* Providing access to the {{es}} response for search results
 * Defining the methods for serialization and deserialization
 
 
-[discrete]
-===== Usage
+### Usage [_usage_2]
 
-Let's have a simple plain old Ruby object (PORO):
+Let’s have a simple plain old Ruby object (PORO):
 
-[source,ruby]
-------------------------------------
+```ruby
 class Note
   attr_reader :attributes
 
@@ -48,69 +43,58 @@ class Note
     @attributes
   end
 end
-------------------------------------
+```
 
 Create a default, "dumb" repository, as a first step:
 
-[source,ruby]
-------------------------------------
+```ruby
 require 'elasticsearch/persistence'
 class MyRepository; include Elasticsearch::Persistence::Repository; end
 repository = MyRepository.new
-------------------------------------
+```
 
 Save a `Note` instance into the repository:
 
-[source,ruby]
-------------------------------------
+```ruby
 note = Note.new id: 1, text: 'Test'
 
 repository.save(note)
 # PUT http://localhost:9200/repository/_doc/1 [status:201, request:0.210s, query:n/a]
 # > {"id":1,"text":"Test"}
 # < {"_index":"repository","_type":"note","_id":"1","_version":1,"created":true}
-------------------------------------
+```
 
 Find it:
 
-[source,ruby]
-------------------------------------
+```ruby
 n = repository.find(1)
 # GET http://localhost:9200/repository/_doc/1 [status:200, request:0.003s, query:n/a]
 # < {"_index":"repository","_type":"note","_id":"1","_version":2,"found":true, "_source" : {"id":1,"text":"Test"}}
 => <Note:0x007fcbfc0c4980 @attributes={"id"=>1, "text"=>"Test"}>
-------------------------------------
+```
 
 Search for it:
 
-[source,ruby]
-------------------------------------
+```ruby
 repository.search(query: { match: { text: 'test' } }).first
 # GET http://localhost:9200/repository/_search [status:200, request:0.005s, query:0.002s]
 # > {"query":{"match":{"text":"test"}}}
 # < {"took":2, ... "hits":{"total":1, ... "hits":[{ ... "_source" : {"id":1,"text":"Test"}}]}}
 => <Note:0x007fcbfc1c7b70 @attributes={"id"=>1, "text"=>"Test"}>
-------------------------------------
+```
 
 Delete it:
 
-[source,ruby]
-------------------------------------
+```ruby
 repository.delete(note)
 # DELETE http://localhost:9200/repository/_doc/1 [status:200, request:0.014s, query:n/a]
 # < {"found":true,"_index":"repository","_type":"note","_id":"1","_version":3}
 => {"found"=>true, "_index"=>"repository", "_type"=>"note", "_id"=>"1", "_version"=>2}
-------------------------------------
+```
+
+The repository module provides a number of features and facilities to configure and customize the behaviour, as well as support for extending your own, custom repository class.
 
-The repository module provides a number of features and facilities to configure 
-and customize the behaviour, as well as support for extending your own, custom 
-repository class.
+Please refer to the [documentation](https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-persistence#the-repository-pattern) for more information.
 
-Please refer to the
-https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-persistence#the-repository-pattern[documentation]
-for more information.
+Also, check out the [example application](https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-persistence#example-application) which demonstrates the usage patterns of the *repository* approach to persistence.
 
-Also, check out the
-https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-persistence#example-application[example application] 
-which demonstrates the usage patterns of the _repository_ approach to 
-persistence.
diff --git a/docs/reference/ruby_on_rails.md b/docs/reference/ruby_on_rails.md
new file mode 100644
index 0000000000..500fcbb762
--- /dev/null
+++ b/docs/reference/ruby_on_rails.md
@@ -0,0 +1,23 @@
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/ruby_on_rails.html
+---
+
+# Ruby On Rails [ruby_on_rails]
+
+The `elasticsearch-rails` [Rubygem](http://rubygems.org/gems/elasticsearch-rails) provides features suitable for Ruby on Rails applications.
+
+
+## Features [_features_3]
+
+* Rake tasks for importing data from application models
+* Integration with Rails' instrumentation framework
+* Templates for generating example Rails application
+
+
+## Example applications [_example_applications]
+
+You can generate a fully working example Ruby on Rails application with templates provides.
+
+Please refer to the [documentation](https://github.com/elastic/elasticsearch-rails/tree/master/elasticsearch-rails) for more information.
+
diff --git a/docs/reference/toc.yml b/docs/reference/toc.yml
new file mode 100644
index 0000000000..be3fc7f854
--- /dev/null
+++ b/docs/reference/toc.yml
@@ -0,0 +1,24 @@
+toc:
+  - file: index.md
+  - file: getting-started.md
+  - file: installation.md
+  - file: connecting.md
+  - file: configuration.md
+    children:
+      - file: basic-config.md
+      - file: advanced-config.md
+  - file: integrations.md
+    children:
+      - file: transport.md
+      - file: api.md
+      - file: opentelemetry.md
+      - file: ecs.md
+      - file: activemodel_activerecord.md
+      - file: ruby_on_rails.md
+      - file: persistence.md
+      - file: dsl.md
+  - file: examples.md
+  - file: client-helpers.md
+    children:
+      - file: Helpers.md
+      - file: esql.md
\ No newline at end of file
diff --git a/docs/transport.asciidoc b/docs/reference/transport.md
similarity index 57%
rename from docs/transport.asciidoc
rename to docs/reference/transport.md
index b9199b19ed..fa38c71f2d 100644
--- a/docs/transport.asciidoc
+++ b/docs/reference/transport.md
@@ -1,26 +1,33 @@
-[[transport]]
-=== Transport
+---
+mapped_pages:
+  - https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/transport.html
+---
 
-The `elastic-transport` library provides a low-level Ruby client for connecting to an {es} cluster. It currently powers the https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/index.html[Elasticsearch Ruby] and the https://www.elastic.co/guide/en/enterprise-search-clients/ruby/current/index.html[Enterprise Search Ruby] clients.
+# Transport [transport]
+
+The `elastic-transport` library provides a low-level Ruby client for connecting to an {{es}} cluster. It powers the [Elasticsearch Ruby](/reference/index.md) client.
 
 When available, it handles connecting to multiple nodes in the cluster, rotating across connections, logging and tracing requests and responses, maintaining failed connections, discovering nodes in the cluster, and provides an abstraction for data serialization and transport.
 
-It does not handle calling the {es} or Enterprise Search APIs.
+It does not handle calling the {{es}} APIs.
 
-This library uses https://github.com/lostisland/faraday[Faraday] by default as the HTTP transport implementation. We test it with Faraday versions 1.x and 2.x.
+This library uses [Faraday](https://github.com/lostisland/faraday) by default as the HTTP transport implementation. We test it with Faraday versions 1.x and 2.x.
 
-For optimal performance, use a HTTP library which supports persistent ("keep-alive") connections, such as https://github.com/toland/patron[patron] or https://github.com/typhoeus/typhoeus[Typhoeus]. Require the library (`require 'patron'`) in your code for Faraday 1.x or the adapter (`require 'faraday/patron'`) for Faraday 2.x, and it will be automatically used.
+For optimal performance, use a HTTP library which supports persistent ("keep-alive") connections, such as [patron](https://github.com/toland/patron) or [Typhoeus](https://github.com/typhoeus/typhoeus). Require the library (`require 'patron'`) in your code for Faraday 1.x or the adapter (`require 'faraday/patron'`) for Faraday 2.x, and it will be automatically used.
 
 Currently these libraries are supported:
 
-* https://github.com/toland/patron[Patron]
-* https://github.com/typhoeus/typhoeus[Typhoeus]
-* https://rubygems.org/gems/httpclient[HTTPClient]
-* https://rubygems.org/gems/net-http-persistent[Net::HTTP::Persistent]
+* [Patron](https://github.com/toland/patron)
+* [Typhoeus](https://github.com/typhoeus/typhoeus)
+* [HTTPClient](https://rubygems.org/gems/httpclient)
+* [Net::HTTP::Persistent](https://rubygems.org/gems/net-http-persistent)
+
+::::{note}
+Use [Typhoeus](https://github.com/typhoeus/typhoeus) v1.4.0 or up since older versions are not compatible with Faraday 1.0.
+::::
 
-NOTE: Use https://github.com/typhoeus/typhoeus[Typhoeus] v1.4.0 or up since older versions are not compatible with Faraday 1.0.
 
-You can customize Faraday and implement your own HTTP transport. For detailed information, see the example configurations and more information <<transport-implementations,below>>.
+You can customize Faraday and implement your own HTTP transport. For detailed information, see the example configurations and more information [below](#transport-implementations).
 
 Features overview:
 
@@ -31,87 +38,74 @@ Features overview:
 * Request retries and dead connections handling
 * Node reloading (based on cluster state) on errors or on demand
 
-Refer to <<advanced-config,Advanced Configuration>> to read about more configuration options.
+Refer to [Advanced Configuration](/reference/advanced-config.md) to read about more configuration options.
+
 
-[discrete]
-[[transport-install]]
-==== Installation
+## Installation [transport-install]
 
-Install the package from https://rubygems.org/[Rubygems]:
+Install the package from [Rubygems](https://rubygems.org/):
 
-[source,bash]
-----------------------------
+```bash
 gem install elastic-transport
-----------------------------
+```
 
-To use an unreleased version, either add it to your `Gemfile` for 
-http://gembundler.com/[Bundler]:
+To use an unreleased version, either add it to your `Gemfile` for [Bundler](http://gembundler.com/):
 
-[source,bash]
-----------------------------
+```bash
 gem 'elastic-transport', git: 'git@github.com:elastic/elastic-transport-ruby.git'
-----------------------------
+```
 
 or install it from a source code checkout:
 
-[source,bash]
-----------------------------
+```bash
 git clone https://github.com/elastic/elastic-transport-ruby.git
 cd elastic-transport
 bundle install
 rake install
-----------------------------
+```
 
-[discrete]
-[[transport-example-usage]]
-==== Example usage
 
-In the simplest form, connect to {es} running on http://localhost:9200 without any configuration:
+## Example usage [transport-example-usage]
 
-[source,rb]
-----------------------------
+In the simplest form, connect to {{es}} running on [http://localhost:9200](http://localhost:9200) without any configuration:
+
+```rb
 require 'elastic/transport'
 
 client = Elastic::Transport::Client.new
 response = client.perform_request('GET', '_cluster/health')
 # => #<Elastic::Transport::Transport::Response:0x007fc5d506ce38 @status=200, @body={ ... } >
-----------------------------
+```
 
-Documentation is included as RDoc annotations in the source code and available online at http://rubydoc.info/gems/elastic-transport[RubyDoc].
+Documentation is included as RDoc annotations in the source code and available online at [RubyDoc](http://rubydoc.info/gems/elastic-transport).
 
-[discrete]
-[[transport-implementations]]
-==== Transport implementations
 
-By default, the client uses the https://rubygems.org/gems/faraday[Faraday] HTTP library as a transport implementation.
+## Transport implementations [transport-implementations]
 
-The Client auto-detects and uses an _adapter_ for _Faraday_ based on gems loaded in your code, preferring HTTP clients with support for persistent connections. Faraday 2 changed the way adapters are used (https://github.com/lostisland/faraday/blob/main/UPGRADING.md#adapters-have-moved[read more here]). If you're using Faraday 1.x, you can require the HTTP library. To use the https://github.com/toland/patron[_Patron_] HTTP, for example, require it:
+By default, the client uses the [Faraday](https://rubygems.org/gems/faraday) HTTP library as a transport implementation.
 
+The Client auto-detects and uses an *adapter* for *Faraday* based on gems loaded in your code, preferring HTTP clients with support for persistent connections. Faraday 2 changed the way adapters are used ([read more here](https://github.com/lostisland/faraday/blob/main/UPGRADING.md#adapters-have-moved)). If you’re using Faraday 1.x, you can require the HTTP library. To use the [*Patron*](https://github.com/toland/patron) HTTP, for example, require it:
 
-To use the https://github.com/toland/patron[Patron] HTTP, for example, require it:
+To use the [Patron](https://github.com/toland/patron) HTTP, for example, require it:
 
-[source,rb]
-----------------------------
+```rb
 require 'patron'
-----------------------------
+```
 
-If you're using Faraday 2.x, you need to add the corresponding adapter gem to your Gemfile and require it after you require `faraday`:
+If you’re using Faraday 2.x, you need to add the corresponding adapter gem to your Gemfile and require it after you require `faraday`:
 
-[source,rb]
-----------------------------
+```rb
 # Gemfile
 gem 'faraday-patron'
 
 # Code
 require 'faraday'
 require 'faraday/patron'
-----------------------------
-
+```
 
 Then, create a new client, and the Patron gem will be used as the "driver":
 
-[source,rb]
-----------------------------
+```rb
 client = Elastic::Transport::Client.new
 
 client.transport.connections.first.connection.builder.adapter
@@ -127,43 +121,39 @@ end
 # => Stiletoo : 24
 # => Stiletoo : 24
 # => ...
-----------------------------
+```
 
 To use a specific adapter for Faraday, pass it as the `adapter` argument:
 
-[source,rb]
-----------------------------
+```rb
 client = Elastic::Client.new(adapter: :net_http_persistent)
 
 client.transport.connections.first.connection.builder.handlers
 # => [Faraday::Adapter::NetHttpPersistent]
-----------------------------
+```
 
 If you see this error:
 
-[source,rb]
-----------------------------
+```rb
 Faraday::Error: :net_http_persistent is not registered on Faraday::Adapter
-----------------------------
-When you're using Faraday 2, you need to require the adapter before instantiating the client:
+```
 
-[source,rb]
-----------------------------
+When you’re using Faraday 2, you need to require the adapter before instantiating the client:
+
+```rb
 > client = Elasticsearch::Client.new(adapter: :net_http_persistent)
 Faraday::Error: :net_http_persistent is not registered on Faraday::Adapter
 > require 'faraday/net_http_persistent'
 => true
 > client = Elasticsearch::Client.new(adapter: :net_http_persistent)
 => #<Elasticsearch::Client:0x00007eff2e7728e0
-----------------------------
-
+```
 
-When using the Elasticsearch or Enterprise Search clients, you can pass the `adapter` parameter when initializing the clients.
+When using the Elasticsearch client, you can pass the `adapter` parameter when initializing the clients.
 
-To pass options to the https://github.com/lostisland/faraday/blob/master/lib/faraday/connection.rb[`Faraday::Connection`] constructor, use the `transport_options` key:
+To pass options to the [`Faraday::Connection`](https://github.com/lostisland/faraday/blob/master/lib/faraday/connection.rb) constructor, use the `transport_options` key:
 
-[source,rb]
-----------------------------
+```rb
 client = Elastic::Client.new(
   transport_options: {
     request: { open_timeout: 1 },
@@ -172,26 +162,24 @@ client = Elastic::Client.new(
     ssl:     { verify: false }
   }
 )
-----------------------------
+```
 
 To configure the Faraday instance directly, use a block:
 
-[source,rb]
-----------------------------
+```rb
 require 'patron'
 
 client = Elastic::Client.new(host: 'localhost', port: '9200') do |f|
   f.response :logger
   f.adapter  :patron
 end
-----------------------------
+```
 
 You can use any standard Faraday middleware and plugins in the configuration block.
 
-You can also initialize the transport class yourself, and pass it to the client constructor as the `transport` argument. The Elasticsearch and Enterprise Search clients accept `:transport` as parameter when initializing a client. So you can pass in a transport you've initialized with the following options:
+You can also initialize the transport class yourself, and pass it to the client constructor as the `transport` argument. The Elasticsearch client accepts `:transport` parameter when initializing a client. So you can pass in a transport you’ve initialized with the following options:
 
-[source,rb]
-----------------------------
+```rb
 require 'patron'
 
 transport_configuration = lambda do |f|
@@ -207,12 +195,11 @@ transport = Elastic::Transport::Transport::HTTP::Faraday.new(
 # Pass the transport to the client
 #
 client = Elastic::Client.new(transport: transport)
-----------------------------
+```
 
 Instead of passing the transport to the constructor, you can inject it at run time:
 
-[source,rb]
-----------------------------
+```rb
 # Set up the transport
 #
 faraday_configuration = lambda do |f|
@@ -240,12 +227,11 @@ client = Elastic::Client.new
 # Inject the transport to the client
 #
 client.transport = faraday_client
-----------------------------
+```
 
-You can also use a bundled https://rubygems.org/gems/curb[Curb] based transport implementation:
+You can also use a bundled [Curb](https://rubygems.org/gems/curb) based transport implementation:
 
-[source,rb]
-----------------------------
+```rb
 require 'curb'
 require 'elastic/transport/transport/http/curb'
 
@@ -253,32 +239,31 @@ client = Elastic::Client.new(transport_class: Elastic::Transport::Transport::HTT
 
 client.transport.connections.first.connection
 # => #<Curl::Easy http://localhost:9200/>
-----------------------------
+```
 
-It's possible to customize the Curb instance by passing a block to the constructor as well (in this case, as an inline block):
+It’s possible to customize the Curb instance by passing a block to the constructor as well (in this case, as an inline block):
 
-[source,rb]
-----------------------------
+```rb
 transport = Elastic::Transport::Transport::HTTP::Curb.new(
   hosts: [ { host: 'localhost', port: '9200' } ],
   & lambda { |c| c.verbose = true }
 )
 
 client = Elastic::Client.new(transport: transport)
-----------------------------
+```
 
 You can write your own transport implementation by including the {Elastic::Transport::Transport::Base} module, implementing the required contract, and passing it to the client as the `transport_class` parameter – or by injecting it directly.
 
-[discrete]
-[[transport-architecture]]
-==== Transport architecture
+
+## Transport architecture [transport-architecture]
 
 * `Elastic::Transport::Client` is composed of `Elastic::Transport::Transport`.
 * `Elastic::Transport::Transport` is composed of `Elastic::Transport::Transport::Connections`, and an instance of logger, tracer, serializer and sniffer.
-* Logger and tracer can be any object conforming to Ruby logging interface, for example, an instance of https://ruby-doc.org/stdlib-1.9.3/libdoc/logger/rdoc/Logger.html[`Logger`], https://rubygems.org/gems/log4r[log4r], https://github.com/TwP/logging/[logging], and so on.
-* The `Elastic::Transport::Transport::Serializer::Base` implementations handle converting data for {es} (for example, to JSON). You can implement your own serializer.
+* Logger and tracer can be any object conforming to Ruby logging interface, for example, an instance of [`Logger`](https://ruby-doc.org/stdlib-1.9.3/libdoc/logger/rdoc/Logger.md), [log4r](https://rubygems.org/gems/log4r), [logging](https://github.com/TwP/logging/), and so on.
+* The `Elastic::Transport::Transport::Serializer::Base` implementations handle converting data for {{es}} (for example, to JSON). You can implement your own serializer.
 * `Elastic::Transport::Transport::Sniffer` allows to discover nodes in the cluster and use them as connections.
 * `Elastic::Transport::Transport::Connections::Collection` is composed of `Elastic::Transport::Transport::Connections::Connection` instances and a selector instance.
 * `Elastic::Transport::Transport::Connections::Connection` contains the connection attributes such as hostname and port, as well as the concrete persistent "session" connected to a specific node.
 * The `Elastic::Transport::Transport::Connections::Selector::Base` implementations allow to choose connections from the pool, for example, in a round-robin or random fashion. You can implement your own selector strategy.
 * The `Elastic::Transport::Transport::Response` object wraps the Elasticsearch JSON response. It provides `body`, `status`, and `headers` methods but you can treat it as a hash and access the keys directly.
+
diff --git a/docs/release-notes/breaking-changes.md b/docs/release-notes/breaking-changes.md
new file mode 100644
index 0000000000..fba96055e4
--- /dev/null
+++ b/docs/release-notes/breaking-changes.md
@@ -0,0 +1,28 @@
+---
+navigation_title: "Elasticsearch Ruby Client"
+---
+
+# Elasticsearch Ruby Client breaking changes [elasticsearch-ruby-client-breaking-changes]
+Before you upgrade, carefully review the Elasticsearch Ruby Client breaking changes and take the necessary steps to mitigate any issues. 
+
+To learn how to upgrade, check out <uprade docs>.
+
+% ## Next version [elasticsearch-ruby-client-nextversion-breaking-changes]
+% **Release date:** Month day, year
+
+% ::::{dropdown} Title of breaking change 
+% Description of the breaking change.
+% For more information, check [PR #](PR link).
+% **Impact**<br> Impact of the breaking change.
+% **Action**<br> Steps for mitigating deprecation impact.
+% ::::
+
+% ## 9.0.0 [elasticsearch-ruby-client-900-breaking-changes]
+% **Release date:** March 25, 2025
+
+% ::::{dropdown} Title of breaking change 
+% Description of the breaking change.
+% For more information, check [PR #](PR link).
+% **Impact**<br> Impact of the breaking change.
+% **Action**<br> Steps for mitigating deprecation impact.
+% ::::
\ No newline at end of file
diff --git a/docs/release-notes/deprecations.md b/docs/release-notes/deprecations.md
new file mode 100644
index 0000000000..4c27fcb8bd
--- /dev/null
+++ b/docs/release-notes/deprecations.md
@@ -0,0 +1,28 @@
+---
+navigation_title: "Elasticsearch Ruby Client"
+---
+
+# Elasticsearch Ruby Client deprecations [elasticsearch-ruby-client-deprecations]
+Review the deprecated functionality for your Elasticsearch Ruby Client version. While deprecations have no immediate impact, we strongly encourage you update your implementation after you upgrade.
+
+To learn how to upgrade, check out <uprade docs>.
+
+% ## Next version [elasticsearch-ruby-client-versionnext-deprecations]
+% **Release date:** Month day, year
+
+% ::::{dropdown} Deprecation title
+% Description of the deprecation.
+% For more information, check [PR #](PR link).
+% **Impact**<br> Impact of deprecation. 
+% **Action**<br> Steps for mitigating deprecation impact.
+% ::::
+
+% ## 9.0.0 [elasticsearch-ruby-client-900-deprecations]
+% **Release date:** March 25, 2025
+
+% ::::{dropdown} Deprecation title
+% Description of the deprecation.
+% For more information, check [PR #](PR link).
+% **Impact**<br> Impact of deprecation. 
+% **Action**<br> Steps for mitigating deprecation impact.
+% ::::
\ No newline at end of file
diff --git a/docs/release-notes/index.md b/docs/release-notes/index.md
new file mode 100644
index 0000000000..c2d13a705e
--- /dev/null
+++ b/docs/release-notes/index.md
@@ -0,0 +1,27 @@
+---
+navigation_title: "Elasticsearch Ruby Client"
+---
+
+# Elasticsearch Ruby Client release notes [elasticsearch-ruby-client-release-notes]
+
+Review the changes, fixes, and more in each version of Elasticsearch Ruby Client. 
+
+To check for security updates, go to [Security announcements for the Elastic stack](https://discuss.elastic.co/c/announcements/security-announcements/31).
+
+% Release notes include only features, enhancements, and fixes. Add breaking changes, deprecations, and known issues to the applicable release notes sections. 
+
+% ## version.next [elasticsearch-ruby-client-next-release-notes]
+% **Release date:** Month day, year
+
+% ### Features and enhancements [elasticsearch-ruby-client-next-features-enhancements]
+% * 
+
+% ### Fixes [elasticsearch-ruby-client-next-fixes]
+% * 
+
+## 9.0.0 [elasticsearch-ruby-client-900-release-notes]
+**Release date:** March 25, 2025
+
+### Features and enhancements [elasticsearch-ruby-client-900-features-enhancements]
+
+### Fixes [elasticsearch-ruby-client-900-fixes]
\ No newline at end of file
diff --git a/docs/release-notes/known-issues.md b/docs/release-notes/known-issues.md
new file mode 100644
index 0000000000..91ff1765df
--- /dev/null
+++ b/docs/release-notes/known-issues.md
@@ -0,0 +1,20 @@
+---
+navigation_title: "Elasticsearch Ruby Client"
+
+---
+
+# Elasticsearch Ruby Client known issues [elasticsearch-ruby-client-known-issues]
+
+% Use the following template to add entries to this page.
+
+% :::{dropdown} Title of known issue
+% **Details** 
+% On [Month/Day/Year], a known issue was discovered that [description of known issue].
+
+% **Workaround** 
+% Workaround description.
+
+% **Resolved**
+% On [Month/Day/Year], this issue was resolved.
+
+:::
\ No newline at end of file
diff --git a/docs/release-notes/toc.yml b/docs/release-notes/toc.yml
new file mode 100644
index 0000000000..a410067947
--- /dev/null
+++ b/docs/release-notes/toc.yml
@@ -0,0 +1,5 @@
+toc:
+  - file: index.md
+  - file: known-issues.md
+  - file: breaking-changes.md
+  - file: deprecations.md
\ No newline at end of file
diff --git a/docs/release_notes/70.asciidoc b/docs/release_notes/70.asciidoc
deleted file mode 100644
index d620366ed9..0000000000
--- a/docs/release_notes/70.asciidoc
+++ /dev/null
@@ -1,195 +0,0 @@
-[[release_notes_70]]
-=== 7.0 Release notes
-
-This version contains the following changes:
-
-* Added `elastic_ruby_console` executable. It opens a console with the elasticsearch gems you have installed required.
-* Added macro benchmarking framework, available when developing. Use `rake -T` to view all available benchmarking tasks. 
-
-
-[discrete]
-==== Client
-
-* Fixed failing integration test
-* Updated the Manticore development dependency
-* Fixed a failing Manticore unit test
-* Removed "turn" and switched the tests to Minitest
-* Fixed integration tests for Patron
-* Allow passing request headers in `perform_request`
-* Added integration test for passing request headers in `perform_request`
-* Added, that request headers are printed in trace output, if set
-* Fix typos in elasticsearch-transport/README.md
-* Assert that connection count is at least previous count when reloaded
-* Adjust test for change in default number of shards on ES 7
-* Abstract logging functionality into a Loggable Module (#556)
-* Convert client integration tests to rspec
-* Add flexible configuration in spec helper
-* Use helper methods in spec_helper
-* Remove minitest client integration tests in favor of rspec test
-* Convert tests to rspec and refactor client
-* minor changes to the client specs
-* Use pry-nav in development for JRuby
-* Keep arguments variable name for now
-* Skip round-robin test for now
-* Mark test as pending until there is a better way to detect rotating nodes
-* Remove client unit test in favor of rspec test
-* Comment-out round-robin test as it occasionally passes and pending is ineffective
-* Document the default host and port constant
-* Add documentation to spec_helper methods
-* Redacted password if host info is printed in error message
-* Adds tests for not including password in logged error message
-* The redacted string change will be in 6.1.1
-* Add more tests for different ways to specify client host argument
-* Do not duplicate connections in connection pool after rebuild (#591)
-* Ensure that the spec rake task is run as part of integration tests
-* Use constant to define Elasticsearch hosts and avoid yellow status when number of nodes is 1
-* Update handling of publish_address in _nodes/http response
-* Add another test for hostname/ipv6:port format
-
-
-[discrete]
-==== API
-
-* Added the `wait_for_active_shards` parameter to the "Indices Open" API
-* Added the "Indices Split" API
-* Added the `wait_for_no_initializing_shards` argument to the "Cluster Health" API
-* Added the "Cluster Remote Info" API
-* Remove the dependency on "turn"
-* Clear cluster transient settings in test setups
-* Use `YAML.load_documents` in the REST tests runner
-* Removed pinning dependency for Minitest
-* Replaced the testing framework from Test::Unit to Minites and improved test output
-* Added, that trace logs are printed when the `TRACE` environment variable is set
-* Removed the "turn" dependency from generated test_helper.rb
-* Update the "Delete By Query" API to support :slices
-* Speed up `Elasticsearch::API::Utils.__listify`
-* Speed up `Elasticsearch::API::Utils.__pathify`
-* Use "String#strip" and "String.empty?" in `Utils.__pathify`
-* Updated the inline documentation for using scripts in the "Update" API
-* Updated the "Scroll" API inline example with passing the scroll ID in the body
-* Marked the `percolate` method as deprecated and added an example for current percolator
-* Fixed, that `Utils.__report_unsupported_parameters` and `Utils.__report_unsupported_method` use `Kernel.warn` so they can be suppressed
-* Fixed the "greedy" regex in the `Utils.__rescue_from_not_found` method
-* Fixed the incorrect `create` method
-* Allow passing headers in `perform_request`
-* Set application/x-ndjson content type on Bulk and Msearch requests
-* Update the Reindex API to support :slices
-* Fixed and improved the YAML tests runner
-* Added the `include_type_name` parameter to APIs
-* Fixed the helper for unit tests
-* Removed the requirement for passing the `type` parameter to APIs
-* Removed dead code from the YAML tests runner
-* Fixed the `api:code:generate` Thor task
-* Add copy_settings as valid param to split API
-* Port api/actions tests to rspec (#543)
-* Update tests to not require type
-* Account for escape_utils not being available for JRuby
-* Add nodes/reload_secure_settings endpoint support (#546)
-* Add new params for search and msearch API
-* Retrieve stashed variable if referenced in test
-* Convert cat API tests to rspec
-* Convert cluster API tests to rspec
-* Convert indices tests to rspec
-* Fix documentation of #indices.analyze
-* Avoid instantiating an array of valid params for each request, each time it is called (#550)
-* Add headers to custom client documentation (#527)
-* Fix typos in README
-* Minor update to scroll documentation example
-* Convert snapshot, ingest, tasks, nodes api tests to rspec
-* Update source_includes and source_excludes params names for mget
-* Update source_includes and source_excludes params names for get, search, bulk, explain
-* Update source_includes and source_excludes params names for get_source
-* Mark _search endpoint as deprecated
-* Link to 6.0 documentation explicitly for _suggest deprecation
-* Update documentation for msearch
-* Update documentation for scroll_id to be in body of scroll endpoint
-* Remove reference to deprecated format option for _analyze endpoint
-* Correct endpoints used for get and put search template
-* Fix minor typo
-* Note that a non-empty body argument is required for the bulk api
-* Add note about empty body in yard documentation
-* Support if_primary_term param on index API
-* Delete test2 template in between tests in case a test is not cleanup up properly
-* Support ignore_throttled option on search API
-* Updates for types removal changes
-* Add missing update param
-* Add missing params to methods
-* Support if_primary_term param for delete
-* Delete an index and index template not cleaned up after in rest api tests
-* Update supported params for cat API endpoints
-* Update supported params for cluster API endpoints
-* Update supported params for indices API endpoints
-* Update supported params for ingest API endpoints
-* Update supported params for nodes API endpoints
-* Update supported params for snapshot API endpoints
-* Update missed node API endpoints
-* Update missed tasks API endpoints
-* Update top-level api endpoints
-* Adjust specs and code after test failures
-* Fix accidental overwrite of index code
-* Add missing param in cat/thread_pool
-* The type argument is not required in the index method
-* Delete 'nomatch' template to account for lack of test cleanup
-* Ensure that the :index param is supported for cat.segments
-* Ensure that the :name param is passed to the templates API
-
-[discrete]
-==== DSL
-
-* Add inner_hits option support for has_parent query
-* Add inner_hits option support for has_child query
-* Add inner_hits option support for has_parent filter
-* Add inner_hits option support for has_child filter
-* adds query support for nested queries in filter context (#531)
-* Convert aggregations/pipeline tests to rspec (#564)
-* Convert aggregations tests to rspec (#566)
-* Convert filters tests to rspec (#567)
-* Fix bug in applying no_match_filter to indices filter
-* Update test for current elasticsearch version
-* Fix integration tests for join field syntax
-* Update agg scripted metric test for deprecation in ES issue #29328
-* Fix script in update for #29328
-* minor: fix spacing
-* Convert queries tests to rspec (#569)
-* Add inner_hits test after cherry-picking rspec conversion
-* Remove tests already converted to rspec
-* spec directory structure should mirror code directory structure
-* Support query_string type option
-* Ensure that filters are registered when called on bool queries (#609)
-* Don't specify a type when creating mappings in tests
-
-
-[discrete]
-==== X-Pack
-
-* Embedded the source code for the `elasticsearch-xpack` Rubygem
-* Fixed the `setup` for YAML integration tests
-* Added missing X-Pack APIs
-* Improved the YAML integration test runner
-* Updated the Rakefile for running integration tests
-* Added, that password for Elasticsearch is generated
-* Fixed the Watcher example
-* Updated the README
-* Added gitignore for the `elasticsearch-xpack` Rubygem
-* Add ruby-prof as a development dependency
-* Handle multiple roles passed to get_role_mapping
-* Minor updates to xpack api methods (#586)
-* Support freeze and unfreeze APIs
-* Rewrite xpack rest api yaml test handler (#585)
-* Updates to take into account SSL settings
-* Fix mistake in testing version range so test can be skipped
-* Support set_upgrade_mode machine learning API
-* Support typed_keys and rest_total_hits_as_int params for rollup_search
-* Improve string output for xpack rest api tests
-* Fix logic in version checking
-* Support if_seq_no and if_primary_term in put_watch
-* Don't test execute_watch/60_http_input because of possible Docker issue
-* Support api key methods
-* Fix minor typo in test description
-* Fix issue with replacing argument value with an Integer value
-* Support transform_and_set in yaml tests
-* Skip two more tests
-* Run security tests against elasticsearch 7.0.0-rc2
-* Account for error when forecast_id is not provided and legacy path is used
-* Blacklist specific tests, not the whole file
-* Fix version check for skipping test
\ No newline at end of file
diff --git a/docs/release_notes/710.asciidoc b/docs/release_notes/710.asciidoc
deleted file mode 100644
index 9751bf2026..0000000000
--- a/docs/release_notes/710.asciidoc
+++ /dev/null
@@ -1,62 +0,0 @@
-[[release_notes_710]]
-=== 7.10 Release notes
-
-[discrete]
-[[release_notes_7101]]
-=== 7.10.1 Release notes
-[discrete]
-==== Client
-
-- Updates for connecting with Cloud.
-
-[discrete]
-[[release_notes_7100]]
-=== 7.10 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version `7.10.0`.
-- Fixes a bug when building the complete endpoint URL could end with duplicate slashes `//`.
-- Fixes a bug when building the complete endpoint URL with cloud id could end with duplicate ports https://github.com/elastic/elasticsearch-ruby/issues/1081[#1081].
-
-[discrete]
-==== API
-
-- Fix in RubyDoc comments, some parameters were being duplicated.
-- Deprecation notice: Synced flush (`indices.flush_synced`) is deprecated and will be removed in 8.0. Use flush instead.
-
-[discrete]
-===== New API Endpoints
-
-- `snapshot.clone`
-
-
-[discrete]
-===== API Changes
-
-- `bulk`, `index`, `update`: new parameter `require_alias` (boolean):  When true, requires destination to be an alias (default: false) for `index` and `update`. For `bulk` it sets `require_alias` for all incoming documents. Defaults to unset (false).
-
-
-[discrete]
-==== X-Pack
-
-Deprecation notice: `searchable_snapshots.repository_stats` is deprecated and is replaced by the Repositories Metering API.
-
-[discrete]
-===== New API Endpoints
-
-- `close_point_in_time`
-- `open_point_in_time`
-- `security.clear_api_key_cache`
-- `security.grant_api_key`
-
-[discrete]
-===== API Changes
-
-- `cat.ml_datafeeds`, `cat.ml_jobs`, `machine_learning.close_job`, `machine_learning.get_datafeed_stats`, `machine_learning.get_datafeeds`, `machine_learning.get_job_stats`, `machine_learning.get_jobs`, `machine_learning.get_overall_buckets`, `machine_learning.stop_datafeed`: new parameter `allow_no_match` (boolean): Whether to ignore if a wildcard expression matches no datafeeds (this includes `_all` string or when no datafeeds have been specified).
--`machine_learning.get_data_frame_analytics`: new parameter `verbose` (boolean), whether the stats response should be verbose.
-- `machine_learning.get_trained_models`: new parameter `include` (string), a comma-separate list of fields to optionally include. Valid options are 'definition' and 'total_feature_importance'. Default is none.
-- `machine_learning.stop_datafeed`: endpoint now accepts a `body`: the URL params optionally sent in the body.
-- `security.get_role`, `security/get_role_mapping`: The name parameter is now a comma-separated list of role-mapping names.
-- `machine_learning.delete_trained_model`, `machine_learning.get_trained_models`, `machine_learning.get_trained_models_stats`, `machine_learning.put_trained_model`: Internal change, url changed from `_ml/inference` to `_ml/trained_models`.
diff --git a/docs/release_notes/711.asciidoc b/docs/release_notes/711.asciidoc
deleted file mode 100644
index 9df6f1ba1f..0000000000
--- a/docs/release_notes/711.asciidoc
+++ /dev/null
@@ -1,49 +0,0 @@
-[[release_notes_711]]
-=== 7.11 Release notes
-
-[discrete]
-[[release_notes_7112]]
-=== 7.11.2 Release notes
-
-[discrete]
-==== Client
-
-* Bug fix in meta header, fixes fail when http adapter library hasn't been loaded yet: https://github.com/elastic/elasticsearch-ruby/issues/1224[Issue].
-
-[discrete]
-[[release_notes_7111]]
-=== 7.11.1 Release notes
-
-[discrete]
-==== Client
-
-* Bug fix in meta header, adds support for unknown Faraday adapters. https://github.com/elastic/elasticsearch-ruby/pull/1204[Pull Request].
-
-[discrete]
-[[release_notes_7110]]
-=== 7.11.0 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version `7.11.0`.
-- Fixes a bug with headers in our default Faraday class. https://github.com/elastic/elasticsearch-ruby/commit/9c4afc452467cc6344359b54b98bbe5af1469219[Commit].
-- Adds the `X-Elastic-Client-Meta` HTTP header which is used by Elastic Cloud and can be disabled with the `enable_meta_header` parameter set to `false`.
-
-
-[discrete]
-==== API
-
-- `cat.tasks` - Parameter `node_id` changes name to `nodes`, a comma-separated list of node IDS or names. Parameter `parent_task` changes name to `parent_task_id`.
-- APIs that are no longer experimental: `cluster.delete_component_template`, `cluster.exists_component_template`, `cluster.get_component_template`, `cluster.put_component_template`, `indices.delete_index_template`, `indices.exists_index_template`, `indices.get_index_template`, `indices.put_index_template`, `indices.simulate_index_template`, `indices.simulate_template`.
-- Deprecation notice: The _upgrade API is no longer useful and will be removed. Instead, see `_reindex API`. Deprecated since version 8.0.0. Endpoints: `indices.get_upgrade`, `indices.upgrade`
-
-[discrete]
-==== X-Pack
-
-- New endpoints:`async_search.status`, `autoscaling.get_autoscaling_capacity` (experimental), `indices.migrate_to_data_stream`, `indices.promote_data_stream`, `machine_learning.upgrade_job_snapshot`, `rollup.rollup`, `watcher.query_watches`.
-- APIs that are no longer experimental: `eql.delete`, `eql.get`, `eql.search`,
-- APIs promoted from experimental to beta: `machine_learning.delete_data_frame_analytics`, `ml.delete_trained_model`, `machine_learning.evaluate_data_frame`, `machine_learning.explain_data_frame_analytics`, `machine_learning.get_data_frame_analytics`, `machine_learning.get_datafeed_stats`, `machine_learning.get_trained_models`, `machine_learning.get_trained_models_stats`, `machine_learning.put_data_frame_analytics`, `machine_learning.put_trained_model`, `machine_learning.start_data_frame_analytics`, `machine_learning.stop_data_frame_analytics`, `machine_learning.update_data_frame_analytics`
-- `indices.delete_data_stream`, `indices.get_data_stream` add parameter `expand_wildcards`, wether wildcard expressions should get expanded to open or closed indices (default: open). Options: open, closed, hidden, none, all.
-- `machine_learning.get_data_frame_analytics`, `machine_learning.get_datafeeds`, `machine_learning.get_jobs`, `machine_learning.get_trained_models`, `transform.get_transform` add parameter `exclude_generated` - omits fields that are illegal to set on PUT.
-- `data_frame_transform_deprecated.get_transform` (_data_frame/transforms/ is deprecated, use _transform/ in the future) adds parameter `exclude_generated` - omits generated files.
diff --git a/docs/release_notes/712.asciidoc b/docs/release_notes/712.asciidoc
deleted file mode 100644
index c23f8c560c..0000000000
--- a/docs/release_notes/712.asciidoc
+++ /dev/null
@@ -1,28 +0,0 @@
-[[release_notes_712]]
-=== 7.12 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version 7.12.0
-- Ruby 3 is now tested, it was added to the entire test suite.
-- New official documentation pages for configuration: https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/basic-config.html[Basic Configuration] and https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/advanced-config.html[Advanced Configuration].
-- Integration tests runner refactored to keep skipped tests in a yaml file.
-
-[discrete]
-==== API
-
-- New API namespace: `features` and endpoints `features.get_features` and `snapshot.get_features`.
-- `cat.plugins` adds parameter `include_bootstrap`: Include bootstrap plugins in the response.
-- Update in `indices.close` parameter `wait_for_active_shards`: Sets the number of active shards to wait for before the operation returns. Set to `index-setting` to wait according to the index setting `index.write.wait_for_active_shards`, or `all` to wait for all shards, or an integer. Defaults to `0`.
-- `actions.search` adds parameter `min_compatible_shard_node`: The minimum compatible version that all shards involved in search should have for this request to be successful.
-
-[discrete]
-==== X-Pack
-
-- New API namespace: `text_structure` and endpoints `text_structure.find_structure`.
-- New API namespace: `logstash` and endpoints `logstash.delete_pipeline`, `logstash.get_pipeline`, `logstash.put_pipeline`.
-- New API: `eql.get_status`.
-- APIs migrated from experimental to stable: `autoscaling.delete_autoscaling_policy`, `autoscaling.get_autoscaling_capacity`, `autoscaling.get_autoscaling_policy`, `autoscaling.put_autoscaling_policy`.
-- `searchable_snapshots.mount` adds parameter `storage`: Selects the kind of local storage used to accelerate searches. Experimental, and defaults to `full_copy`.
-- `searchable_snapshots.stats` adds parameter `level`: Return stats aggregated at cluster, index or shard level (options: cluster, indices, shards).
diff --git a/docs/release_notes/713.asciidoc b/docs/release_notes/713.asciidoc
deleted file mode 100644
index 47594bdd12..0000000000
--- a/docs/release_notes/713.asciidoc
+++ /dev/null
@@ -1,53 +0,0 @@
-[[release_notes_713]]
-=== 7.13 Release notes
-
-[discrete]
-[[release_notes_7133]]
-=== 7.13.3 Release notes
-
-- API Support for Elasticsearch version 7.13.3
-
-[discrete]
-[[release_notes_7132]]
-=== 7.13.2 Release notes
-
-- Mute release, yanked from RubyGems.
-
-[discrete]
-[[release_notes_7131]]
-=== 7.13.1 Release notes
-
-[discrete]
-==== Client
-- Fixes thread safety issue in `get_connection` - https://github.com/elastic/elasticsearch-ruby/pull/1325[Pull Request].
-
-[discrete]
-[[release_notes_7130]]
-=== 7.13.0 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version 7.13.0
-- Adds support for compatibility header for Elasticsearch. If the environment variable 'ELASTIC_CLIENT_APIVERSIONING' is set to `true` or `1`, the client will send the headers `Accept` and `Content-Type` with the following value: `application/vnd.elasticsearch+json;compatible-with=7`.
-- Better detection of Elasticsearch and Enterprise Search clients in the meta header used by cloud.
-
-[discrete]
-==== API
-
-- The REST API tests now use an artifact downloaded from the Elastic servers instead of depending of cloning `elasticsearch` locally. Check the README for more information.
-- New parameter `include_unloaded_segments` in `cat.nodes`, `nodes.stats`: If set to true segment stats will include stats for segments that are not currently loaded into memory
-- New parameter `summary` in `ingest.get_pipeline`: Return pipelines without their definitions (default: false)
-- New parameter `index_details` in `snapshot.get`: Whether to include details of each index in the snapshot, if those details are available. Defaults to false.
-- New endpoint `features.reset_features`, `ingest/geo_ip_stats`
-- New experimental endpoints: `shutdown.delete_node`, `shutdown.get_node`, `shutdown.put_node`.
-
-[discrete]
-==== X-Pack
-
-- Refactored test tasks, made it easier to run the tests by default.
-- New experimental endpoints: `fleet.global_checkpoints`, `searchable_snapshots.cache_stats`.
-- New beta endpoints: `security.clear_cached_service_tokens`, `security.create_service_token`, `security.delete_service_token`, `security.get_service_accounts`, `security.get_service_credentials`
-- New endpoints: `machine_learning.delete_trained_model_alias`, `machine_learning.preview_data_frame_analytics`, `machine_learning.put_trained_model_alias`.
-- APIs migrated from experimental or beta to stable: `machine_learning.delete_data_frame_analytics`, `machine_learning.delete_trained_model`, `machine_learning.estimate_model_memory`, `machine_learning.explain_data_frame_analytics`, `machine_learning.get_data_frame_analytics`, `machine_learning.get_data_frame_analytics_stats`, `machine_learning.get_trained_models`, `machine_learning.get_trained_models_stats`, `machine_learning.put_data_frame_analytics`, `machine_learning.put_trained_model`, `machine_learning.start_data_frame_analytics`, `machine_learning.stop_data_frame_analytics`, `machine_learning.update_data_frame_analytics`
-- New parameter `body` in `machine_learning.preview_datafeed`: The datafeed config and job config with which to execute the preview.
diff --git a/docs/release_notes/714.asciidoc b/docs/release_notes/714.asciidoc
deleted file mode 100644
index 5cdf6092cd..0000000000
--- a/docs/release_notes/714.asciidoc
+++ /dev/null
@@ -1,93 +0,0 @@
-[[release_notes_714]]
-=== 7.14 Release notes
-
-[discrete]
-[[release_notes_7141]]
-=== 7.14.1 Release notes
-
-[discrete]
-==== Client
-
- - Fixes for Manticore Implementation: Addresses custom headers on initialization (https://github.com/elastic/elasticsearch-ruby/commit/3732dd4f6de75365460fa99c1cd89668b107ef1c[3732dd4]) and fixes tracing (https://github.com/elastic/elasticsearch-ruby/commit/3c48ebd9a783988d1f71bfb9940459832ccd63e4[3c48ebd]). Related to https://github.com/elastic/elasticsearch-ruby/issues/1426[#1426] and https://github.com/elastic/elasticsearch-ruby/issues/1428[#1428].
-
-[discrete]
-[[release_notes_7140]]
-=== 7.14.0 Release notes
-
-[discrete]
-==== Client
-
-Added check that client is connected to an Elasticsearch cluster. If the client isn't connected to a supported Elasticsearch cluster the `UnsupportedProductError` exception will be raised.
-
-This release changes the way in which the transport layer and the client interact. Previously, when using `elasticsearch-transport`, `Elasticsearch::Transport::Client` had a convenient wrapper, so it could be used as `Elasticsearch::Client`. Now, we are decoupling the transport layer from the Elasticsearch client. If you're using the `elasticsearch` gem, not much will change. It will instantiate a new `Elasticsearch::Transport::Client` when you instantiate `Elasticsearch::Client` and the endpoints from `elasticsearch-api` will be available.
-
-`Elasticsearch::Client` has an `attr_accessor` for the transport instance:
-
-[source,ruby]
-------------------------------------
-> client = Elasticsearch::Client.new
-> client.transport.class
-=> Elasticsearch::Transport::Client
-> client.transport.transport.class
-=> Elasticsearch::Transport::Transport::HTTP::Faraday
-------------------------------------
-
-The interaction with `elasticsearch-api` remains unchanged. You can use the API endpoints just like before:
-
-[source,ruby]
-------------------------------------
-> client.info
-=> {"name"=>"instance",
- "cluster_name"=>"elasticsearch",
- "cluster_uuid"=>"id",
- "version"=>
-  {"number"=>"7.14.0",
-  ...
-},
- "tagline"=>"You Know, for Search"}
-------------------------------------
-
-Or perform request directly from the client which will return an `Elasticsearch::Transport::Response` object:
-
-[source,ruby]
-------------------------------------
-> client.perform_request('GET', '/')
-# This is the same as doing client.transport.perform_request('GET', '/')
-=> #<Elasticsearch::Transport::Transport::Response:0x000055c80bf94bc8
- @body=
-  {"name"=>"instance",
-   "cluster_name"=>"elasticsearch",
-   "cluster_uuid"=>"id",
-   "version"=>
-    {"number"=>"7.14.0-SNAPSHOT",
-    ...
-    },
-   "tagline"=>"You Know, for Search"},
- @headers=
-  {"content-type"=>"application/json; charset=UTF-8",
-   "content-length"=>"571",
-   ...
-   },
- @status=200>
-------------------------------------
-
-If you have any problems, please report them in https://github.com/elastic/elasticsearch-ruby/issues/1344[this issue].
-
-[discrete]
-==== API
-
-Code is now generated from Elastic artifacts instead of checked out code of Elasticsearch. See https://github.com/elastic/elasticsearch-ruby/blob/7.14/elasticsearch-api/utils/README.md#generate[the Generator README] for more info.
-
-- Endpoints `msearch`, `msearch_template` and `search_template` remove `query_and_fetch` and `dfs_query_and_fetch` options from the `search_type` parameter.
-- New parameter `include_repository` in `snapshot.get`: (boolean) Whether to include the repository name in the snapshot info. Defaults to true.
-
-[discrete]
-==== X-Pack
-
-X-Pack is being deprecated. The first time using `xpack` on the client, a warning will be triggered. Please check https://github.com/elastic/elasticsearch-ruby/issues/1274[this issue] for more information.
-
-
-- New endpoints: `index_lifecycle_management.migrate_to_data_tiers`, `machine_learning.reset_job`, `security.saml_authenticate`, `security.saml_complete_logout`, `security.saml_invalidate`, `security.saml_logout`, `security.saml_prepare_authentication`, `security.saml_service_provider_metadata`, `sql.delete_async`, `sql.get_async`, `sql.get_async_status`, `terms_enum`.
-- New experimental endpoints: `machine_learning.infer_trained_model_deployment`, `machine_learning.start_trained_model_deployment`, `machine_learning.stop_trained_model_deployment`.
-- Deprecation: `indices.freeze` and `indices.unfreeze`: Frozen indices are deprecated because they provide no benefit given improvements in heap memory utilization. They will be removed in a future release.
-
diff --git a/docs/release_notes/715.asciidoc b/docs/release_notes/715.asciidoc
deleted file mode 100644
index 5962394afe..0000000000
--- a/docs/release_notes/715.asciidoc
+++ /dev/null
@@ -1,20 +0,0 @@
-[[release_notes_715]]
-=== 7.15 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch v7.15.0 APIs.
-- We've tested and added documentation on best practices for leveraging the client in a Function-as-a-Service (FaaS) environment to the https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/connecting.html#client-faas[official docs].
-
-[discrete]
-==== API
-- New experimental endpoints: `indices.disk_usage`. `indices.field_usage_stats`, `nodes.clear_repositories_metering_archive`, `get_repositories_metering_info`, https://www.elastic.co/guide/en/elasticsearch/reference/7.15/search-vector-tile-api.html[`search_mvt`]
-- The `index` parameter is now required for `open_point_in_time`.
-- The `index_metric` parameter in `nodes.stats` adds the `shards` option.
-
-[discrete]
-==== X-Pack
-
-- New parameters for `ml.put_job`: `ignore_unavailable`, `allow_no_indices`, `ignore_throttled`, `expand_wildcards`.
-- New endpoint: https://www.elastic.co/guide/en/elasticsearch/reference/7.15/security-api-query-api-key.html[`security.query_api_keys`].
diff --git a/docs/release_notes/716.asciidoc b/docs/release_notes/716.asciidoc
deleted file mode 100644
index 11c1b68ad7..0000000000
--- a/docs/release_notes/716.asciidoc
+++ /dev/null
@@ -1,96 +0,0 @@
-[[release_notes_716]]
-=== 7.16 Release notes
-
-[discrete]
-[[release_notes_7163]]
-=== 7.16.3 Release notes
-
-==== API
-
-Bugfix for https://github.com/elastic/elasticsearch-ruby/issues/1475[#1475], an issue where if you indexed a document with an id such as `an id`, it would get escaped to `an+id` instead of `an%20id` when using `index` or `create`. This would result in the document id being `an+id` instead of the intended value `an id`.
-
-[discrete]
-[[release_notes_7162]]
-=== 7.16.2 Release notes
-
-No release.
-
-[discrete]
-[[release_notes_7161]]
-=== 7.16.1 Release notes
-
-Patch release corresponding with Elastic Stack version 7.16.1 that addresses the Apache Log4j2 vulnerability, https://discuss.elastic.co/t/apache-log4j2-remote-code-execution-rce-vulnerability-cve-2021-44228-esa-2021-31/291476[more information].
-
-==== Client
-
-The only changes in the client since 7.16.0 are a few minor updates for the https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/current/connecting.html#client-comp[Compatibility mode with 8.0]. We added the compatibility header in `7.13.0`,  but now we have integration tests and compatibility tests for version `7.x` of the client with Elasticsearch `8.0`.
-
-[discrete]
-[[release_notes_7160]]
-=== 7.16.0 Release notes
-
-[discrete]
-==== Client
-
-- Adds the `delay_on_retry` parameter, a value in milliseconds to wait between each failed connection, thanks https://github.com/DinoPullerUqido[DinoPullerUqido]! https://github.com/elastic/elasticsearch-ruby/pull/1521[Pull Request] and https://github.com/elastic/elasticsearch-ruby/pull/1523[backport].
-- Adds *CA fingerprinting*. You can configure the client to only trust certificates that are signed by a specific CA certificate (CA certificate pinning) by providing a `ca_fingerprint` option. This will verify that the fingerprint of the CA certificate that has signed the certificate of the server matches the supplied value. The verification will be run once per connection. Code example:
-
-[source,ruby]
-------------------------------------
-ca_fingerprint = '64F2593F...'
-client = Elasticsearch::Client.new(
-  host: 'https://elastic:changeme@localhost:9200',
-  transport_options: { ssl: { verify: false } },
-  ca_fingerprint: ca_fingerprint
-)
-------------------------------------
-
-- Fixes compression. When `compression` is set to `true`, the client will now gzip the request body properly and use the appropiate headers. Thanks https://github.com/johnnyshields[johnnyshields]! https://github.com/elastic/elasticsearch-ruby/pull/1478[Pull Request] and https://github.com/elastic/elasticsearch-ruby/pull/1526[backport].
-- Warnings emitted by Elasticsearch are now logged via `log_warn` through the Loggable interface in the client, instead of using `Kernel.warn`. https://github.com/elastic/elasticsearch-ruby/pull/1517[Pull Request].
-
-[discrete]
-==== API
-
-- Cleaned up some deprecated code.
-- `count` - The API is documented as using `GET`, but it supports both GET and POST on the Elasticsearch side. So it was updated to only use `POST` when there's a body present, or else use `GET`. Elasticsearch would still accept a body with `GET`, but to be more semantically correct in the clients we use `POST` when there's a body.
-- `delete_index_template` was updated to support the `ignore_404` parameter to ignore 404 errors when attempting to delete a non-existing template.
-- `ingest.put_pipeline` adds new parameter `if_version`: Required version for optimistic concurrency control for pipeline updates.
-- `ml.put_trained_model`: adds new parameter `defer_definition_decompression`: If set to `true` and a `compressed_definition` is provided, the request defers definition decompression and skips relevant validations.
-- `nodes.hot_threads` adds new parameter `sort`: The sort order for 'cpu' type (default: total) (options: cpu, total).
-- `open_point_in_time`: `keep_alive` is now a required parameter.
-- `search_mvt`: adds new parameter `track_total_hits`: Indicate if the number of documents that match the query should be tracked. A number can also be specified, to accurately track the total hit count up to the number.
-- `transform.preview_transform`: adds new parameter `transform_id`. Body is now optional and the API will use `GET` or `POST` depending on the presence of a body.
-
-*APIs promoted from experimental to stable since last version:*
-
-- `fleet.global_checkpoints`
-- `get_script_context`
-- `get_script_language`
-- `indices.resolve_index`
-- `monitoring.bulk`
-- `rank_eval`
-- `searchable_snapshots.mount`
-- `searchable_snapshots.stats`
-- `security.clear_cached_service_tokens`
-- `security.create_service_token`
-- `security.delete_service_token`
-- `security.get_service_accounts`
-- `security.get_service_credentials`
-- `shutdown.delete_node`
-- `shutdown.get_node`
-- `shutdown.put_node`
-- `terms_enum`
-
-*New APIs*
-
-- `fleet.mseach`
-- `fleet.search`
-- `indices.modify_data_stream`
-- `ml.infer_trained_model_deployment`
-- `ml.start_trained_model_deployment`
-- `ml.stop_trained_model_deployment`
-- `migration.get_feature_upgrade_status`
-- `migration.post_feature_upgrade_status`
-- `security.enroll_kibana`
-- `security.enroll_node`
-- `transform.updgrade_transforms`
diff --git a/docs/release_notes/717.asciidoc b/docs/release_notes/717.asciidoc
deleted file mode 100644
index 4413dd225a..0000000000
--- a/docs/release_notes/717.asciidoc
+++ /dev/null
@@ -1,29 +0,0 @@
-[[release_notes_717]]
-=== 7.17 Release notes
-
-[discrete]
-[[release_notes_7177]]
-=== 7.17.7 Release notes
-
-- Compatibility with Elasticsearch v7.17.7 APIs.
-- Tested versions of Ruby for 7.17.7: Ruby (MRI) 2.6, 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-[[release_notes_7172]]
-=== 7.17.2, 7.17.3, 7.17.4, 7.17.5, 7.17.6 Release notes
-
-No release.
-
-[discrete]
-[[release_notes_7171]]
-=== 7.17.1 Release notes
-
-- Improves handling of YAML parsing, uses `safe_load` instead of `load` when doing the product verification (should only affect Ruby < 3.0).
-- Updates headers setup when using the Manticore adapter. This fixes an issue where the user-agent header was being foverridden even when it was being set on initialization via the transport options. https://github.com/elastic/elasticsearch-ruby/pull/1685[Pull Request], https://github.com/elastic/elasticsearch-ruby/issues/1684[issue].
-
-[discrete]
-[[release_notes_7170]]
-=== 7.17.0 Release notes
-
-- Drops Ruby 2.5 from the test matrix. Support for Ruby 2.5 was dropped March 2021.
-- Updates the product verification when the response is a `413` error.
diff --git a/docs/release_notes/75.asciidoc b/docs/release_notes/75.asciidoc
deleted file mode 100644
index ac874d0cfb..0000000000
--- a/docs/release_notes/75.asciidoc
+++ /dev/null
@@ -1,59 +0,0 @@
-[[release_notes_75]]
-=== 7.5 Release notes
-
-- Support for Elasticsearch 7.5.
-- Update API spec generator: The code for Elasticsearch OSS and X-Pack APIs is being generated from the rest api spec.
-- Specs have been updated to address new/deprecated parameters.
-- Ruby versions tested: 2.3.8, 2.4.9, 2.5.7, 2.6.5 and 2.7.0 (new).
-
-
-[discrete]
-==== API
-
-Endpoints that changed:
-
-- `_bulk`: body is now required as an argument.
-- `cat`: `local` and `master_timeout` parameters are gone.
-  - `health`: New parameter `health`.
-  - `indices`: Adds `time` and `include_unload_segments` parameters.
-  - `nodes`: Adds `bytes`, `time` parameters.
-  - `pending_tasks`: Adds `time` parameter.
-  - `recovery`: Adds `active_only`, `detailed`, `index`, `time` parameters.
-  - `segments`: Removes `index` parameter and it's now a url part.
-  - `shards`: Adds `time` parameter.
-  - `snapshots`: Adds `time` parameter.
-  - `tasks`: Adds `time` parameter.
-  - `templates`: The `name` parameter is now passed in as a part but not a parameter.
-  - `thread_pool`: The `thread_pool_patterns` parameter is now passed in as a part but not as a parameter.
-- `cluster`
-  - `put_settings`: body is required.
-  - `state`: `index_templates` is gone.
-  - `node_id` is now a url part.
-- `delete` - `parent` parameter is gone.
-- `delete_by_query`: `analyzer`  parameters are gone, `max_docs` is a new parameter, `body` is now a required parameter.
-- `delete_by_query_rethrottle` new endpoint.
-- `delete_by_rethrottle` - uses `delete_by_query_rethrottle` and hasn't changed.
-- `exists`, `exists_source`, `explain`: `parent` parameter is gone.
-- `field_caps`: `fields` param is no longer required.
-- `get`: `parent` parameter is gone
-- `get_source`: `parent` parameter is gone
-- `index`: `body` parameter is required, `wait_for_shard` is a new parameter, `consistency`, `include_type_name`, `parent`, `percolate`, `replication`, `timestamp`, `ttl` parameters are gone
-- `indices`
-  - `get`: `feature` paramatere was deprecated and is gone.
-  - `delete_aliases`, `put_alias`: URL changed internally to 'aliases' instead of 'alias' but shouldn't affect the client's API.
-- `render_search_template`: `id` is now a part not a parameter
-- `search`: `fielddata_fields`, `include_type_name`, `fields`, `ignore_indices`, `lowercase_expanded_terms`, `query_cache`, `source` parameters are gone, `ccs_minimize_roundtrips`, `track_scores` are new parameters.
-- `tasks` - `list`: task_id is not supported anymore, it's in get now.
-- `termvectors`: `parent` parameter is gone.
-- `update`: `version` parameter is not supported anymore.
-
-
-[discrete]
-==== X-Pack
-
-Some urls changed internally to remove `_xpack`, but it shouldn't affect the client's API.
-
-- `explore`: `index` is now required.
-- `info`: `human` parameter is gone.
-- `migration`: some endpoints are gone: `get_assistance`, `get_assistance_test` and `upgrade_test`.
-- `watcher`: `restart` endpoint is gone.
diff --git a/docs/release_notes/76.asciidoc b/docs/release_notes/76.asciidoc
deleted file mode 100644
index bd546df82f..0000000000
--- a/docs/release_notes/76.asciidoc
+++ /dev/null
@@ -1,86 +0,0 @@
-[[release_notes_76]]
-=== 7.6 Release notes
-
-
-[discrete]
-==== Client
-
-* Support for Elasticsearch version 7.6.
-* Last release supporting Ruby 2.4. Ruby 2.4 has reached it's end of life and no more security updates will be provided, users are suggested to update to a newer version of Ruby.
-
-
-[discrete]
-===== API Key Support
-
-The client now supports API Key Authentication, check "Authentication" on the https://github.com/elastic/elasticsearch-ruby/tree/7.x/elasticsearch-transport#authentication[transport README] for information on how to use it.
-
-
-[discrete]
-===== X-Opaque-Id Support
-
-The client now supports identifying running tasks with X-Opaque-Id. Check https://github.com/elastic/elasticsearch-ruby/tree/7.x/elasticsearch-transport#identifying-running-tasks-with-x-opaque-id[transport README] for information on how to use X-Opaque-Id.
-
-
-[discrete]
-===== Faraday migrated to 1.0
-
-We're now using version 1.0 of Faraday:
-
-* The client initializer was modified but this should not disrupt final users at all, check this commit for more information.
-* Migrated error checking to remove the deprecated Faraday::Error namespace.
-* *This change is not compatible with https://github.com/typhoeus/typhoeus[Typhoeus]*. The latest release is 1.3.1, but it's https://github.com/typhoeus/typhoeus/blob/v1.3.1/lib/typhoeus/adapters/faraday.rb#L100[still using the deprecated `Faraday::Error` namespace]. This has been fixed on master, but the last release was November 6, 2018. Version 1.4.0 should be ok once it's released.
-* Note: Faraday 1.0 drops official support for JRuby. It installs fine on the tests we run with JRuby in this repo, but it's something we should pay attention to.
-
-Reference: https://github.com/lostisland/faraday/blob/master/UPGRADING.md[Upgrading - Faraday 1.0]
-
-https://github.com/elastic/elasticsearch-ruby/pull/808[Pull Request]
-
-
-[discrete]
-==== API
-
-
-[discrete]
-===== API Changes:
-
-- `cat.indices`: argument `bytes` options were: `b,k,m,g` and are now `b,k,kb,m,mb,g,gb,t,tb,p,pb`.
-- `delete_by_query`: New parameter `analyzer` - The analyzer to use for the query string.
-- `indices.put_template`: Removed parameters: `timeout`, `flat_settings`.
-- `msearch_template`: New Parameter `ccs_minimize_roundtrips` - Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution.
-- `rank_eval`: New parameter `search_type` - Search operation type (options: `query_then_fetch,dfs_query_then_fetch`).
-- `search_template`: New parameter `ccs_minimize_roundtrips` - Indicates whether network round-trips should be minimized as part of cross-cluster search requests execution.
-
-
-[discrete]
-===== New API endpoints:
-
-- `get_script_context`
-- `get_script_languages`
-
-
-[discrete]
-===== Warnings:
-
-Synced flush is deprecated and will be removed in 8.0.
-
-
-[discrete]
-==== X-Pack
-
-
-[discrete]
-===== New API endpoints:
-
-- `ml/delete_trained_model`
-- `ml/explain_data_frame_analytics`
-- `ml/get_trained_models`
-- `ml/get_trained_models_stats`
-- `ml/put_trained_model`
-
-
-[discrete]
-===== API changes:
-
-- `license/get`: Added parameter `accept_enterprise`.
-- `ml/delete_data_frame_analytics` Added parameter `force`.
--  `monitoring/bulk` - Removed parameter `system_version`.
\ No newline at end of file
diff --git a/docs/release_notes/77.asciidoc b/docs/release_notes/77.asciidoc
deleted file mode 100644
index 87f5e1bdbb..0000000000
--- a/docs/release_notes/77.asciidoc
+++ /dev/null
@@ -1,77 +0,0 @@
-[[release_notes_77]]
-=== 7.7 Release notes
-
-This version drops support for Ruby 2.4 since it's reached it's end of life.
-
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version `7.7`
-
-
-[discrete]
-===== Custom Headers
-
-You can set custom HTTP headers on the client's initializer or pass them as a parameter to any API endpoint. https://github.com/elastic/elasticsearch-ruby/tree/7.x/elasticsearch-transport#custom-http-headers[More info and code examples].
-
-
-[discrete]
-==== API
-
-
-[discrete]
-===== API Changes
-
-- Clean: Removes up some deprecated endpoints: `abort_benchmark`, `benchmark`, `delete_by_rethrottle`, `nodes.shutdown`, `remote.info`.
-- `expand_wildcards` Whether to expand wildcard expressions to concrete indices that are open, closed or both. Options: open, closed, hidden, none, all. `hidden` option is new. It was also added to the following endpoints: `cat.aliases`, `cat.indices`.
-- `delete_by_query`: Parameter `slices` can now be set to `auto`.
-- `reindex`: Parameter `slices` can now be set to `auto`.
-- `update_by_query`: Parameter `slices` can now be set to `auto`.
-- `snapshot.cleanup_repository`: Parameter `body` is removed.
-
-
-[discrete]
-===== New API Endpoints
-
-- `cluster.delete_component_template`
-- `cluster.get_component_template`
-- `cluster.put_component_template`
-- `indices.create_data_stream` (experimental)
-- `indices.delete_data_stream` (experimental)
-- `indices.get_data_stream` (experimental)
-
-
-[discrete]
-==== X-Pack
-
-
-[discrete]
-===== API Changes
-
-- `machine_learing.get_trained_models`: New parameter `tags`
-- `machine_learning.put_datafeed`, `machine_learning.update_datafeed`: Added parameters `ignore_unavailable`, `allow_no_indices`, `ignore_throttled`, `expand_wildcards`
-- `reload_secure_settings`: New parameter `body`, an object containing the password for the keystore.
-
-
-[discrete]
-===== New API Endpoints
-
-- `async_search.delete`
-- `async_search.get`
-- `async_search.submit`
-- `cat.ml_data_frame_analytics`
-- `cat.ml_datafeeds`
-- `cat.ml_jobs`
-- `cat.ml_trained_models`
-- `cat.transform`
-- `cat.transforms`
-- `machine_learning.estimate_model_memory`
-- `transform.delete_transform`
-- `transform.get_transform`
-- `transform.get_transform_stats`
-- `transform.preview_transform`
-- `transform.put_transform`
-- `transform.start_transform`
-- `transform.stop_transform`
-- `transform.update_transform`
\ No newline at end of file
diff --git a/docs/release_notes/78.asciidoc b/docs/release_notes/78.asciidoc
deleted file mode 100644
index a5d59e985e..0000000000
--- a/docs/release_notes/78.asciidoc
+++ /dev/null
@@ -1,103 +0,0 @@
-[[release_notes_78]]
-=== 7.8 Release notes
-
-[discrete]
-[[release_notes_781]]
-=== 7.8.1 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version `7.8.1`.
-- Bug fix: Fixed a bug on the API endpoints documentation for RubyDocs: there was an unnecessary empty new line in the documentation for parameters that have options. So the parameters before that empty newline were not being documented in RubyDocs.
-
-
-[discrete]
-==== X-Pack
-
-
-[discrete]
-===== API Changes
-
-- Update to `info` endpoint. New parameter `accept_enterprise` (boolean): If an enterprise license is installed, return the type and mode as 'enterprise' (default: false).
-
-
-[discrete]
-[[release_notes_780]]
-=== 7.8.0 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version `7.8`.
-- Surface deprecation headers from Elasticsearch. When there's a `warning` response header in Elasticsearch's response, the client will emit a warning with `warn`.
-- Typhoeus is supported again, version 1.4+ and has been added back to the docs.
-- Adds documentation and example for integrating with Elastic APM.
-
-
-[discrete]
-==== API
-
-
-[discrete]
-===== New API Endpoints
-
-- `abort_benchmark`
-- `benchmark`
-- `cluster.delete_voting_config_exclusions`
-- `cluster.post_voting_config_exclusions`
-- `delete_by_rethrottle`
-- `nodes.shutdown`
-- `remote.info`
-
-Experimental endpoints:
-
-- `cluster.delete_component_template`
-- `cluster.exists_component_template`
-- `cluster.get_component_template`
-- `cluster.put_component_template`
-
-- `indices.delete_index_template`
-- `indices.exists_index_template`
-- `indices.get_index_template`
-- `indices.put_index_template`
-- `indices.simulate_index_template`
-
-
-[discrete]
-===== API Changes
-
-- `cat/thread_pool`: `size` is deprecated.
-- `indices.get_data_streams`: `name` is now a string instead of list, the name or wildcard expression of the requested data streams.
-- `indices.put_index_template`: new parameter: `cause` (string), user defined reason for creating/updating the index template.
-- `indices.simulate_index_template`: Two new parameters: `create`, whether the index template we optionally defined in the body should only be dry-run added if new or can also replace an existing one. `cause` User defined reason for dry-run creating the new template for simulation purposes.
-- `snapshot.delete_repository`: New parameter `repository`, name of the snapshot repository, wildcard (`*`) patterns are now supported.
-- `task.cancel`: new parameter `wait_for_completion` (boolean) Should the request block until the cancellation of the task and its descendant tasks is completed. Defaults to false.
-
-
-[discrete]
-==== X-Pack
-
-
-[discrete]
-===== New API Endpoints
-
-New namespace: `indices`
-
-- `indices.freeze`
-- `indices.reload_search_analyzers`
-- `indices.unfreeze`
-
-New namespace: `searchable_snapshots`
-
-- `clear_cache`
-- `mount`
-- `repository_stats`
-- `stats`
-
-
-[discrete]
-===== API Changes
-
-- `machine_learning.delete_expired_data` new param `body`: deleting expired data parameters.
-- `machine_learning.delete_data_frame_analytics` new param `timeout`: controls the time to wait until a job is deleted. Defaults to 1 minute.
diff --git a/docs/release_notes/79.asciidoc b/docs/release_notes/79.asciidoc
deleted file mode 100644
index cd780239fb..0000000000
--- a/docs/release_notes/79.asciidoc
+++ /dev/null
@@ -1,60 +0,0 @@
-[[release_notes_79]]
-=== 7.9 Release notes
-
-[discrete]
-==== Client
-
-- Support for Elasticsearch version `7.9.0`.
-- Transport/Connection: Considers attributes values for equality - https://github.com/elastic/elasticsearch-ruby/commit/06ffd03bf51f5f33a0d87e9914e66b39357d40af[Commit].
-- When an API endpoint accepts both `GET` and `POST`, the client will always use `POST` when a request body is present.
-
-[discrete]
-==== API
-
-- Documentation for API endpoints will point out when an API is experimental, beta or unstable.
-
-[discrete]
-===== New API Endpoints
-
-- New namespace: `dangling_indices`
-- `dangling_indices.delete_dangling_index`
-- `dangling_indices.import_dangling_index`
-- `dangling_indices.list_dangling_indices`
-- `indices.add_block`
-
-Experimental endpoints:
-- `indices.resolve_index`
-- `simulate_template`
-
-[discrete]
-===== API Changes
-
-- `field_caps`: adds body parameter allowing to filter indices if `index_filter` is provided.
-- `eql.search`: new parameters `wait_for_completion`, `keep_on_completion` and `keep_alive`.
-- `info`: New parameter `accept_enterprise`: If an enterprise license is installed, return the type and mode as 'enterprise' (default: false).
-- `indices.put_mapping`: new parameter `write_index_only`.
-
-[discrete]
-==== X-Pack
-
-[discrete]
-===== New API Endpoints
-
-The Ruby client now supports all the X-Pack API endpoints.
-
-- New namespace `autoscaling`: `autoscaling.delete_autoscaling_policy`, `autoscaling.get_autoscaling_decision`, `autoscaling.get_autoscaling_policy`, `autoscaling.put_autoscaling_policy`
-- New namespace `enrich`: `enrich.delete_policy`, `enrich.execute_policy`, `enrich.get_policy`, `enrich.put_policy`, `enrich.stats`
-- New namespace `eql`: `eql.delete`, `eql.get`, `eql.search`
-- New namespace `cross_cluster_replication`: `cross_cluster_replication.delete_auto_follow_pattern`, `cross_cluster_replication.follow`, `cross_cluster_replication.follow_info`, `cross_cluster_replication.follow_stats`, `cross_cluster_replication.forget_follower`, `cross_cluster_replication.get_auto_follow_pattern`, `cross_cluster_replication.pause_auto_follow_pattern`, `cross_cluster_replication.pause_follow`, `cross_cluster_replication.put_auto_follow_pattern`, `cross_cluster_replication.resume_auto_follow_pattern`, `cross_cluster_replication.resume_follow`, `cross_cluster_replication.stats`, `cross_cluster_replication.unfollow`
-- New namespace `snapshot_lifecycle_management`: `snapshot_lifecycle_management.delete_lifecycle`, `snapshot_lifecycle_management.execute_lifecycle`, `snapshot_lifecycle_management.execute_retention`, `snapshot_lifecycle_management.get_lifecycle`, `snapshot_lifecycle_management.get_stats`, `snapshot_lifecycle_management.get_status`, `snapshot_lifecycle_management.put_lifecycle`, `snapshot_lifecycle_management.start`, `snapshot_lifecycle_management.stop`
-- `indices.create_data_stream`
-- `indices.data_streams_stats`
-- `indices.delete_data_stream`
-- `indices.get_data_stream`
-- `security.clear_cached_privileges`
-- `machine_learning.update_data_frame_analytics`
-
-[discrete]
-===== API Changes
-
-- `machine_learning.delete_expired_data`: new parameters `job_id`, `requests_per_second` and `timeout`
\ No newline at end of file
diff --git a/docs/release_notes/80.asciidoc b/docs/release_notes/80.asciidoc
deleted file mode 100644
index c97e91cc7b..0000000000
--- a/docs/release_notes/80.asciidoc
+++ /dev/null
@@ -1,74 +0,0 @@
-[[release_notes_80]]
-=== 8.0 Release notes
-
-[discrete]
-[[release_notes_801]]
-=== 8.0.1 Release notes
-
-- Fixes an issue with the generated API code. When updating the code generator for 8.x, the order of `arguments.clone` in the generated code was changed. This would make it so that we would modify the parameters passed in before cloning them, which is undesired. Issue: https://github.com/elastic/elasticsearch-ruby/issues/1727[#1727].
-
-[discrete]
-[[release_notes_800]]
-=== 8.0.0 Release notes
-
-First release for the 8.x branch with a few major changes.
-
-- Tested versions of Ruby for 8.0.0: Ruby (MRI) 2.6, 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-==== Client
-
-The code for the dependency `elasticsearch-transport` has been promoted to https://github.com/elastic/elastic-transport-ruby[its own repository] and the project and gem have been renamed to https://rubygems.org/gems/elastic-transport[`elastic-transport`]. This gem now powers https://rubygems.org/gems/elasticsearch[`elasticsearch`] and https://rubygems.org/gems/elastic-enterprise-search[`elastic-enterprise-search`]. The `elasticsearch-transport` gem won't be maintained after the last release in the `7.x` branch, in favour of `elastic-transport`.
-
-This will allow us to better address maintainance in both clients and the library itself.
-
-[discrete]
-==== API
-
-The `elasticsearch-api` library has been generated based on the {es} 8.0.0 REST specification.
-
-#### X-Pack Deprecation
-
-X-Pack has been deprecated. The `elasticsearch-xpack` gem will no longer be maintained after the last release in the `7.x` branch. The "X-Pack" integration library codebase was merged into `elasticsearch-api`. All the functionality is available from `elasticsearch-api`. The `xpack` namespace was removed for accessing any APIs other than `_xpack` (`client.xpack.info`) and `_xpack/usage` (`client.xpack.usage`). But APIs which were previously available through the `xpack` namespace e.g.: `client.xpack.machine_learning` are now only available directly: `client.machine_learning`.
-
-#### Parameter checking was removed
-
-The code in `elasticsearch-api` will no longer validate all the parameters sent. It will only validate the required parameters such as those needed to build the path for the request. But other API parameters are going to be validated by {es}. This provides better forwards and backwards compatibility in the client.
-
-#### Response object
-
-In previous versions of the client, calling an API endpoint would return the JSON body of the response. With `8.0`, we are returning a new Response object `Elasticsearch::API::Response`. It still behaves like a Hash to maintain backwards compatibility, but adds the `status` and `headers` methods from the `Elastic::Transport:Transport::Response` object:
-
-```ruby
-elastic_ruby(main)> response = client.info
-=> #<Elasticsearch::API::Response:0x000055752b0c50a8
- @response=
-  #<Elastic::Transport::Transport::Response:0x000055752b0c50f8
-   @body=
-    {"name"=>"instance",
-     "cluster_name"=>"elasticsearch-8-0-0-SNAPSHOT-rest-test",
-     "cluster_uuid"=>"oIfRARuYRGuVYybjxQJ87w",
-     "version"=>
-      {"number"=>"8.0.0-SNAPSHOT",
-       "build_flavor"=>"default",
-       "build_type"=>"docker",
-       "build_hash"=>"7e23c54eb31cc101d1a4811b9ab9c4fd33ed6a8d",
-       "build_date"=>"2021-11-04T00:21:32.464485627Z",
-       "build_snapshot"=>true,
-       "lucene_version"=>"9.0.0",
-       "minimum_wire_compatibility_version"=>"7.16.0",
-       "minimum_index_compatibility_version"=>"7.0.0"},
-     "tagline"=>"You Know, for Search"},
-   @headers={"X-elastic-product"=>"Elasticsearch", "content-type"=>"application/json", "content-length"=>"567"},
-   @status=200>>
-elastic_ruby(main)> response.status
-=> 200
-elastic_ruby(main)> response.headers
-=> {"X-elastic-product"=>"Elasticsearch", "content-type"=>"application/json", "content-length"=>"567"}
-elastic_ruby(main)> response['name']
-=> "instance"
-elastic_ruby(main)> response['tagline']
-=> "You Know, for Search"
-```
-
-Please https://github.com/elastic/elasticsearch-ruby/issues[let us know if you find any issues].
diff --git a/docs/release_notes/81.asciidoc b/docs/release_notes/81.asciidoc
deleted file mode 100644
index 871486ead8..0000000000
--- a/docs/release_notes/81.asciidoc
+++ /dev/null
@@ -1,55 +0,0 @@
-[[release_notes_81]]
-=== 8.1 Release notes
-
-[discrete]
-[[release_notes_812]]
-=== 8.1.2 Release notes
-
-[discrete]
-==== API
-
-- Fixes an issue with the generated API code. When updating the code generator for 8.x, the order of `arguments.clone` in the generated code was changed. This would make it so that we would modify the parameters passed in before cloning them, which is undesired. Issue: https://github.com/elastic/elasticsearch-ruby/issues/1727[#1727].
-
-[discrete]
-[[release_notes_811]]
-=== 8.1.1 Release notes
-
-No release, no changes on the client.
-
-[discrete]
-[[release_notes_810]]
-=== 8.1.0 Release notes
-
-- Tested versions of Ruby for 8.1.0: Ruby (MRI) 2.6, 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-==== API
-
-Updated for compatibility with Elasticsearch 8.1's API.
-
-[discrete]
-===== New parameters:
-- `indices.forcemerge` - `wait_for_completion` Should the request wait until the force merge is completed.
-- `indices.get` - `features` Return only information on specified index features (options: aliases, mappings, settings).
-- `ingest.put_pipeline` `if_version` (Integer), required version for optimistic concurrency control for pipeline updates.
-- `ml.delete_trained_model` - `timeout` controls the amount of time to wait for the model to be deleted. `force` (Boolean) true if the model should be forcefully deleted.
-- `ml.stop_trained_model_deployment` -  `allow_no_match` whether to ignore if a wildcard expression matches no deployments. (This includes `_all` string or when no deployments have been specified). `force` true if the deployment should be forcefully stopped. Adds `body` parameter, the stop deployment parameters.
-- `nodes.hot_threads` - `sort` the sort order for 'cpu' type (default: total) (options: cpu, total)
-
-[discrete]
-===== Updated parameters:
-- `indices.get_index_template` - `name` is now a String, a pattern that returned template names must match.
-- `knn_search` - `index` removes option to use empty string to perform the operation on all indices.
-- `ml.close_job`, `ml.get_job_stats`, `ml.get_jobs`, `ml.get_overall_buckets` - Remove `allow_no_jobs` parameter.
-- `ml.get_datafeed_stats`, `ml.get_datafeeds` - Remove `allow_no_datafeeds` parameter.
-- `nodes.hot_threads` - `type` parameter adds `mem` option.
-- `nodes.info` - `metric` updated to use `_all` to retrieve all metrics and `_none` to retrieve the node identity without any additional metrics. (options: settings, os, process, jvm, thread_pool, transport, http, plugins, ingest, indices, aggregations, _all, _none). `index_metric` option `shards` changes to `shard_stats`.
-- `open_point_in_time` - `keep_alive` is now a required parameter.
-- `search_mvt` - `grid_type` parameter adds `centroid` option in addition to `grid` and `point`.
-
-- New experimental APIs, designed for internal use by the fleet server project: `fleet.search`, `fleet.msearch`.
-
-[discrete]
-===== New APIs
-- OpenID Connect Authentication: `security.oidc_authenticate`, `security.oidc_logout`, `security.oidc_prepare_authentication`.
-- `transform.reset_transform`.
diff --git a/docs/release_notes/810.asciidoc b/docs/release_notes/810.asciidoc
deleted file mode 100644
index c58f777d8e..0000000000
--- a/docs/release_notes/810.asciidoc
+++ /dev/null
@@ -1,51 +0,0 @@
-[[release_notes_8100]]
-=== 8.10 Release notes
-
-[discrete]
-[[release_notes_810_0]]
-=== 8.10.0 Release notes
-
-[discrete]
-=== Client
-* Tested versions of Ruby for 8.10.0: Ruby (MRI) 3.0, 3.1 and 3.2. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-=== API
-
-[discrete]
-==== New Experimental APIs, for internal use:
-- `fleet.delete_secret`
-- `fleet.get_secret`
-- `fleet.post_secret`
-
-[discrete]
-==== New stable APIs:
-- `security.get_settings` - Retrieve settings for the security system indices
-- `security.update_settings` - Update settings for the security system indices
-
-[discrete]
-==== New Experimental API:
-- `query_ruleset.list` List query rulesets.
-
-[discrete]
-==== API Changes:
-- `indices.reload_search_analyzers` - Adds parameter `resource` changed resource to reload analyzers from if applicable
-
-Promoted from Experimental to Beta:
-
-- `security.create_cross_cluster_api_key`
-- `security.update_cross_cluster_api_key`
-
-[discrete]
-==== Synonyms namespace update:
-
-All synonym related APIs have been moved to the `synonyms` namespace and some of the endpoints have been renamed, as well as their parameters:
-
-- `synonyms.delete` => `synonyms.delete_synonym` - requires `id`, the id of the synonyms set to be deleted.
-- `synonyms.get` => `synonyms.get_synonym` - requires `id`, the name of the synonyms set to be retrieved.
-- `synonyms_set.get_synonyms_sets` => `synonyms.get_synonyms_sets`
-- `synonyms.put` => `synonyms.put_synonym` - requires `id` of the synonyms set to be created or updated.
-- `synonym_rule.put` => `synonyms.put_synonym_rule` - Parameters changed to `set_id` (the id of the synonym set to be updated with the synonym rule) and `rule_id` (the id of the synonym rule to be updated or created).
-- New Experimental API `synonyms.delete_synonym_rule` - Deletes a synonym rule in a synonym set
-- New Experimental API `synonyms.get_synonym_rule` - Retrieves a synonym rule from a synonym set
-
diff --git a/docs/release_notes/811.asciidoc b/docs/release_notes/811.asciidoc
deleted file mode 100644
index 43c43427de..0000000000
--- a/docs/release_notes/811.asciidoc
+++ /dev/null
@@ -1,24 +0,0 @@
-[[release_notes_8110]]
-=== 8.11 Release notes
-
-[discrete]
-[[release_notes_811_0]]
-=== 8.11.0 Release notes
-
-[discrete]
-=== Client
-
-* Tested versions of Ruby for 8.11.0: Ruby (MRI) 3.0, 3.1 and 3.2. JRuby 9.3 and JRuby 9.4.
-* Adds native support for *Open Telemetry*. See <<opentelemetry>> for documentation.
-* Improved documentation, now you can find more examples in Ruby in the https://www.elastic.co/guide/en/elasticsearch/reference/8.11/rest-apis.html[REST API reference].
-
-[discrete]
-=== API
-
-New Experimental APIs:
-
-* `esql.query` - Executes an ESQL request.
-* `inference.delete_model` - Delete model in the Inference API
-* `inference.get_model` - Get a model in the Inference API
-* `inference.inference` - Perform inference on a model
-* `inference.put_model` - Configure a model for use in the Inference API
diff --git a/docs/release_notes/812.asciidoc b/docs/release_notes/812.asciidoc
deleted file mode 100644
index 7fb1c52f6e..0000000000
--- a/docs/release_notes/812.asciidoc
+++ /dev/null
@@ -1,65 +0,0 @@
-[[release_notes_8_12]]
-=== 8.12 Release notes
-
-[discrete]
-[[release_notes_8_12_0]]
-=== 8.12.0 Release notes
-
-[discrete]
-==== Client
-* Tested versions of Ruby for 8.12.0: Ruby (MRI) 3.0, 3.1, 3.2 and 3.3. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== API
-
-API Changes:
-
-* `bulk` - Adds boolean `:list_executed_pipelines` parameter: Sets `list_executed_pipelines` for all incoming documents. Defaults to unset (false).
-* `indices.put_settings` - Adds boolean `:reopen` parameter: Whether to close and reopen the index to apply non-dynamic settings. If set to `true` the indices to which the settings are being applied will be closed temporarily and then reopened in order to apply the changes. The default is `false`.
-* `open_point_in_time` - Adds Hash `:body` parameter: an index_filter specified with the Query DSL.
-* `security.get_api_key` - Adds boolean `:active_only` parameter: flag to limit response to only active (not invalidated or expired) API keys.
-
-[discrete]
-===== Connectors
-
-Version 8.12 introduces the experimental https://www.elastic.co/guide/en/elasticsearch/reference/8.12/connector-apis.html[Connectors API].
-
-Use the following APIs to manage connectors:
-
-* `connector.post` - Creates a connector. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/create-connector-api.html[documentation].
-* `connector.put` - Creates or updates a connector. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/create-connector-api.html[documentation].
-* `connector.delete` - Deletes a connector. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/delete-connector-api.html[documentation].
-* `connector.get` - Returns the details about a connector. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/get-connector-api.html[documentation].
-* `connector.list` - Lists all connectors. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/list-connector-api.html[documentation].
-* `connector.check_in` - Updates the last_seen timestamp in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/check-in-connector-api.html[documentation].
-* `connector.update_configuration` - Updates the connector configuration. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-configuration-api.html[documentation].
-* `connector.update_error` - Updates the error field in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-error-api.html[documentation].
-* `connector.update_filtering` - Updates the filtering field in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-filtering-api.html[documentation].
-* `connector.last_sync` - Updates the stats of last sync in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-last-sync-api.html[documentation].
-* `connector.update_name` - Updates the name and/or description fields in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-name-description-api.html[documentation].
-* `connector.update_pipeline` - Updates the pipeline field in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-pipeline-api.html[documentation].
-* `connector.update_scheduling` - Updates the scheduling field in the connector document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/update-connector-scheduling-api.html[documentation].
-
-Use the following APIs to manage sync jobs:
-
-* `connector_sync_job.cancel` - Cancels a connector sync job. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/cancel-connector-sync-job-api.html[documentation].
-* `connector_sync_job.check_in` - Checks in a connector sync job (refreshes 'last_seen'). See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/check-in-connector-sync-job-api.html[documentation].
-* `connector_sync_job.delete` - Deletes a connector sync job. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/delete-connector-sync-job-api.html[documentation].
-* `connector_sync_job.error` - Sets an error for a connector sync job. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/set-connector-sync-job-error-api.html[documentation].
-* `connector_sync_job.get` - Returns the details about a connector sync job. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/get-connector-sync-job-api.html[documentation].
-* `connector_sync_job.list` - Lists all connector sync jobs. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/list-connector-sync-jobs-api.html[documentation].
-* `connector_sync_job.post` - Creates a connector sync job. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/create-connector-sync-job-api.html[documentation].
-* `connector_sync_job.update_stats` - Updates the stats fields in the connector sync job document. See https://www.elastic.co/guide/en/elasticsearch/reference/8.12/set-connector-sync-job-stats-api.html[documentation].
-
-[discrete]
-===== Profiling
-New API for https://www.elastic.co/guide/en/observability/8.12/universal-profiling.html[Universal profiling].
-
-* `profiling.status` - Returns basic information about the status of Universal Profiling.
-
-
-[discrete]
-===== Simulate
-New experimental API:
-
-* `simulate.ingest` - Simulates running ingest with example documents. See: https://www.elastic.co/guide/en/elasticsearch/reference/8.12/simulate-ingest-api.html
diff --git a/docs/release_notes/813.asciidoc b/docs/release_notes/813.asciidoc
deleted file mode 100644
index 0c3066d3e4..0000000000
--- a/docs/release_notes/813.asciidoc
+++ /dev/null
@@ -1,76 +0,0 @@
-[[release_notes_8_13]]
-=== 8.13 Release notes
-
-[discrete]
-[[release_notes_8_13_0]]
-=== 8.13.0 Release notes
-
-[discrete]
-==== Client
-* Tested versions of Ruby for 8.13.0: Ruby (MRI) 3.0, 3.1, 3.2 and 3.3. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== Experimental ES|QL Helper
-
-This version provides a new experimental Helper for the ES|QL `query` API. Please check out https://www.elastic.co/guide/en/elasticsearch/client/ruby-api/8.13/Helpers.html#esql-helper[the documentation] and https://github.com/elastic/elasticsearch-ruby/issues/new/choose[open an issue] if you encounter any problems or have any feedback.
-
-[discrete]
-==== API
-
-API Changes:
-
-* `async_search.status` - adds Time `:keep_alive` parameter: Specify the time interval in which the results (partial or final) for this search will be available.
-* `bulk` - adds boolean `:require_data_stream` parameter: When true, requires the destination to be a data stream (existing or to-be-created). Default is false.
-* `connector.list` - Adds the following parameters:
-  * `:index_name` (List): A comma-separated list of connector index names to fetch connector documents for.
-  * `:connector_name` (List): A comma-separated list of connector names to fetch connector documents for.
-  * `:service_type` (List):  A comma-separated list of connector service types to fetch connector documents for.
-  * `:query` (String): A search string for querying connectors, filtering results by matching against connector names, descriptions, and index names.
-* `esql.query` - adds boolean `:drop_null_columns` parameter: Should entirely null columns be removed from the results? Their name and type will be returning in a new `all_columns` section.
-* `field_caps` - Adds `:include_empty_fields` boolean parameter: Include empty fields in result.
-* `index` - adds boolean `:require_data_stream` parameter: When true, requires the destination to be a data stream (existing or to-be-created). Default is false.
-* `indices.rollover` - adds boolean `:lazy` parameter: If set to true, the rollover action will only mark a data stream to signal that it needs to be rolled over at the next write. Only allowed on data streams.
-* connector_sync_job.list - adds List `:job_type` parameter: A comma-separated list of job types.
-* `inference.delete_model`, `inference.get_model`, `inference.inference`, `inference.put_model`: renames `:model_id` parameter to `:inference_id`.
-* `termvector` will show a warning since it's been deprecated. Please use the plural version, `termvectors`.
-
-New APIs:
-
-* `indices.resolve_cluster` - Resolves the specified index expressions to return information about each cluster, including the local cluster, if included.
-* `profiling.flamegraph` - Extracts a UI-optimized structure to render flamegraphs from Universal Profiling.
-* `profiling.stacktraces` - Extracts raw stacktrace information from Universal Profiling.
-* `security.query_user` - Retrieves information for Users using a subset of query DSL
-* `text_structure.test_grok_pattern` - Tests a Grok pattern on some text.
-
-APIs Migrated from experimental to stable:
-
-* `synonyms.delete_synonym`
-* `synonyms.delete_synonym_rule`
-* `synonyms.get_synonym`
-* `synonyms.get_synonym_rule`
-* `synonyms.get_synonyms_sets`
-* `synonyms.put_synonym`
-* `synonyms.put_synonym_rule`
-
-New Experimental APIs
-
-* `connector.update_api_key_id` - Updates the API key id and/or API key secret id fields in the connector document.
-* `connector.update_index_name` - Updates the index name of the connector.
-* `connector.update_native` - Updates the is_native flag of the connector.
-* `connector.update_service_type` - Updates the service type of the connector.
-* `connector.update_status` - Updates the status of the connector.
-* `esql.async_query` - Executes an ESQL request asynchronously
-* `esql.async_query_get` - Retrieves the results of a previously submitted async query request given its ID.
-
-New Experimental namespace `connector_secret`:
-
-* `connector_secret.delete` - Deletes a connector secret.
-* `connector_secret.get` - Retrieves a secret stored by Connectors.
-* `connector_secret.post` - Creates a secret for a Connector.
-* `connector_secret.put` - Creates or updates a secret for a Connector.
-
-[discrete]
-==== Development
-
-* Migrated from `byebug` to `debug`.
-* Added extra testing for OpenTelemetry.
diff --git a/docs/release_notes/814.asciidoc b/docs/release_notes/814.asciidoc
deleted file mode 100644
index 6bb42142f9..0000000000
--- a/docs/release_notes/814.asciidoc
+++ /dev/null
@@ -1,52 +0,0 @@
-[[release_notes_8_14]]
-=== 8.14 Release notes
-
-[discrete]
-[[release_notes_8_14_0]]
-=== 8.14.0 Release notes
-
-[discrete]
-==== Client
-* Tested versions of Ruby for 8.14.0: Ruby (MRI) 3.0, 3.1, 3.2 and 3.3. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== API
-
-API changes:
-
-* All Connector APIs have been migrated to one common namespace `connector`:
-** `connector_secret.delete` -> `connector.secret_delete`
-** `connector_secret.get` -> `connector.secret_get`
-** `connector_secret.post` -> `connector.secret_post`
-** `connector_secret.put` -> `connector.secret_put`
-** `connector_sync_job.cancel` -> `connector.sync_job_cancel`
-** `connector_sync_job.check_in` -> `connector.sync_job_check_in`
-** `connector_sync_job.delete` -> `connector.sync_job_delete`
-** `connector_sync_job.error` -> `connector.sync_job_error`
-** `connector_sync_job.get` -> `connector.sync_job_get`
-** `connector_sync_job.post` -> `connector.sync_job_post`
-** `connector_sync_job.update_stats` -> `connector.sync_job_update_stats`
-
-* `connector.delete` - Adds Boolean parameter `:delete_sync_jobs`: Determines whether associated sync jobs are also deleted.
-* `cross_cluster_replication.delete_auto_follow_pattern`, `cross_cluster_replication.follow`, `cross_cluster_replication.follow_info`, `cross_cluster_replication.get_auto_follow_pattern`, `cross_cluster_replication.pause_auto_follow_pattern`, `cross_cluster_replication.pause_follow`, `cross_cluster_replication.put_auto_follow_pattern`, `cross_cluster_replication.resume_auto_follow_pattern`, `cross_cluster_replication.resume_follow`, `cross_cluster_replication.stats`, `cross_cluster_replication.unfollow` - Add Time parameter `:master_timeout`:  Explicit operation timeout for connection to master node.
-* `cross_cluster_replication.follow_stats`, `cross_cluster_replication.forget_follower`, `cross_cluster_replication.stats` - Add Time parameter `:timeout`: Explicit operation timeout.
-* `indices/rollover` - Adds Boolean parameter `:target_failure` If set to true, the rollover action will be applied on the failure store of the data stream.
-* `inference.get_model` - Parameter `inference_id` no longer required.
-* `search_application.search` - Adds Boolean parameter `:typed_keys`: Specify whether aggregation and suggester names should be prefixed by their respective types in the response.
-* `security.get_api_key`, `security.query_api_keys` - Add Boolean parameter `:with_profile_uid`: flag to also retrieve the API Key's owner profile uid, if it exists.
-
-New APIs:
-
-- `profiling.topn_functions` - Extracts a list of topN functions from Universal Profiling.
-- `text_structure.find_field_structure` - Finds the structure of a text field in an index.
-- `text_structure/find_message_structure`- Finds the structure of a list of messages. The messages must contain data that is suitable to be ingested into Elasticsearch.
-
-APIs Migrated from experimental to stable:
-
-- `esql.async_query`
-- `esql.query`
-
-New Experimental APIs:
-
-- `connector.update_active_filtering` - Activates the draft filtering rules if they are in a validated state.
-- `connector.update_filtering_validation` - Updates the validation info of the draft filtering rules.
diff --git a/docs/release_notes/815.asciidoc b/docs/release_notes/815.asciidoc
deleted file mode 100644
index 38312a5922..0000000000
--- a/docs/release_notes/815.asciidoc
+++ /dev/null
@@ -1,99 +0,0 @@
-[[release_notes_8_15]]
-=== 8.15 Release notes
-
-[discrete]
-[[release_notes_8_15_0]]
-=== 8.15.0 Release notes
-
-[discrete]
-==== Client
-* Tested versions of Ruby for 8.15.0: Ruby (MRI) 3.0, 3.1, 3.2 and 3.3. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== API
-
-[discrete]
-===== API changes
-
-* `cluster.allocation_explain` - `body` is no longer a required parameter.
-* `connector.put` - (experimental API) `body` and `connector_id` are no longer required parameters.
-* `machine_learning.update_trained_model_deployment` has been promoted to stable from Beta. Adds Integer parameter `number_of_allocations`, updates the model deployment to this number of allocations.
-* `snapshot.delete` - Adds `wait_for_completion` Boolean parameter, should this request wait until the operation has completed before returning.
-
-[discrete]
-====== `master_timeout` and `timeout` parameters
-
-These parameters have been added to several APIs:
-
-* `master_timeout` timeout for processing on master node.
-* `timeout` timeout for acknowledgement of update from all nodes in cluster parameters.
-
-The APIs:
-
-* `autoscaling.delete_autoscaling_policy` - both.
-* `autoscaling.get_autoscaling_capacity`- `master_timeout`.
-* `get_autoscaling_policy` - `master_timeout`.
-* `put_autoscaling_policy` - both.
-* `enrich.delete_policy` - `master_timeout`.
-* `enrich.execute_policy` - `master_timeout`.
-* `enrich.get_policy` - `master_timeout`.
-* `enrich.put_policy` - `master_timeout`.
-* `enrich.stats` - `master_timeout`.
-* `features.reset_features` - `master_timeout`.
-* `license.delete` - both.
-* `license.post` - both.
-* `license.post_start_basic` - both.
-* `license.post_start_trial` - both.
-* `security.get_settings` - `master_timeout`.
-* `security.update_settings` - both.
-* `shutdown.get_node` - `master_timeout`.
-* `snapshot_lifecycle_management.start` - both.
-* `snapshot_lifecycle_management.stop` - both.
-* `watcher.get_settings` - `master_timeout`.
-* `watcher.start` - `master_timeout`.
-* `watcher.stop` - `master_timeout`.
-* `watcher.update_settings` - both.
-
-[discrete]
-====== Inference APIs have been renamed:
-
-* `inference.delete_model` => `inference.delete`. Also adds two new parameters:
-** `dry_run` (Boolean), if true the endpoint will not be deleted and a list of ingest processors which reference this endpoint will be returned.
-** `force` (Boolean), if true the endpoint will be forcefully stopped (regardless of whether or not it is referenced by any ingest processors or semantic text fields).
-* `inference.get_model` => `inference.get`
-* `inference.put_model` => `inference.put`
-
-[discrete]
-====== Query Rules parameters consolidated
-
-Changes in `query_ruleset` and `query_rules` APIs, These have been combined into the `query_rules` namespace:
-
-* `query_rules.delete_ruleset` - Renamed from `query_ruleset.delete`, promoted from experimental to stable.
-* `query_rules.delete_rule` - Deletes an individual query rule within a ruleset.
-* `query_rules.get_rule` - Returns the details about an individual query rule within a ruleset.
-* `query_rules.get_ruleset` - Renamed from `query_ruleset.get`, promoted from experimental to stable.
-* `query_rules.list_rulesets` - Renamed from `query_ruleset.list`, promoted from experimental to stable.
-* `query_rules.put_rule` - Creates or updates a query rule within a ruleset.
-* `query_rules.put_ruleset` - Renamed from `query_ruleset.put_ruleset`, promoted from experimental to stable.
-
-[discrete]
-===== New APIs:
-
-* `ingest.delete_geoip_database` - Deletes a geoip database configuration.
-* `ingest.get_geoip_database` - Returns geoip database configuration.
-* `ingest.put_geoip_database` - Puts the configuration for a geoip database to be downloaded.
-* `security.bulk_delete_role` - Bulk delete roles in the native realm.
-* `security.bulk_put_role` - Bulk adds and updates roles in the native realm.
-* `security.query_role` - Retrieves information for Roles using a subset of query DSL.
-* `transform.get_node_stats` - Retrieves transform usage information for transform nodes.
-
-[discrete]
-===== New Experimental APIs:
-
-* `connector.sync_job_claim` - Claims a connector sync job.
-* `connector.update_features` - Updates the connector features in the connector document.
-
-[discrete]
-==== Development
-
-- Added a build using https://github.com/elastic/es-test-runner-ruby[es-test-runner-ruby] and https://github.com/elastic/elasticsearch-clients-tests[Elasticsearch Clients Tests] which will replace the Elasticsearch YAML test runner.
diff --git a/docs/release_notes/816.asciidoc b/docs/release_notes/816.asciidoc
deleted file mode 100644
index c32e719f57..0000000000
--- a/docs/release_notes/816.asciidoc
+++ /dev/null
@@ -1,57 +0,0 @@
-[[release_notes_8_16]]
-=== 8.16 Release notes
-
-[discrete]
-[[release_notes_8_16_0]]
-=== 8.16.0 Release notes
-
-[discrete]
-==== Client
-* Tested versions of Ruby for 8.16.0: Ruby (MRI) 3.1, 3.2 and 3.3. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== API
-
-[discrete]
-===== API changes
-
-* `capabilities` - Adds `local_only` boolean parameter: True if only the node being called should be considered.
-* `cluster.stats`- Removes `flat_settings` parameter, adds `include_remotes` boolean parameter: Include remote cluster data into the response (default: false).
-* `indices.get_data_stream` - Adds `verbose` boolean parameter: Whether the maximum timestamp for each data stream should be calculated and returned (default: false). Adds `master_timeout` (see below).
-* `query_rules.delete_ruleset` - Accepts `ignore: 404` common parameter.
-
-These parameters have been added to several APIs:
-
-* `master_timeout` timeout for processing on master node.
-* `timeout` timeout for acknowledgement of update from all nodes in cluster parameters.
-
-Added in:
-
-* `indices.create_data_stream` - both.
-* `indices.delete_data_stream` - `master_timeout`.
-* `indices.get_data_lifecycle` - `master_timeout`.
-* `indices.get_data_stream` - `master_timeout`.
-* `indices.migrate_to_data_stream` - both.
-* `indices.promote_data_stream` - `master_timeout`.
-* `search_shards` - `master_timeout`.
-
-**APIs Promoted from Experimental to Stable:**
-
-* `indices.delete_data_lifecycle`
-* `indices.explain_data_lifecycle`
-* `indices.get_data_lifecycle`
-* `indices.put_data_lifecycle`
-* `security.create_cross_cluster_api_key`
-* `security.update_cross_cluster_api_key`
-
-**New APIs**
-
-* `ingest.delete_ip_location_database` - Deletes an ip location database configuration.
-* `ingest.get_ip_location_database` - Returns the specified ip location database configuration.
-* `ingest.put_ip_location_database` - Puts the configuration for a ip location database to be downloaded.
-
-
-**New Experimental APIs**
-
-* `inference.stream_inference` - Perform streaming inference.
-* `query_rules.test` - Tests a query ruleset to identify the rules that would match input criteria.
diff --git a/docs/release_notes/817.asciidoc b/docs/release_notes/817.asciidoc
deleted file mode 100644
index 2963eeb0d1..0000000000
--- a/docs/release_notes/817.asciidoc
+++ /dev/null
@@ -1,20 +0,0 @@
-[[release_notes_8_17]]
-=== 8.17 Release notes
-
-[discrete]
-[[release_notes_8_17_0]]
-=== 8.17.0 Release notes
-
-[discrete]
-==== Client
-* Tested versions of Ruby for 8.17.0: Ruby (MRI) 3.1, 3.2 and 3.3. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== API
-
-[discrete]
-===== API changes
-* `async_search.submit` - Removes `keep_alive` parameter. Adds:
-** `ccs_minimize_roundtrips` (Boolean): When doing a cross-cluster search, setting it to true may improve overall search latency, particularly when searching clusters with a large number of shards. However, when set to true, the progress of searches on the remote clusters will not be received until the search finishes on all clusters.
-** `rest_total_hits_as_int` (Boolean): Indicates whether hits.total should be rendered as an integer or an object in the rest search response.
-* `open_point_in_time` - Adds `allow_partial_search_results` (Boolean) parameter: Specify whether to tolerate shards missing when creating the point-in-time, or otherwise throw an exception (default: false).
diff --git a/docs/release_notes/82.asciidoc b/docs/release_notes/82.asciidoc
deleted file mode 100644
index 401958b6c7..0000000000
--- a/docs/release_notes/82.asciidoc
+++ /dev/null
@@ -1,49 +0,0 @@
-[[release_notes_82]]
-=== 8.2 Release notes
-
-[discrete]
-[[release_notes_822]]
-=== 8.2.2 Release notes
-
-- Updates dependency on `elastic-transport` to `~> 8.0`
-
-
-[discrete]
-[[release_notes_821]]
-=== 8.2.1 Release notes
-
-No release, no changes on the client.
-
-[discrete]
-[[release_notes_820]]
-=== 8.2.0 Release notes
-
-
-- Tested versions of Ruby for 8.2.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-==== API
-
-Updated for compatibility with Elasticsearch 8.2's API.
-
-[discrete]
-===== New parameters:
-
-* `field_caps`
-** `filters` An optional set of filters: can include +metadata,-metadata,-nested,-multifield,-parent
-** `types` Only return results for fields that have one of the types in the list
-
-[discrete]
-===== New APIs
-
-- `cat.component_templates` - Returns information about existing component_templates templates.
-- `ml.get_memory_stats` - Returns information on how ML is using memory.
-
-[discrete]
-===== New Experimental APIs
-- `security.activate_user_profile` - Creates or updates the user profile on behalf of another user.
-- `security.disable_user_profile` -  Disables a user profile so it's not visible in user profile searches.
-- `security.enable_user_profile` -  Enables a user profile so it's visible in user profile searches.
-- `security.get_user_profile` -  Retrieves a user profile for the given unique ID.
-- `security.suggest_user_profiles` - Get suggestions for user profiles that match specified search criteria.
-- `security.update_user_profile_data` - Update application specific data for the user profile of the given unique ID.
diff --git a/docs/release_notes/83.asciidoc b/docs/release_notes/83.asciidoc
deleted file mode 100644
index aa0b2d8d53..0000000000
--- a/docs/release_notes/83.asciidoc
+++ /dev/null
@@ -1,33 +0,0 @@
-[[release_notes_83]]
-=== 8.3 Release notes
-
-[discrete]
-[[release_notes_830]]
-=== 8.3.0 Release notes
-
-- Tested versions of Ruby for 8.3.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-==== API
-
-- Added build hash to auto generated code. The code generator obtains the git hash from the Elasticsearch specification and adds it as a comment in the code. This allows us to track the version for each generated class.
-- Updated for compatibility with Elasticsearch 8.3's API.
-
-[discrete]
-===== API Changes
-
-* `cluster.delete_voting_config_exclusions`, `cluster.post_voting_config_exclusions` - Add new parameter `master_timeout` (Time) Timeout for submitting request to master.
-* `machine_learning.infer_trained_model_deployment` is renamed to `machine_learning.infer_trained_model`. The url `/_ml/trained_models/{model_id}/deployment/_infer` is deprecated since 8.3, use `/_ml/trained_models/{model_id}/_infer` instead.
-* `machine_learning.preview_datafeed` - Adds new parameters:
-** `start` (String) The start time from where the datafeed preview should begin
-** `end` (String) The end time when the datafeed preview should stop
-* `machine_learning.start_trained_model_deployment` - Adds new parameters:
-** `number_of_allocations` (Integer) The number of model allocations on each node where the model is deployed.
-** `threads_per_allocation` (Integer) The number of threads used by each model allocation during inference.
-** `queue_capacity` (Integer) Controls how many inference requests are allowed in the queue at a time.
-* `search_mvt` - Adds new parameter: `with_labels` (Boolean) If true, the hits and aggs layers will contain additional point features with suggested label positions for the original features
-* `snapshot.get` - Adds new parameter: `index_names` (Boolean) Whether to include the name of each index in the snapshot. Defaults to true.
-
-[discrete]
-===== New Experimental APIs
-* `security.has_privileges_user_profile` Determines whether the users associated with the specified profile IDs have all the requested privileges
diff --git a/docs/release_notes/84.asciidoc b/docs/release_notes/84.asciidoc
deleted file mode 100644
index 19901f675e..0000000000
--- a/docs/release_notes/84.asciidoc
+++ /dev/null
@@ -1,31 +0,0 @@
-[[release_notes_84]]
-=== 8.4 Release notes
-
-[discrete]
-[[release_notes_840]]
-=== 8.4.0 Release notes
-
-- Tested versions of Ruby for 8.4.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-==== API
-
-[discrete]
-===== New APIs
-
-* `security.update_api_key` - Updates attributes of an existing API key. https://www.elastic.co/guide/en/elasticsearch/reference/8.4/security-api-update-api-key.html[Documentation].
-
-[discrete]
-===== API Changes
-* `get` - Adds new parameter `force_synthetic_source` (Boolean) Should this request force synthetic _source? Use this to test if the mapping supports synthetic _source and to get a sense of the worst case performance. Fetches with this enabled will be slower the enabling synthetic source natively in the index.
-* `machine_learning.start_trained_model_deployment` - Adds new parameter `cache_size` (String) A byte-size value for configuring the inference cache size. For example, 20mb.
-* `mget` - Adds new parameter `force_synthetic_source` (Boolean) Should this request force synthetic _source? Use this to test if the mapping supports synthetic _source and to get a sense of the worst case performance. Fetches with this enabled will be slower the enabling synthetic source natively in the index.
-* `search` - Adds new parameter `force_synthetic_source` (Boolean) Should this request force synthetic _source? Use this to test if the mapping supports synthetic _source and to get a sense of the worst case performance. Fetches with this enabled will be slower the enabling synthetic source natively in the index.
-* `snapshot.get` - Adds new parameters:
-** `sort` (String) Allows setting a sort order for the result. Defaults to start_time (options: start_time, duration, name, repository, index_count, shard_count, failed_shard_count).
-** `size` (Integer) Maximum number of snapshots to return. Defaults to 0 which means return all that match without limit.
-** `order` (String) Sort order (options: asc, desc).
-** `from_sort_value` (String) Value of the current sort column at which to start retrieval.
-** `after` (String) Offset identifier to start pagination from as returned by the 'next' field in the response body.
-** `offset` (Integer) Numeric offset to start pagination based on the snapshots matching the request. Defaults to 0.
-** `slm_policy_filter` (String) Filter snapshots by a comma-separated list of SLM policy names that snapshots belong to. Accepts wildcards. Use the special pattern '_none' to match snapshots without an SLM policy.
diff --git a/docs/release_notes/85.asciidoc b/docs/release_notes/85.asciidoc
deleted file mode 100644
index 4ba0e56497..0000000000
--- a/docs/release_notes/85.asciidoc
+++ /dev/null
@@ -1,105 +0,0 @@
-[[release_notes_85]]
-=== 8.5 Release notes
-
-[discrete]
-[[release_notes_852]]
-=== 8.5.2 Release notes
-
-[discrete]
-==== API Bugfix
-
-Fixes `security.create_service_token` API, uses `POST` when token name isn't present.
-Thanks https://github.com/carlosdelest[@carlosdelest] for reporting in https://github.com/elastic/elasticsearch-ruby/pull/1961[#1961].
-
-[discrete]
-[[release_notes_851]]
-=== 8.5.1 Release notes
-
-[discrete]
-==== Bugfixes
-
-Fixes bug when instantiating client with `api_key`: When passing in `api_key` and `transport_options` that don't include headers to the client, the `api_key` code would overwrite the arguments passed in for `transport_options`. This was fixed in https://github.com/elastic/elasticsearch-ruby/pull/1941/files[this Pull Request].
-Thanks @svdasein for reporting in https://github.com/elastic/elasticsearch-ruby/issues/1940[#1940].
-
-[discrete]
-[[release_notes_850]]
-=== 8.5.0 Release notes
-
-- Tested versions of Ruby for 8.5.0: Ruby (MRI) 2.7, 3.0 and 3.1, JRuby 9.3.
-
-[discrete]
-==== Client
-
-With the latest release of `elastic-transport` - `v8.1.0` - this gem now supports Faraday v2. Elasticsearch Ruby has an open dependency on `elastic-transport` (`'elastic-transport', '~> 8'`), so when you upgrade your gems, `8.1.0` will be installed. This supports both Faraday v1 and Faraday v2. The main change on dependencies when using Faraday v2 is all adapters, except for the default `net_http` one, have been moved out of Faraday into separate gems. This means if you're not using the default adapter and you migrate to Faraday v2, you'll need to add the adapter gems to your Gemfile.
-
-These are the gems required for the different adapters with Faraday 2, instead of the libraries on which they were based:
-
-[source,ruby]
-------------------------------------
-# HTTPCLient
-gem 'faraday-httpclient'
-
-# NetHTTPPersistent
-gem 'faraday-net_http_persistent'
-
-# Patron
-gem 'faraday-patron'
-
-# Typhoeus
-gem 'faraday-typhoeus'
-------------------------------------
-
-Things should work fine if you migrate to Faraday 2 as long as you include the adapter (unless you're using the default one `net-http`), but worst case scenario, you can always lock the version of Faraday in your project to 1.x:
-gem 'faraday', '~> 1'
-
-Be aware if migrating to Faraday v2 that it requires at least Ruby `2.6`, unlike Faraday v1 which requires `2.4`.
-
-*Troubleshooting*
-
-If you see a message like:
-
-[source,ruby]
-------------------------------------
-:adapter is not registered on Faraday::Adapter (Faraday::Error)
-------------------------------------
-Then you probably need to include the adapter library in your gemfile and require it.
-
-Please https://github.com/elastic/elasticsearch-ruby/issues[submit an issue] if you encounter any problems.
-
-[discrete]
-==== API
-
-[discrete]
-===== New APIs
-
-- `machine_learning.clear_trained_model_deployment_cache` - Clear the cached results from a trained model deployment (Beta).
-- `security.bulk_update_api_keys` - Updates the attributes of multiple existing API keys.
-
-[discrete]
-===== API Changes
-
-- `rollup.rollup` renamed to `indices.downsample`. The method now receives the `index` to downsample (Required) and instead of `rollup_index`, use target_index as the index to store downsampled data.
-
-- `security.get_api_key` and `security.query_api_keys` add `:with_limited_by` flag to show the limited-by role descriptors of API Keys.
-- `security.get_user` adds `:with_profile_uid` flag to retrieve profile uid (if exists) associated to the user.
-- `security.get_user_profile` now retrieves user profiles for given unique ID(s). `:uid` is now a list of comma-separated list of unique identifier for user profiles.
-- `text_structure.find_structure` adds `:ecs_compatibility`, optional parameter to specify the compatibility mode with ECS Grok patterns - may be either 'v1' or 'disabled'.
-
-Machine learning APIs promoted from *Experimental* to *Beta*:
-
-- `machine_learning.clear_trained_model_deployment_cache.rb`
-- `machine_learning.infer_trained_model.rb`
-- `machine_learning.put_trained_model_definition_part.rb`
-- `machine_learning.put_trained_model_vocabulary.rb`
-- `machine_learning.start_trained_model_deployment.rb`
-- `machine_learning.stop_trained_model_deployment.rb`
-
-Security usef profile APIs promoted from *Experimental* to *Stable*:
-
-- `security/activate_user_profile`
-- `security/disable_user_profile`
-- `security/enable_user_profile`
-- `security/get_user_profile`
-- `security/has_privileges_user_profile`
-- `security/suggest_user_profile`
-- `security/update_user_profile_data`
diff --git a/docs/release_notes/86.asciidoc b/docs/release_notes/86.asciidoc
deleted file mode 100644
index 88a7ad47d2..0000000000
--- a/docs/release_notes/86.asciidoc
+++ /dev/null
@@ -1,23 +0,0 @@
-[[release_notes_86]]
-=== 8.6 Release notes
-
-[discrete]
-[[release_notes_860]]
-=== 8.6.0 Release notes
-
-- Tested versions of Ruby for 8.6.0: Ruby (MRI) 2.7, 3.0, 3.1 and **3.2**. JRuby 9.3 and **JRuby 9.4**.
-
-[discrete]
-==== API
-
-[discrete]
-===== New APIs
-
-- `update_trained_model_deployment` - Updates certain properties of trained model deployment (This functionality is in Beta and is subject to change).
-
-[discrete]
-===== API Changes
-
-- `cluster.reroute` - `:metric` parameter adds `none` as an option.
-- `ml.start_trained_model_deployment` - New parameter `:priority` (String), the deployment priority
-
diff --git a/docs/release_notes/87.asciidoc b/docs/release_notes/87.asciidoc
deleted file mode 100644
index f58e0856c6..0000000000
--- a/docs/release_notes/87.asciidoc
+++ /dev/null
@@ -1,35 +0,0 @@
-[[release_notes_87]]
-=== 8.7 Release notes
-
-[discrete]
-[[release_notes_871]]
-=== 8.7.1 Release notes
-
-[discrete]
-==== API Bugfix
-
-- Updates `logstash.get_pipeline`, fixed in the specification `id` is not a required parameter, so removes raising `ArgumentError` when id is not present.
-
-
-[discrete]
-[[release_notes_870]]
-=== 8.7.0 Release notes
-
-- Tested versions of Ruby for 8.7.0: Ruby (MRI) 2.7, 3.0, 3.1 and **3.2**. JRuby 9.3 and JRuby 9.4. Ruby 2.7's end of life is coming in a few days, so this'll probably be the last release to test for Ruby 2.7.
-
-[discrete]
-==== API
-
-[discrete]
-===== New APIs
-
-- `health_report` - Returns the health of the cluster.
-- `transform.schedule_now_transform` - Schedules now a transform.
-
-[discrete]
-===== API Changes
-
-- `transform.get_transform_stats` - Adds `timeout` (Time) parameter. Controls the time to wait for the stats.
-- `transform.start_transform` - Adds `from` (String) parameter. Restricts the set of transformed entities to those changed after this time.
-- `ml.delete_job`, `ml.reset_job` - Add `delete_user_annotations` (Boolean) parameter. Should annotations added by the user be deleted.
-- `ml.clear_trained_model_deployment_cache`, `ml.infer_trained_model`, `ml.put_trained_model_definition_part`, `ml.put_trained_model_vocabulary`, `ml.start_trained_model_deployment`, `ml.stop_trained_model_deployment` - These APIs are no longer in Beta.
diff --git a/docs/release_notes/88.asciidoc b/docs/release_notes/88.asciidoc
deleted file mode 100644
index 13f093fd07..0000000000
--- a/docs/release_notes/88.asciidoc
+++ /dev/null
@@ -1,47 +0,0 @@
-[[release_notes_88]]
-=== 8.8 Release notes
-
-[discrete]
-[[release_notes_880]]
-=== 8.8.0 Release notes
-
-- Tested versions of Ruby for 8.8.0: Ruby (MRI) 3.0, 3.1 and **3.2**. JRuby 9.3 and JRuby 9.4.
-
-[discrete]
-==== API
-
-- Updates development dependency `minitest-reporters` to `>= 1.6` to include showing failures at the end of the test run.
-
-[discrete]
-===== New APIs
-
-- `watcher.get_settings` - Retrieve settings for the watcher system index.
-- `watcher.update_settings` - Update settings for the watcher system index.
-
-[discrete]
-===== New Experimental APIs
-
-- `indices.delete_data_lifecycle`- Deletes the data lifecycle of the selected data streams
-- `indices.explain_data_lifecycle` - Retrieves information about the index's current DLM lifecycle, such as any potential encountered error, time since creation etc.
-- `indices.get_data_lifecycle` - Returns the data lifecycle of the selected data streams.
-- `indices.put_data_lifecycle` - Updates the data lifecycle of the selected data streams.
-- `search_application.delete` - Deletes a search application.
-- `search_application.delete_behavioral_analytics` - Delete a behavioral analytics collection.
-- `search_application.get` - Returns the details about a search application.
-- `search_application.get_behavioral_analytics` - Returns the existing behavioral analytics collections.
-- `search_application.list` - Returns the existing search applications.
-- `search_application.post_behavioral_analytics_event` - Creates a behavioral analytics event for existing collection.
-- `search_application.put` - Creates or updates a search application.
-- `search_application.put_behavioral_analytics` - Creates a behavioral analytics collection.
-- `search_application.search` - Perform a search against a search application.
-
-[discrete]
-===== API Changes
-
-- `clear_scroll` now works with the argument `ignore: 404`. https://github.com/elastic/elasticsearch-ruby/issues/2067[Issue on GitHub].
-- The code generator was updated to fix a bug for `ignore: 404`. APIs that were supposed to support this wouldn't parse the parameters correctly. The support it now: `security.get_role`, `watcher.delete_watch`
-- `cluster.get_component_template`, `indices.get_data_stream`, `indices.get_index_template`, `indices.simulate_index_template`, `indices.simulate_template` - Add `include_defaults` (Boolean) parameter: Return all default configurations for the component template (default: false).
-- `machine_learning.put_trained_model` - Adds `wait_for_completion` (Boolean) parameter: Whether to wait for all child operations(e.g. model download) to complete, before returning or not (default: false).
-- `machine_learning.start_trained_model_deployment` - Adds `deployiment_id` (String) parameter: The Id of the new deployment. Defaults to the model_id if not set.
-- `search` - Adds `include_named_queries_score` (Boolean) parameter: Indicates whether hit.matched_queries should be rendered as a map that includes the name of the matched query associated with its score (true) or as an array containing the name of the matched queries (false).
-- `transform.delete_transform` - Adds `delete_dest_index` (Boolean) parameter: When `true`, the destination index is deleted together with the transform. The default value is `false`, meaning that the destination index will not be deleted.
diff --git a/docs/release_notes/89.asciidoc b/docs/release_notes/89.asciidoc
deleted file mode 100644
index de0f431856..0000000000
--- a/docs/release_notes/89.asciidoc
+++ /dev/null
@@ -1,54 +0,0 @@
-[[release_notes_89]]
-=== 8.9 Release notes
-
-[discrete]
-[[release_notes_890]]
-=== 8.9.0 Release notes
-
-[discrete]
-=== Client
-* Tested versions of Ruby for 8.9.0: Ruby (MRI) 3.0, 3.1 and 3.2. JRuby 9.3 and JRuby 9.4.
-* Updated product validation. The code for the product validation was refactored in a few ways:
-** Just check header, does not check the version of the server.
-** Warns only once when there's a general server error.
-** Removes the call to '/' (client.info) when doing the first request, checking on the first actual request from the client.
-* Fixes User-Agent code. In the migration to 8.x, the user agent code was extracted into transport, since we're now using that library in other projects. So for the Elasticsearch Client, the user-agent would be reported as the one defined in elastic-transport. This release fixes the issue and brings back the user agent in the format that was being used in 7.x
-
-[discrete]
-=== Helpers
-This release introduces two new Helpers in the client:
-
-* BulkHelper - This helper provides a better developer experience when using the Bulk API. At its simplest, you can send it a collection of hashes in an array, and it will bulk ingest them into {es}.
-* ScrollHelper - This helper provides an easy way to get results from a Scroll.
-
-See <<Helpers>> to read more about them.
-
-[discrete]
-=== API
-
-[discrete]
-==== New APIs
-
-* `cluster.info` - Returns different information about the cluster.
-
-[discrete]
-==== New Experimental APIs and namespaces:
-
-This functionality is Experimental and may be changed or removed completely in a future release. Elastic will take a best effort approach to fix any issues, but experimental features are not subject to the support SLA of official GA features.
-
-* New namespace: `query_ruleset`
-** `query_ruleset.delete` - Deletes a query ruleset.
-** `query_ruleset.get` - Returns the details about a query ruleset.
-** `query_ruleset.put` - Creates or updates a query ruleset.
-* New API: `search_application.render_query` Renders a query for given search application search parameters.
-* New API: `security.create_cross_cluster_api_key` -  Creates a cross-cluster API key for API key based remote cluster access.
-* New API: `security.upate_cross_cluster_api_key` - Updates attributes of an existing cross-cluster API key.
-* New namespace: `synonyms`
-** `synonyms.delete`- Deletes a synonym set
-** `synonyms.get` - Retrieves a synonym set
-** `synonyms.put` - Creates or updates a synonyms set
-* New namespace: `synonym_rule`
-** `synonym_rule.put` - Creates or updates a synonym rule in a synonym set
-* New namespace: `synonyms`
-** `synonyms_set.get` - Retrieves a summary of all defined synonym sets
-
diff --git a/docs/release_notes/index.asciidoc b/docs/release_notes/index.asciidoc
deleted file mode 100644
index 3b2ef35788..0000000000
--- a/docs/release_notes/index.asciidoc
+++ /dev/null
@@ -1,74 +0,0 @@
-[[release_notes]]
-== Release Notes
-
-[discrete]
-=== 8.x
-
-* <<release_notes_8_17, 8.17 Release Notes>>
-* <<release_notes_8_16, 8.16 Release Notes>>
-* <<release_notes_8_15, 8.15 Release Notes>>
-* <<release_notes_8_14, 8.14 Release Notes>>
-* <<release_notes_8_13, 8.13 Release Notes>>
-* <<release_notes_8_12, 8.12 Release Notes>>
-* <<release_notes_8110, 8.11 Release Notes>>
-* <<release_notes_8100, 8.10 Release Notes>>
-* <<release_notes_89, 8.9 Release Notes>>
-* <<release_notes_88, 8.8 Release Notes>>
-* <<release_notes_87, 8.7 Release Notes>>
-* <<release_notes_86, 8.6 Release Notes>>
-* <<release_notes_85, 8.5 Release Notes>>
-* <<release_notes_84, 8.4 Release Notes>>
-* <<release_notes_83, 8.3 Release Notes>>
-* <<release_notes_82, 8.2 Release Notes>>
-* <<release_notes_81, 8.1 Release Notes>>
-* <<release_notes_80, 8.0 Release Notes>>
-
-[discrete]
-=== 7.x
-* <<release_notes_717, 7.17 Release Notes>>
-* <<release_notes_716, 7.16 Release Notes>>
-* <<release_notes_715, 7.15 Release Notes>>
-* <<release_notes_714, 7.14 Release Notes>>
-* <<release_notes_713, 7.13 Release Notes>>
-* <<release_notes_712, 7.12 Release Notes>>
-* <<release_notes_711, 7.11 Release Notes>>
-* <<release_notes_710, 7.10 Release Notes>>
-* <<release_notes_79, 7.9 Release Notes>>
-* <<release_notes_78, 7.8 Release Notes>>
-* <<release_notes_77, 7.7 Release Notes>>
-* <<release_notes_76, 7.6 Release Notes>>
-* <<release_notes_75, 7.5 Release Notes>>
-* <<release_notes_70, 7.0 Release Notes>>
-
-include::817.asciidoc[]
-include::816.asciidoc[]
-include::815.asciidoc[]
-include::814.asciidoc[]
-include::813.asciidoc[]
-include::812.asciidoc[]
-include::811.asciidoc[]
-include::810.asciidoc[]
-include::89.asciidoc[]
-include::88.asciidoc[]
-include::87.asciidoc[]
-include::86.asciidoc[]
-include::85.asciidoc[]
-include::84.asciidoc[]
-include::83.asciidoc[]
-include::82.asciidoc[]
-include::81.asciidoc[]
-include::80.asciidoc[]
-include::717.asciidoc[]
-include::716.asciidoc[]
-include::715.asciidoc[]
-include::714.asciidoc[]
-include::713.asciidoc[]
-include::712.asciidoc[]
-include::711.asciidoc[]
-include::710.asciidoc[]
-include::79.asciidoc[]
-include::78.asciidoc[]
-include::77.asciidoc[]
-include::76.asciidoc[]
-include::75.asciidoc[]
-include::70.asciidoc[]
diff --git a/docs/troubleshooting.asciidoc b/docs/troubleshooting.asciidoc
deleted file mode 100644
index a2e6a19e05..0000000000
--- a/docs/troubleshooting.asciidoc
+++ /dev/null
@@ -1,97 +0,0 @@
-[[troubleshooting]]
-== Troubleshooting
-
-Use the information in this section to troubleshoot common problems and find
-answers for frequently asked questions.
-
-
-[discrete]
-[[ruby-ts-logging]]
-=== Logging
-
-The client provides several options for logging that can help when things go
-wrong. Check out the extensive documentation on <<logging>>.
-
-If you are having trouble sending a request to {es} with the client, we suggest
-enabling `tracing` on the client and testing the cURL command that appears in
-your terminal:
-
-[source,rb]
-----------------------------
-client = Elasticsearch::Client.new(trace: true)
-client.info
-curl -X GET -H 'x-elastic-client-meta: es=8.9.0,rb=3.2.2,t=8.2.1,fd=2.7.4,nh=0.3.2, User-Agent: elastic-t
-ransport-ruby/8.2.1 (RUBY_VERSION: 3.2.2; linux x86_64; Faraday v2.7.4), Content-Type: application/json' 'http://localhost:9200//?pretty'
-----------------------------
-
-Testing the cURL command can help find out if there's a connection issue or if
-the issue is in the client code.
-
-
-[discrete]
-[[ruby-ts-connection]]
-=== Troubleshooting connection issues
-
-When working with multiple hosts, you might want to enable the
-`retry_on_failure` or `retry_on_status` options to perform a failed request on
-another node (refer to <<retry-failures>>).
-
-For optimal performance, use a HTTP library which supports persistent
-("keep-alive") connections, such as https://github.com/toland/patron[patron] or
-https://github.com/typhoeus/typhoeus[Typhoeus]. Require the library
-(`require 'patron'`) in your code for Faraday 1.x or the adapter
-(`require 'faraday/patron'`) for Faraday 2.x, and it will be automatically used.
-
-
-[discrete]
-[[ruby-ts-adapter]]
-=== Adapter is not registered on Faraday
-
-If you see a message like:
-```
-:adapter is not registered on Faraday::Adapter (Faraday::Error)
-```
-
-Then you might need to include the adapter library in your Gemfile and require
-it. You might get this error when migrating from Faraday v1 to Faraday v2. The
-main change when using Faraday v2 is all adapters, except for the default
-`net_http` one, have been moved out into separate gems. This means if you're not
-using the default adapter and you migrate to Faraday v2, you'll need to add the
-adapter gems to your Gemfile.
-
-These are the gems required for the different adapters with Faraday 2, instead
-of the libraries on which they were based:
-
-[source,ruby]
-------------------------------------
-# HTTPCLient
-gem 'faraday-httpclient'
-
-# NetHTTPPersistent
-gem 'faraday-net_http_persistent'
-
-# Patron
-gem 'faraday-patron'
-
-# Typhoeus
-gem 'faraday-typhoeus'
-------------------------------------
-
-Migrating to Faraday 2 solves the issue as long as the adapter is included
-(unless you're using the default one `net-http`). Alternatively, you can lock
-the version of Faraday in your project to 1.x:
-`gem 'faraday', '~> 1'`
-
-IMPORTANT: Migrating to Faraday v2 requires at least Ruby `2.6`. Faraday v1
-requires `2.4`.
-
-[discrete]
-=== More Help
-
-If you need more help, visit the
-https://discuss.elastic.co/[Elastic community forums] and get answers from the
-experts in the community, including people from Elastic.
-
-If you find a bug, have feedback, or find any other issue using the client,
-https://github.com/elastic/elasticsearch-ruby/issues/new/choose[submit an issue]
-on GitHub.
\ No newline at end of file