diff --git a/src/ApiGenerator/Configuration/CodeConfiguration.cs b/src/ApiGenerator/Configuration/CodeConfiguration.cs
index 4275fd3521..3c31c8212f 100644
--- a/src/ApiGenerator/Configuration/CodeConfiguration.cs
+++ b/src/ApiGenerator/Configuration/CodeConfiguration.cs
@@ -53,6 +53,7 @@ public static class CodeConfiguration
new("cluster.remote_info"),
new("cluster.reroute"),
new("cluster.state"),
+ new("cluster.stats"),
new("dangling_indices.*"),
new("ingest.*"),
diff --git a/src/OpenSearch.Client/ApiUrlsLookup.cs b/src/OpenSearch.Client/ApiUrlsLookup.cs
index 4cd1f08ab1..1d8ba9ee50 100644
--- a/src/OpenSearch.Client/ApiUrlsLookup.cs
+++ b/src/OpenSearch.Client/ApiUrlsLookup.cs
@@ -70,7 +70,6 @@ internal static partial class ApiUrlsLookups
internal static ApiUrls CatTemplates = new ApiUrls(new[]{"_cat/templates", "_cat/templates/{name}"});
internal static ApiUrls CatThreadPool = new ApiUrls(new[]{"_cat/thread_pool", "_cat/thread_pool/{thread_pool_patterns}"});
internal static ApiUrls NoNamespaceClearScroll = new ApiUrls(new[]{"_search/scroll"});
- internal static ApiUrls ClusterStats = new ApiUrls(new[]{"_cluster/stats", "_cluster/stats/nodes/{node_id}"});
internal static ApiUrls NoNamespaceCount = new ApiUrls(new[]{"_count", "{index}/_count"});
internal static ApiUrls NoNamespaceCreate = new ApiUrls(new[]{"{index}/_create/{id}"});
internal static ApiUrls NoNamespaceDelete = new ApiUrls(new[]{"{index}/_doc/{id}"});
diff --git a/src/OpenSearch.Client/Descriptors.Cluster.cs b/src/OpenSearch.Client/Descriptors.Cluster.cs
deleted file mode 100644
index 3f171e5ded..0000000000
--- a/src/OpenSearch.Client/Descriptors.Cluster.cs
+++ /dev/null
@@ -1,85 +0,0 @@
-/* SPDX-License-Identifier: Apache-2.0
-*
-* The OpenSearch Contributors require contributions made to
-* this file be licensed under the Apache-2.0 license or a
-* compatible open source license.
-*/
-/*
-* Modifications Copyright OpenSearch Contributors. See
-* GitHub history for details.
-*
-* Licensed to Elasticsearch B.V. under one or more contributor
-* license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright
-* ownership. Elasticsearch B.V. licenses this file to you under
-* the Apache License, Version 2.0 (the "License"); you may
-* not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing,
-* software distributed under the License is distributed on an
-* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-* KIND, either express or implied. See the License for the
-* specific language governing permissions and limitations
-* under the License.
-*/
-// ███╗ ██╗ ██████╗ ████████╗██╗ ██████╗███████╗
-// ████╗ ██║██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝
-// ██╔██╗ ██║██║ ██║ ██║ ██║██║ █████╗
-// ██║╚██╗██║██║ ██║ ██║ ██║██║ ██╔══╝
-// ██║ ╚████║╚██████╔╝ ██║ ██║╚██████╗███████╗
-// ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝
-// -----------------------------------------------
-//
-// This file is automatically generated
-// Please do not edit these files manually
-// Run the following in the root of the repos:
-//
-// *NIX : ./build.sh codegen
-// Windows : build.bat codegen
-//
-// -----------------------------------------------
-// ReSharper disable RedundantUsingDirective
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Linq.Expressions;
-using OpenSearch.Net;
-using OpenSearch.Net.Utf8Json;
-using OpenSearch.Net.Specification.ClusterApi;
-
-// ReSharper disable RedundantBaseConstructorCall
-// ReSharper disable UnusedTypeParameter
-// ReSharper disable PartialMethodWithSinglePart
-// ReSharper disable RedundantNameQualifier
-namespace OpenSearch.Client.Specification.ClusterApi
-{
- ///Descriptor for Stats
- public partial class ClusterStatsDescriptor : RequestDescriptorBase, IClusterStatsRequest
- {
- internal override ApiUrls ApiUrls => ApiUrlsLookups.ClusterStats;
- ////_cluster/stats
- public ClusterStatsDescriptor(): base()
- {
- }
-
- ////_cluster/stats/nodes/{node_id}
- ///Optional, accepts null
- public ClusterStatsDescriptor(NodeIds nodeId): base(r => r.Optional("node_id", nodeId))
- {
- }
-
- // values part of the url path
- NodeIds IClusterStatsRequest.NodeId => Self.RouteValues.Get("node_id");
- ///A comma-separated list of node IDs or names to limit the returned information; use `_local` to return information from the node you're connecting to, leave empty to get information from all nodes
- public ClusterStatsDescriptor NodeId(NodeIds nodeId) => Assign(nodeId, (a, v) => a.RouteValues.Optional("node_id", v));
- // Request parameters
- ///Return settings in flat format (default: false)
- public ClusterStatsDescriptor FlatSettings(bool? flatsettings = true) => Qs("flat_settings", flatsettings);
- ///Explicit operation timeout
- public ClusterStatsDescriptor Timeout(Time timeout) => Qs("timeout", timeout);
- }
-}
diff --git a/src/OpenSearch.Client/OpenSearchClient.Cluster.cs b/src/OpenSearch.Client/OpenSearchClient.Cluster.cs
deleted file mode 100644
index b25e661f80..0000000000
--- a/src/OpenSearch.Client/OpenSearchClient.Cluster.cs
+++ /dev/null
@@ -1,87 +0,0 @@
-/* SPDX-License-Identifier: Apache-2.0
-*
-* The OpenSearch Contributors require contributions made to
-* this file be licensed under the Apache-2.0 license or a
-* compatible open source license.
-*/
-/*
-* Modifications Copyright OpenSearch Contributors. See
-* GitHub history for details.
-*
-* Licensed to Elasticsearch B.V. under one or more contributor
-* license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright
-* ownership. Elasticsearch B.V. licenses this file to you under
-* the Apache License, Version 2.0 (the "License"); you may
-* not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing,
-* software distributed under the License is distributed on an
-* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-* KIND, either express or implied. See the License for the
-* specific language governing permissions and limitations
-* under the License.
-*/
-// ███╗ ██╗ ██████╗ ████████╗██╗ ██████╗███████╗
-// ████╗ ██║██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝
-// ██╔██╗ ██║██║ ██║ ██║ ██║██║ █████╗
-// ██║╚██╗██║██║ ██║ ██║ ██║██║ ██╔══╝
-// ██║ ╚████║╚██████╔╝ ██║ ██║╚██████╗███████╗
-// ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝
-// -----------------------------------------------
-//
-// This file is automatically generated
-// Please do not edit these files manually
-// Run the following in the root of the repos:
-//
-// *NIX : ./build.sh codegen
-// Windows : build.bat codegen
-//
-// -----------------------------------------------
-// ReSharper disable RedundantUsingDirective
-using System;
-using System.Threading;
-using System.Threading.Tasks;
-using OpenSearch.Net.Specification.ClusterApi;
-
-// ReSharper disable once CheckNamespace
-// ReSharper disable RedundantTypeArgumentsOfMethod
-namespace OpenSearch.Client.Specification.ClusterApi
-{
- ///
- /// Cluster APIs.
- /// Not intended to be instantiated directly. Use the property
- /// on .
- ///
- ///
- public partial class ClusterNamespace : NamespacedClientProxy
- {
- ///
- /// GET request to the cluster.stats API, read more about this API online:
- ///
- ///
- ///
- public ClusterStatsResponse Stats(Func selector = null) => Stats(selector.InvokeOrDefault(new ClusterStatsDescriptor()));
- ///
- /// GET request to the cluster.stats API, read more about this API online:
- ///
- ///
- ///
- public Task StatsAsync(Func selector = null, CancellationToken ct = default) => StatsAsync(selector.InvokeOrDefault(new ClusterStatsDescriptor()), ct);
- ///
- /// GET request to the cluster.stats API, read more about this API online:
- ///
- ///
- ///
- public ClusterStatsResponse Stats(IClusterStatsRequest request) => DoRequest(request, request.RequestParameters);
- ///
- /// GET request to the cluster.stats API, read more about this API online:
- ///
- ///
- ///
- public Task StatsAsync(IClusterStatsRequest request, CancellationToken ct = default) => DoRequestAsync(request, request.RequestParameters, ct);
- }
-}
diff --git a/src/OpenSearch.Client/Requests.Cluster.cs b/src/OpenSearch.Client/Requests.Cluster.cs
deleted file mode 100644
index 1d8f5bdb4b..0000000000
--- a/src/OpenSearch.Client/Requests.Cluster.cs
+++ /dev/null
@@ -1,105 +0,0 @@
-/* SPDX-License-Identifier: Apache-2.0
-*
-* The OpenSearch Contributors require contributions made to
-* this file be licensed under the Apache-2.0 license or a
-* compatible open source license.
-*/
-/*
-* Modifications Copyright OpenSearch Contributors. See
-* GitHub history for details.
-*
-* Licensed to Elasticsearch B.V. under one or more contributor
-* license agreements. See the NOTICE file distributed with
-* this work for additional information regarding copyright
-* ownership. Elasticsearch B.V. licenses this file to you under
-* the Apache License, Version 2.0 (the "License"); you may
-* not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing,
-* software distributed under the License is distributed on an
-* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-* KIND, either express or implied. See the License for the
-* specific language governing permissions and limitations
-* under the License.
-*/
-// ███╗ ██╗ ██████╗ ████████╗██╗ ██████╗███████╗
-// ████╗ ██║██╔═══██╗╚══██╔══╝██║██╔════╝██╔════╝
-// ██╔██╗ ██║██║ ██║ ██║ ██║██║ █████╗
-// ██║╚██╗██║██║ ██║ ██║ ██║██║ ██╔══╝
-// ██║ ╚████║╚██████╔╝ ██║ ██║╚██████╗███████╗
-// ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝╚══════╝
-// -----------------------------------------------
-//
-// This file is automatically generated
-// Please do not edit these files manually
-// Run the following in the root of the repos:
-//
-// *NIX : ./build.sh codegen
-// Windows : build.bat codegen
-//
-// -----------------------------------------------
-// ReSharper disable RedundantUsingDirective
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Linq.Expressions;
-using System.Runtime.Serialization;
-using OpenSearch.Net;
-using OpenSearch.Net.Utf8Json;
-using OpenSearch.Net.Specification.ClusterApi;
-
-// ReSharper disable RedundantBaseConstructorCall
-// ReSharper disable UnusedTypeParameter
-// ReSharper disable PartialMethodWithSinglePart
-// ReSharper disable RedundantNameQualifier
-namespace OpenSearch.Client.Specification.ClusterApi
-{
- [InterfaceDataContract]
- public partial interface IClusterStatsRequest : IRequest
- {
- [IgnoreDataMember]
- NodeIds NodeId
- {
- get;
- }
- }
-
- ///Request for Stats
- public partial class ClusterStatsRequest : PlainRequestBase, IClusterStatsRequest
- {
- protected IClusterStatsRequest Self => this;
- internal override ApiUrls ApiUrls => ApiUrlsLookups.ClusterStats;
- ////_cluster/stats
- public ClusterStatsRequest(): base()
- {
- }
-
- ////_cluster/stats/nodes/{node_id}
- ///Optional, accepts null
- public ClusterStatsRequest(NodeIds nodeId): base(r => r.Optional("node_id", nodeId))
- {
- }
-
- // values part of the url path
- [IgnoreDataMember]
- NodeIds IClusterStatsRequest.NodeId => Self.RouteValues.Get("node_id");
- // Request parameters
- ///Return settings in flat format (default: false)
- public bool? FlatSettings
- {
- get => Q("flat_settings");
- set => Q("flat_settings", value);
- }
-
- ///Explicit operation timeout
- public Time Timeout
- {
- get => Q