diff --git a/compiler-rs/clients_schema_to_openapi/src/lib.rs b/compiler-rs/clients_schema_to_openapi/src/lib.rs index e82b4b30b8..2f6048147e 100644 --- a/compiler-rs/clients_schema_to_openapi/src/lib.rs +++ b/compiler-rs/clients_schema_to_openapi/src/lib.rs @@ -20,57 +20,45 @@ mod paths; mod schemas; mod utils; -use std::collections::HashSet; -use std::io::{BufWriter, Write}; -use std::path::Path; use indexmap::IndexMap; -use clients_schema::{Availabilities, Endpoint, IndexedModel, Stability}; +use clients_schema::{Availabilities, Flavor, IndexedModel, Stability, Visibility}; use openapiv3::{Components, OpenAPI}; -use tracing::warn; - +use clients_schema::transform::ExpandConfig; use crate::components::TypesAndComponents; -pub fn convert_schema_file( - path: impl AsRef, - filter: Option) -> bool>, - endpoint_filter: fn(e: &Endpoint) -> bool, - out: impl Write, -) -> anyhow::Result<()> { - // Parsing from a string is faster than using a buffered reader when there is a need for look-ahead - // See https://github.com/serde-rs/json/issues/160 - let json = &std::fs::read_to_string(path)?; - let json_deser = &mut serde_json::Deserializer::from_str(json); - - let mut unused = HashSet::new(); - let mut model: IndexedModel = serde_ignored::deserialize(json_deser, |path| { - if let serde_ignored::Path::Map { parent: _, key } = path { - unused.insert(key); - } - })?; - if !unused.is_empty() { - let msg = unused.into_iter().collect::>().join(", "); - warn!("Unknown fields found in schema.json: {}", msg); - } +/// Convert an API model into an OpenAPI v3 schema, optionally filtered for a given flavor +pub fn convert_schema(mut schema: IndexedModel, flavor: Option) -> anyhow::Result { + // Expand generics + schema = clients_schema::transform::expand_generics(schema, ExpandConfig::default())?; + + // Filter flavor + let filter: Option) -> bool> = match flavor { + None => None, + Some(Flavor::Stack) => Some(|a| { + // Generate only public items for Stack + Flavor::Stack.visibility(a) == Some(Visibility::Public) + }), + Some(Flavor::Serverless) => Some(|a| { + // Generate only public items for Serverless + Flavor::Serverless.visibility(a) == Some(Visibility::Public) + }), + }; if let Some(filter) = filter { - model = clients_schema::transform::filter_availability(model, filter)?; + schema = clients_schema::transform::filter_availability(schema, filter)?; } - model.endpoints.retain(endpoint_filter); - - let openapi = convert_schema(&model)?; - serde_json::to_writer_pretty(BufWriter::new(out), &openapi)?; - Ok(()) + convert_expanded_schema(&schema) } -/// Convert an API model into an OpenAPI v3 schema. The input model must have all generics expanded, converstion +/// Convert an API model into an OpenAPI v3 schema. The input model must have all generics expanded, conversion /// will fail otherwise. /// -/// Note: there are ways to represent [generics in JSON Schema], but its unlikely that tooling will understood it. +/// Note: there are ways to represent [generics in JSON Schema], but its unlikely that tooling will understand it. /// /// [generics in JSON Schema]: https://json-schema.org/blog/posts/dynamicref-and-generics -pub fn convert_schema(model: &IndexedModel) -> anyhow::Result { +pub fn convert_expanded_schema(model: &IndexedModel) -> anyhow::Result { let mut openapi = OpenAPI { openapi: "3.0.3".into(), info: info(model), diff --git a/compiler-rs/clients_schema_to_openapi/src/main.rs b/compiler-rs/clients_schema_to_openapi/src/main.rs index 4fe74a7589..7f255be80a 100644 --- a/compiler-rs/clients_schema_to_openapi/src/main.rs +++ b/compiler-rs/clients_schema_to_openapi/src/main.rs @@ -19,7 +19,7 @@ use std::path::{Path, PathBuf}; use anyhow::bail; use clap::{Parser, ValueEnum}; -use clients_schema::{Availabilities, Visibility}; +use clients_schema::Flavor; use tracing::Level; use tracing_subscriber::fmt::format::FmtSpan; use tracing_subscriber::FmtSubscriber; @@ -72,33 +72,18 @@ impl Cli { std::fs::read_to_string(self.schema)? }; - let mut model: clients_schema::IndexedModel = match serde_json::from_str(&json) { + let model: clients_schema::IndexedModel = match serde_json::from_str(&json) { Ok(indexed_model) => indexed_model, Err(e) => bail!("cannot parse schema json: {}", e) }; - if let Some(flavor) = self.flavor { - if flavor != SchemaFlavor::All { - let filter: fn(&Option) -> bool = match flavor { - SchemaFlavor::All => |_| true, - SchemaFlavor::Stack => |a| { - // Generate public and private items for Stack - clients_schema::Flavor::Stack.available(a) - }, - SchemaFlavor::Serverless => |a| { - // Generate only public items for Serverless - clients_schema::Flavor::Serverless.visibility(a) == Some(Visibility::Public) - }, - }; - - use clients_schema::transform::*; - - model = expand_generics(model, ExpandConfig::default())?; - model = filter_availability(model, filter)?; - } - } + let flavor = match self.flavor { + Some(SchemaFlavor::All) | None => None, + Some(SchemaFlavor::Stack) => Some(Flavor::Stack), + Some(SchemaFlavor::Serverless) => Some(Flavor::Serverless), + }; - let openapi = clients_schema_to_openapi::convert_schema(&model)?; + let openapi = clients_schema_to_openapi::convert_schema(model, flavor)?; let output: Box = { if let Some(output) = self.output { diff --git a/compiler-rs/compiler-wasm-lib/pkg/compiler_wasm_lib_bg.wasm b/compiler-rs/compiler-wasm-lib/pkg/compiler_wasm_lib_bg.wasm index dbbc0fdd17..60822dfbc7 100644 Binary files a/compiler-rs/compiler-wasm-lib/pkg/compiler_wasm_lib_bg.wasm and b/compiler-rs/compiler-wasm-lib/pkg/compiler_wasm_lib_bg.wasm differ diff --git a/compiler-rs/compiler-wasm-lib/src/lib.rs b/compiler-rs/compiler-wasm-lib/src/lib.rs index f6109786cc..4402fcf0da 100644 --- a/compiler-rs/compiler-wasm-lib/src/lib.rs +++ b/compiler-rs/compiler-wasm-lib/src/lib.rs @@ -16,9 +16,8 @@ // under the License. use anyhow::bail; -use clients_schema::{Availabilities, Visibility}; +use clients_schema::{Flavor, IndexedModel}; use wasm_bindgen::prelude::*; -use clients_schema::transform::ExpandConfig; #[wasm_bindgen] pub fn convert_schema_to_openapi(json: &str, flavor: &str) -> Result { @@ -27,25 +26,15 @@ pub fn convert_schema_to_openapi(json: &str, flavor: &str) -> Result anyhow::Result { - let filter: Option) -> bool> = match flavor { + let flavor = match flavor { "all" => None, - "stack" => Some(|a| { - // Generate public and private items for Stack - clients_schema::Flavor::Stack.available(a) - }), - "serverless" => Some(|a| { - // Generate only public items for Serverless - clients_schema::Flavor::Serverless.visibility(a) == Some(Visibility::Public) - }), + "stack" => Some(Flavor::Stack), + "serverless" => Some(Flavor::Serverless), _ => bail!("Unknown flavor {}", flavor), }; - let mut schema = clients_schema::IndexedModel::from_reader(json.as_bytes())?; - schema = clients_schema::transform::expand_generics(schema, ExpandConfig::default())?; - if let Some(filter) = filter { - schema = clients_schema::transform::filter_availability(schema, filter)?; - } - let openapi = clients_schema_to_openapi::convert_schema(&schema)?; + let schema = IndexedModel::from_reader(json.as_bytes())?; + let openapi = clients_schema_to_openapi::convert_schema(schema, flavor)?; let result = serde_json::to_string_pretty(&openapi)?; Ok(result) } diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 0b9c849d54..c44eb032dc 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -5417,103 +5417,6 @@ "x-beta": true } }, - "/_connector/{connector_id}/_last_sync": { - "put": { - "tags": [ - "connector" - ], - "summary": "Update the connector last sync stats", - "description": "Update the fields related to the last sync of a connector.\nThis action is used for analytics and monitoring.", - "operationId": "connector-last-sync", - "parameters": [ - { - "in": "path", - "name": "connector_id", - "description": "The unique identifier of the connector to be updated", - "required": true, - "deprecated": false, - "schema": { - "$ref": "#/components/schemas/_types.Id" - }, - "style": "simple" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "last_access_control_sync_error": { - "type": "string" - }, - "last_access_control_sync_scheduled_at": { - "$ref": "#/components/schemas/_types.DateTime" - }, - "last_access_control_sync_status": { - "$ref": "#/components/schemas/connector._types.SyncStatus" - }, - "last_deleted_document_count": { - "type": "number" - }, - "last_incremental_sync_scheduled_at": { - "$ref": "#/components/schemas/_types.DateTime" - }, - "last_indexed_document_count": { - "type": "number" - }, - "last_seen": { - "$ref": "#/components/schemas/_types.DateTime" - }, - "last_sync_error": { - "type": "string" - }, - "last_sync_scheduled_at": { - "$ref": "#/components/schemas/_types.DateTime" - }, - "last_sync_status": { - "$ref": "#/components/schemas/connector._types.SyncStatus" - }, - "last_synced": { - "$ref": "#/components/schemas/_types.DateTime" - }, - "sync_cursor": { - "type": "object" - } - } - }, - "examples": { - "ConnectorUpdateLastSyncRequestExample1": { - "value": "{\n \"last_access_control_sync_error\": \"Houston, we have a problem!\",\n \"last_access_control_sync_scheduled_at\": \"2023-11-09T15:13:08.231Z\",\n \"last_access_control_sync_status\": \"pending\",\n \"last_deleted_document_count\": 42,\n \"last_incremental_sync_scheduled_at\": \"2023-11-09T15:13:08.231Z\",\n \"last_indexed_document_count\": 42,\n \"last_sync_error\": \"Houston, we have a problem!\",\n \"last_sync_scheduled_at\": \"2024-11-09T15:13:08.231Z\",\n \"last_sync_status\": \"completed\",\n \"last_synced\": \"2024-11-09T15:13:08.231Z\"\n}" - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "result": { - "$ref": "#/components/schemas/_types.Result" - } - }, - "required": [ - "result" - ] - } - } - } - } - }, - "x-state": "Technical preview" - } - }, "/_connector": { "get": { "tags": [ @@ -7795,16 +7698,6 @@ }, "style": "simple" }, - { - "in": "query", - "name": "force_synthetic_source", - "description": "Indicates whether the request forces synthetic `_source`.\nUse this paramater to test if the mapping supports synthetic `_source` and to get a sense of the worst case performance.\nFetches with this parameter enabled will be slower than enabling synthetic source natively in the index.", - "deprecated": false, - "schema": { - "type": "boolean" - }, - "style": "form" - }, { "in": "query", "name": "preference", @@ -20989,9 +20882,6 @@ "description": "Get multiple JSON documents by ID from one or more indices.\nIf you specify an index in the request URI, you only need to specify the document IDs in the request body.\nTo ensure fast responses, this multi get (mget) API responds with partial results if one or more shards fail.\n\n**Filter source fields**\n\nBy default, the `_source` field is returned for every document (if stored).\nUse the `_source` and `_source_include` or `source_exclude` attributes to filter what fields are returned for a particular document.\nYou can include the `_source`, `_source_includes`, and `_source_excludes` query parameters in the request URI to specify the defaults to use when there are no per-document instructions.\n\n**Get stored fields**\n\nUse the `stored_fields` attribute to specify the set of stored fields you want to retrieve.\nAny requested fields that are not stored are ignored.\nYou can include the `stored_fields` query parameter in the request URI to specify the defaults to use when there are no per-document instructions.", "operationId": "mget", "parameters": [ - { - "$ref": "#/components/parameters/mget-force_synthetic_source" - }, { "$ref": "#/components/parameters/mget-preference" }, @@ -21035,9 +20925,6 @@ "description": "Get multiple JSON documents by ID from one or more indices.\nIf you specify an index in the request URI, you only need to specify the document IDs in the request body.\nTo ensure fast responses, this multi get (mget) API responds with partial results if one or more shards fail.\n\n**Filter source fields**\n\nBy default, the `_source` field is returned for every document (if stored).\nUse the `_source` and `_source_include` or `source_exclude` attributes to filter what fields are returned for a particular document.\nYou can include the `_source`, `_source_includes`, and `_source_excludes` query parameters in the request URI to specify the defaults to use when there are no per-document instructions.\n\n**Get stored fields**\n\nUse the `stored_fields` attribute to specify the set of stored fields you want to retrieve.\nAny requested fields that are not stored are ignored.\nYou can include the `stored_fields` query parameter in the request URI to specify the defaults to use when there are no per-document instructions.", "operationId": "mget-1", "parameters": [ - { - "$ref": "#/components/parameters/mget-force_synthetic_source" - }, { "$ref": "#/components/parameters/mget-preference" }, @@ -21086,9 +20973,6 @@ { "$ref": "#/components/parameters/mget-index" }, - { - "$ref": "#/components/parameters/mget-force_synthetic_source" - }, { "$ref": "#/components/parameters/mget-preference" }, @@ -21135,9 +21019,6 @@ { "$ref": "#/components/parameters/mget-index" }, - { - "$ref": "#/components/parameters/mget-force_synthetic_source" - }, { "$ref": "#/components/parameters/mget-preference" }, @@ -27446,221 +27327,6 @@ "x-state": "Added in 5.4.0" } }, - "/_ml/anomaly_detectors/_validate": { - "post": { - "tags": [ - "ml anomaly" - ], - "summary": "Validate an anomaly detection job", - "operationId": "ml-validate", - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "job_id": { - "$ref": "#/components/schemas/_types.Id" - }, - "analysis_config": { - "$ref": "#/components/schemas/ml._types.AnalysisConfig" - }, - "analysis_limits": { - "$ref": "#/components/schemas/ml._types.AnalysisLimits" - }, - "data_description": { - "$ref": "#/components/schemas/ml._types.DataDescription" - }, - "description": { - "type": "string" - }, - "model_plot": { - "$ref": "#/components/schemas/ml._types.ModelPlotConfig" - }, - "model_snapshot_id": { - "$ref": "#/components/schemas/_types.Id" - }, - "model_snapshot_retention_days": { - "type": "number" - }, - "results_index_name": { - "$ref": "#/components/schemas/_types.IndexName" - } - } - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/_types.AcknowledgedResponseBase" - } - } - } - } - }, - "x-state": "Added in 6.3.0" - } - }, - "/_ml/anomaly_detectors/_validate/detector": { - "post": { - "tags": [ - "ml anomaly" - ], - "summary": "Validate an anomaly detection job", - "operationId": "ml-validate-detector", - "requestBody": { - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ml._types.Detector" - } - } - }, - "required": true - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/_types.AcknowledgedResponseBase" - } - } - } - } - }, - "x-state": "Added in 5.4.0" - } - }, - "/_monitoring/bulk": { - "put": { - "tags": [ - "monitoring" - ], - "summary": "Send monitoring data", - "description": "This API is used by the monitoring features to send monitoring data.", - "operationId": "monitoring-bulk-1", - "parameters": [ - { - "$ref": "#/components/parameters/monitoring.bulk-system_id" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-system_api_version" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-interval" - } - ], - "requestBody": { - "$ref": "#/components/requestBodies/monitoring.bulk" - }, - "responses": { - "200": { - "$ref": "#/components/responses/monitoring.bulk-200" - } - }, - "x-state": "Added in 6.3.0" - }, - "post": { - "tags": [ - "monitoring" - ], - "summary": "Send monitoring data", - "description": "This API is used by the monitoring features to send monitoring data.", - "operationId": "monitoring-bulk", - "parameters": [ - { - "$ref": "#/components/parameters/monitoring.bulk-system_id" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-system_api_version" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-interval" - } - ], - "requestBody": { - "$ref": "#/components/requestBodies/monitoring.bulk" - }, - "responses": { - "200": { - "$ref": "#/components/responses/monitoring.bulk-200" - } - }, - "x-state": "Added in 6.3.0" - } - }, - "/_monitoring/{type}/bulk": { - "put": { - "tags": [ - "monitoring" - ], - "summary": "Send monitoring data", - "description": "This API is used by the monitoring features to send monitoring data.", - "operationId": "monitoring-bulk-3", - "parameters": [ - { - "$ref": "#/components/parameters/monitoring.bulk-type" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-system_id" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-system_api_version" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-interval" - } - ], - "requestBody": { - "$ref": "#/components/requestBodies/monitoring.bulk" - }, - "responses": { - "200": { - "$ref": "#/components/responses/monitoring.bulk-200" - } - }, - "x-state": "Added in 6.3.0" - }, - "post": { - "tags": [ - "monitoring" - ], - "summary": "Send monitoring data", - "description": "This API is used by the monitoring features to send monitoring data.", - "operationId": "monitoring-bulk-2", - "parameters": [ - { - "$ref": "#/components/parameters/monitoring.bulk-type" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-system_id" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-system_api_version" - }, - { - "$ref": "#/components/parameters/monitoring.bulk-interval" - } - ], - "requestBody": { - "$ref": "#/components/requestBodies/monitoring.bulk" - }, - "responses": { - "200": { - "$ref": "#/components/responses/monitoring.bulk-200" - } - }, - "x-state": "Added in 6.3.0" - } - }, "/_msearch": { "get": { "tags": [ @@ -30876,9 +30542,6 @@ }, { "$ref": "#/components/parameters/search-sort" - }, - { - "$ref": "#/components/parameters/search-force_synthetic_source" } ], "requestBody": { @@ -31029,9 +30692,6 @@ }, { "$ref": "#/components/parameters/search-sort" - }, - { - "$ref": "#/components/parameters/search-force_synthetic_source" } ], "requestBody": { @@ -31187,9 +30847,6 @@ }, { "$ref": "#/components/parameters/search-sort" - }, - { - "$ref": "#/components/parameters/search-force_synthetic_source" } ], "requestBody": { @@ -31343,9 +31000,6 @@ }, { "$ref": "#/components/parameters/search-sort" - }, - { - "$ref": "#/components/parameters/search-force_synthetic_source" } ], "requestBody": { @@ -39068,122 +38722,6 @@ "x-state": "Added in 7.12.0" } }, - "/_snapshot/{repository}/_verify_integrity": { - "post": { - "tags": [ - "snapshot" - ], - "summary": "Verify the repository integrity", - "description": "Verify the integrity of the contents of a snapshot repository.\n\nThis API enables you to perform a comprehensive check of the contents of a repository, looking for any anomalies in its data or metadata which might prevent you from restoring snapshots from the repository or which might cause future snapshot create or delete operations to fail.\n\nIf you suspect the integrity of the contents of one of your snapshot repositories, cease all write activity to this repository immediately, set its `read_only` option to `true`, and use this API to verify its integrity.\nUntil you do so:\n\n* It may not be possible to restore some snapshots from this repository.\n* Searchable snapshots may report errors when searched or may have unassigned shards.\n* Taking snapshots into this repository may fail or may appear to succeed but have created a snapshot which cannot be restored.\n* Deleting snapshots from this repository may fail or may appear to succeed but leave the underlying data on disk.\n* Continuing to write to the repository while it is in an invalid state may causing additional damage to its contents.\n\nIf the API finds any problems with the integrity of the contents of your repository, Elasticsearch will not be able to repair the damage.\nThe only way to bring the repository back into a fully working state after its contents have been damaged is by restoring its contents from a repository backup which was taken before the damage occurred.\nYou must also identify what caused the damage and take action to prevent it from happening again.\n\nIf you cannot restore a repository backup, register a new repository and use this for all future snapshot operations.\nIn some cases it may be possible to recover some of the contents of a damaged repository, either by restoring as many of its snapshots as needed and taking new snapshots of the restored data, or by using the reindex API to copy data from any searchable snapshots mounted from the damaged repository.\n\nAvoid all operations which write to the repository while the verify repository integrity API is running.\nIf something changes the repository contents while an integrity verification is running then Elasticsearch may incorrectly report having detected some anomalies in its contents due to the concurrent writes.\nIt may also incorrectly fail to report some anomalies that the concurrent writes prevented it from detecting.\n\nNOTE: This API is intended for exploratory use by humans. You should expect the request parameters and the response format to vary in future versions.\n\nNOTE: This API may not work correctly in a mixed-version cluster.\n\nThe default values for the parameters of this API are designed to limit the impact of the integrity verification on other activities in your cluster.\nFor instance, by default it will only use at most half of the `snapshot_meta` threads to verify the integrity of each snapshot, allowing other snapshot operations to use the other half of this thread pool.\nIf you modify these parameters to speed up the verification process, you risk disrupting other snapshot-related operations in your cluster.\nFor large repositories, consider setting up a separate single-node Elasticsearch cluster just for running the integrity verification API.\n\nThe response exposes implementation details of the analysis which may change from version to version.\nThe response body format is therefore not considered stable and may be different in newer versions.", - "operationId": "snapshot-repository-verify-integrity", - "parameters": [ - { - "in": "path", - "name": "repository", - "description": "The name of the snapshot repository.", - "required": true, - "deprecated": false, - "schema": { - "$ref": "#/components/schemas/_types.Names" - }, - "style": "simple" - }, - { - "in": "query", - "name": "blob_thread_pool_concurrency", - "description": "If `verify_blob_contents` is `true`, this parameter specifies how many blobs to verify at once.", - "deprecated": false, - "schema": { - "type": "number" - }, - "style": "form" - }, - { - "in": "query", - "name": "index_snapshot_verification_concurrency", - "description": "The maximum number of index snapshots to verify concurrently within each index verification.", - "deprecated": false, - "schema": { - "type": "number" - }, - "style": "form" - }, - { - "in": "query", - "name": "index_verification_concurrency", - "description": "The number of indices to verify concurrently.\nThe default behavior is to use the entire `snapshot_meta` thread pool.", - "deprecated": false, - "schema": { - "type": "number" - }, - "style": "form" - }, - { - "in": "query", - "name": "max_bytes_per_sec", - "description": "If `verify_blob_contents` is `true`, this parameter specifies the maximum amount of data that Elasticsearch will read from the repository every second.", - "deprecated": false, - "schema": { - "type": "string" - }, - "style": "form" - }, - { - "in": "query", - "name": "max_failed_shard_snapshots", - "description": "The number of shard snapshot failures to track during integrity verification, in order to avoid excessive resource usage.\nIf your repository contains more than this number of shard snapshot failures, the verification will fail.", - "deprecated": false, - "schema": { - "type": "number" - }, - "style": "form" - }, - { - "in": "query", - "name": "meta_thread_pool_concurrency", - "description": "The maximum number of snapshot metadata operations to run concurrently.\nThe default behavior is to use at most half of the `snapshot_meta` thread pool at once.", - "deprecated": false, - "schema": { - "type": "number" - }, - "style": "form" - }, - { - "in": "query", - "name": "snapshot_verification_concurrency", - "description": "The number of snapshots to verify concurrently.\nThe default behavior is to use at most half of the `snapshot_meta` thread pool at once.", - "deprecated": false, - "schema": { - "type": "number" - }, - "style": "form" - }, - { - "in": "query", - "name": "verify_blob_contents", - "description": "Indicates whether to verify the checksum of every data blob in the repository.\nIf this feature is enabled, Elasticsearch will read the entire repository contents, which may be extremely slow and expensive.", - "deprecated": false, - "schema": { - "type": "boolean" - }, - "style": "form" - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "object" - } - } - } - } - }, - "x-state": "Technical preview" - } - }, "/_snapshot/{repository}/{snapshot}/_restore": { "post": { "tags": [ @@ -68912,8 +68450,7 @@ "type": "string", "enum": [ "true", - "false", - "auto" + "false" ] }, "_types.mapping.PassthroughObjectProperty": { @@ -102894,37 +102431,6 @@ } } }, - "monitoring.bulk-200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "error": { - "$ref": "#/components/schemas/_types.ErrorCause" - }, - "errors": { - "description": "True if there is was an error", - "type": "boolean" - }, - "ignored": { - "description": "Was collection disabled?", - "type": "boolean" - }, - "took": { - "type": "number" - } - }, - "required": [ - "errors", - "ignored", - "took" - ] - } - } - } - }, "msearch-200": { "description": "", "content": { @@ -110522,16 +110028,6 @@ }, "style": "simple" }, - "mget-force_synthetic_source": { - "in": "query", - "name": "force_synthetic_source", - "description": "Should this request force synthetic _source?\nUse this to test if the mapping supports synthetic _source and to get a sense of the worst case performance.\nFetches with this enabled will be slower the enabling synthetic source natively in the index.", - "deprecated": false, - "schema": { - "type": "boolean" - }, - "style": "form" - }, "mget-preference": { "in": "query", "name": "preference", @@ -111696,50 +111192,6 @@ }, "style": "form" }, - "monitoring.bulk-type": { - "in": "path", - "name": "type", - "description": "Default document type for items which don't provide one", - "required": true, - "deprecated": true, - "schema": { - "type": "string" - }, - "style": "simple" - }, - "monitoring.bulk-system_id": { - "in": "query", - "name": "system_id", - "description": "Identifier of the monitored system", - "required": true, - "deprecated": false, - "schema": { - "type": "string" - }, - "style": "form" - }, - "monitoring.bulk-system_api_version": { - "in": "query", - "name": "system_api_version", - "description": "", - "required": true, - "deprecated": false, - "schema": { - "type": "string" - }, - "style": "form" - }, - "monitoring.bulk-interval": { - "in": "query", - "name": "interval", - "description": "Collection interval (e.g., '10s' or '10000ms') of the payload", - "required": true, - "deprecated": false, - "schema": { - "$ref": "#/components/schemas/_types.Duration" - }, - "style": "form" - }, "msearch-index": { "in": "path", "name": "index", @@ -113040,16 +112492,6 @@ }, "style": "form" }, - "search-force_synthetic_source": { - "in": "query", - "name": "force_synthetic_source", - "description": "Should this request force synthetic _source?\nUse this to test if the mapping supports synthetic _source and to get a sense of the worst case performance.\nFetches with this enabled will be slower the enabling synthetic source natively in the index.", - "deprecated": false, - "schema": { - "type": "boolean" - }, - "style": "form" - }, "search_application.get_behavioral_analytics-name": { "in": "path", "name": "name", @@ -116509,29 +115951,6 @@ } } }, - "monitoring.bulk": { - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/components/schemas/_global.bulk.OperationContainer" - }, - { - "$ref": "#/components/schemas/_global.bulk.UpdateAction" - }, - { - "type": "object" - } - ] - } - } - } - }, - "required": true - }, "msearch": { "content": { "application/json": {