diff --git a/output/openapi/elasticsearch-openapi.json b/output/openapi/elasticsearch-openapi.json index 28aec4f682..fb84ffd978 100644 --- a/output/openapi/elasticsearch-openapi.json +++ b/output/openapi/elasticsearch-openapi.json @@ -14751,7 +14751,7 @@ "$ref": "#/components/responses/inference.get#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "put": { "tags": [ @@ -14772,7 +14772,7 @@ "$ref": "#/components/responses/inference.put#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "post": { "tags": [ @@ -14796,7 +14796,7 @@ "$ref": "#/components/responses/inference.inference#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "delete": { "tags": [ @@ -14820,7 +14820,7 @@ "$ref": "#/components/responses/inference.delete#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" } }, "/_inference/{task_type}/{inference_id}": { @@ -14843,7 +14843,7 @@ "$ref": "#/components/responses/inference.get#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "put": { "tags": [ @@ -14867,7 +14867,7 @@ "$ref": "#/components/responses/inference.put#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "post": { "tags": [ @@ -14894,7 +14894,7 @@ "$ref": "#/components/responses/inference.inference#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "delete": { "tags": [ @@ -14921,7 +14921,7 @@ "$ref": "#/components/responses/inference.delete#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" } }, "/_inference": { @@ -14936,7 +14936,7 @@ "$ref": "#/components/responses/inference.get#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" } }, "/": { @@ -80381,7 +80381,14 @@ "type": "number" }, "rule_criteria_types_counts": { - "description": "A map of criteria type to the number of rules of that type", + "description": "A map of criteria type (e.g. exact) to the number of rules of that type", + "type": "object", + "additionalProperties": { + "type": "number" + } + }, + "rule_type_counts": { + "description": "A map of rule type (e.g. pinned) to the number of rules of that type", "type": "object", "additionalProperties": { "type": "number" @@ -80391,7 +80398,8 @@ "required": [ "ruleset_id", "rule_total_count", - "rule_criteria_types_counts" + "rule_criteria_types_counts", + "rule_type_counts" ] }, "query_rules.test:QueryRulesetMatchedRule": { @@ -82149,6 +82157,9 @@ "description": "Optional description of the role descriptor", "type": "string" }, + "restriction": { + "$ref": "#/components/schemas/security._types:Restriction" + }, "transient_metadata": { "type": "object", "additionalProperties": { @@ -82506,6 +82517,33 @@ "resources" ] }, + "security._types:Restriction": { + "type": "object", + "properties": { + "workflows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/security._types:RestrictionWorkflow" + } + } + }, + "required": [ + "workflows" + ] + }, + "security._types:RestrictionWorkflow": { + "anyOf": [ + { + "type": "string", + "enum": [ + "search_application_query" + ] + }, + { + "type": "string" + } + ] + }, "security._types:RealmInfo": { "type": "object", "properties": { @@ -82961,6 +82999,9 @@ "description": "Optional description of the role descriptor", "type": "string" }, + "restriction": { + "$ref": "#/components/schemas/security._types:Restriction" + }, "transient_metadata": { "type": "object", "additionalProperties": { diff --git a/output/openapi/elasticsearch-serverless-openapi.json b/output/openapi/elasticsearch-serverless-openapi.json index 6fbd28e689..c81e5061fa 100644 --- a/output/openapi/elasticsearch-serverless-openapi.json +++ b/output/openapi/elasticsearch-serverless-openapi.json @@ -8510,7 +8510,7 @@ "$ref": "#/components/responses/inference.get#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "put": { "tags": [ @@ -8531,7 +8531,7 @@ "$ref": "#/components/responses/inference.put#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "post": { "tags": [ @@ -8555,7 +8555,7 @@ "$ref": "#/components/responses/inference.inference#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "delete": { "tags": [ @@ -8579,7 +8579,7 @@ "$ref": "#/components/responses/inference.delete#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" } }, "/_inference/{task_type}/{inference_id}": { @@ -8602,7 +8602,7 @@ "$ref": "#/components/responses/inference.get#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "put": { "tags": [ @@ -8626,7 +8626,7 @@ "$ref": "#/components/responses/inference.put#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "post": { "tags": [ @@ -8653,7 +8653,7 @@ "$ref": "#/components/responses/inference.inference#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" }, "delete": { "tags": [ @@ -8680,7 +8680,7 @@ "$ref": "#/components/responses/inference.delete#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" } }, "/_inference": { @@ -8695,7 +8695,7 @@ "$ref": "#/components/responses/inference.get#200" } }, - "x-state": "Technical preview" + "x-state": "Added in 8.11.0" } }, "/": { @@ -17129,18 +17129,11 @@ "items": { "$ref": "#/components/schemas/_types:IndexName" } - }, - "remote_cluster": { - "type": "array", - "items": { - "$ref": "#/components/schemas/security._types:RemoteClusterPrivilege" - } } }, "required": [ "cluster", - "index", - "remote_cluster" + "index" ] } } @@ -52815,7 +52808,14 @@ "type": "number" }, "rule_criteria_types_counts": { - "description": "A map of criteria type to the number of rules of that type", + "description": "A map of criteria type (e.g. exact) to the number of rules of that type", + "type": "object", + "additionalProperties": { + "type": "number" + } + }, + "rule_type_counts": { + "description": "A map of rule type (e.g. pinned) to the number of rules of that type", "type": "object", "additionalProperties": { "type": "number" @@ -52825,7 +52825,8 @@ "required": [ "ruleset_id", "rule_total_count", - "rule_criteria_types_counts" + "rule_criteria_types_counts", + "rule_type_counts" ] }, "query_rules.test:QueryRulesetMatchedRule": { @@ -53667,6 +53668,9 @@ "description": "Optional description of the role descriptor", "type": "string" }, + "restriction": { + "$ref": "#/components/schemas/security._types:Restriction" + }, "transient_metadata": { "type": "object", "additionalProperties": { @@ -53876,6 +53880,33 @@ "resources" ] }, + "security._types:Restriction": { + "type": "object", + "properties": { + "workflows": { + "type": "array", + "items": { + "$ref": "#/components/schemas/security._types:RestrictionWorkflow" + } + } + }, + "required": [ + "workflows" + ] + }, + "security._types:RestrictionWorkflow": { + "anyOf": [ + { + "type": "string", + "enum": [ + "search_application_query" + ] + }, + { + "type": "string" + } + ] + }, "security._types:RealmInfo": { "type": "object", "properties": { @@ -53905,9 +53936,6 @@ "name" ] }, - "security._types:RemoteClusterPrivilege": { - "type": "string" - }, "security.get_role:Role": { "type": "object", "properties": { diff --git a/output/schema/schema-serverless.json b/output/schema/schema-serverless.json index 47a1b2cbed..a74bca737c 100644 --- a/output/schema/schema-serverless.json +++ b/output/schema/schema-serverless.json @@ -4143,12 +4143,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -4185,12 +4185,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -4233,12 +4233,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -4278,12 +4278,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -39159,20 +39159,6 @@ } } } - }, - { - "name": "remote_cluster", - "required": true, - "type": { - "kind": "array_of", - "value": { - "kind": "instance_of", - "type": { - "name": "RemoteClusterPrivilege", - "namespace": "security._types" - } - } - } } ] }, @@ -39181,7 +39167,7 @@ "name": "Response", "namespace": "security.get_builtin_privileges" }, - "specLocation": "security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts#L26-L32" + "specLocation": "security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts#L26-L35" }, { "attachedBehaviors": [ @@ -39739,7 +39725,7 @@ } } ], - "specLocation": "security/put_role/SecurityPutRoleRequest.ts#L32-L102" + "specLocation": "security/put_role/SecurityPutRoleRequest.ts#L32-L101" }, { "body": { @@ -103066,7 +103052,7 @@ "name": "IndexPrivilege", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L362-L404" + "specLocation": "security/_types/Privileges.ts#L361-L403" }, { "codegenNames": [ @@ -103080,7 +103066,7 @@ "name": "IndicesPrivilegesQuery", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L317-L325", + "specLocation": "security/_types/Privileges.ts#L316-L324", "type": { "items": [ { @@ -103130,7 +103116,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L327-L337" + "specLocation": "security/_types/Privileges.ts#L326-L336" }, { "kind": "interface", @@ -103218,7 +103204,7 @@ } ], "shortcutProperty": "source", - "specLocation": "security/_types/Privileges.ts#L339-L357" + "specLocation": "security/_types/Privileges.ts#L338-L356" }, { "codegenNames": [ @@ -103230,7 +103216,7 @@ "name": "RoleTemplateInlineQuery", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L359-L360", + "specLocation": "security/_types/Privileges.ts#L358-L359", "type": { "items": [ { @@ -103258,7 +103244,21 @@ "name": "RemoteClusterPrivilege", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L201-L214" + "specLocation": "security/_types/Privileges.ts#L201-L213" + }, + { + "isOpen": true, + "kind": "enum", + "members": [ + { + "name": "search_application_query" + } + ], + "name": { + "name": "RestrictionWorkflow", + "namespace": "security._types" + }, + "specLocation": "security/_types/RoleDescriptor.ts#L134-L137" }, { "kind": "enum", @@ -137714,7 +137714,7 @@ } }, { - "description": "A map of criteria type to the number of rules of that type", + "description": "A map of criteria type (e.g. exact) to the number of rules of that type", "name": "rule_criteria_types_counts", "required": true, "type": { @@ -137735,9 +137735,32 @@ } } } + }, + { + "description": "A map of rule type (e.g. pinned) to the number of rules of that type", + "name": "rule_type_counts", + "required": true, + "type": { + "key": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + }, + "kind": "dictionary_of", + "singleKey": false, + "value": { + "kind": "instance_of", + "type": { + "name": "integer", + "namespace": "_types" + } + } + } } ], - "specLocation": "query_rules/list_rulesets/types.ts#L23-L37" + "specLocation": "query_rules/list_rulesets/types.ts#L23-L42" }, { "kind": "interface", @@ -139676,6 +139699,18 @@ } } }, + { + "description": "Restriction for when the role descriptor is allowed to be effective.", + "name": "restriction", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "Restriction", + "namespace": "security._types" + } + } + }, { "name": "transient_metadata", "required": false, @@ -139695,7 +139730,7 @@ } } ], - "specLocation": "security/_types/RoleDescriptor.ts#L33-L79" + "specLocation": "security/_types/RoleDescriptor.ts#L33-L80" }, { "kind": "interface", @@ -139773,7 +139808,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L217-L243" + "specLocation": "security/_types/Privileges.ts#L216-L242" }, { "kind": "interface", @@ -139859,6 +139894,30 @@ ], "specLocation": "security/_types/Privileges.ts#L27-L40" }, + { + "kind": "interface", + "name": { + "name": "Restriction", + "namespace": "security._types" + }, + "properties": [ + { + "name": "workflows", + "required": true, + "type": { + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "RestrictionWorkflow", + "namespace": "security._types" + } + } + } + } + ], + "specLocation": "security/_types/RoleDescriptor.ts#L130-L132" + }, { "kind": "interface", "name": { diff --git a/output/schema/schema.json b/output/schema/schema.json index 0cb2eb99d0..7bbeaf0aec 100644 --- a/output/schema/schema.json +++ b/output/schema/schema.json @@ -8282,12 +8282,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -8324,12 +8324,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -8372,12 +8372,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -8417,12 +8417,12 @@ { "availability": { "serverless": { - "stability": "experimental", + "stability": "stable", "visibility": "public" }, "stack": { "since": "8.11.0", - "stability": "experimental", + "stability": "stable", "visibility": "public" } }, @@ -183775,7 +183775,7 @@ } }, { - "description": "A map of criteria type to the number of rules of that type", + "description": "A map of criteria type (e.g. exact) to the number of rules of that type", "name": "rule_criteria_types_counts", "required": true, "type": { @@ -183796,9 +183796,32 @@ } } } + }, + { + "description": "A map of rule type (e.g. pinned) to the number of rules of that type", + "name": "rule_type_counts", + "required": true, + "type": { + "kind": "dictionary_of", + "key": { + "kind": "instance_of", + "type": { + "name": "string", + "namespace": "_builtins" + } + }, + "singleKey": false, + "value": { + "kind": "instance_of", + "type": { + "name": "integer", + "namespace": "_types" + } + } + } } ], - "specLocation": "query_rules/list_rulesets/types.ts#L23-L37" + "specLocation": "query_rules/list_rulesets/types.ts#L23-L42" }, { "kind": "request", @@ -187596,7 +187619,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L410-L412" + "specLocation": "security/_types/Privileges.ts#L409-L411" }, { "kind": "interface", @@ -188121,7 +188144,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L406-L408" + "specLocation": "security/_types/Privileges.ts#L405-L407" }, { "kind": "enum", @@ -188234,7 +188257,7 @@ "name": "IndexPrivilege", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L362-L404" + "specLocation": "security/_types/Privileges.ts#L361-L403" }, { "kind": "interface", @@ -188328,7 +188351,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L217-L243" + "specLocation": "security/_types/Privileges.ts#L216-L242" }, { "kind": "type_alias", @@ -188342,7 +188365,7 @@ "name": "IndicesPrivilegesQuery", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L317-L325", + "specLocation": "security/_types/Privileges.ts#L316-L324", "type": { "kind": "union_of", "items": [ @@ -188392,7 +188415,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L414-L416" + "specLocation": "security/_types/Privileges.ts#L413-L415" }, { "kind": "interface", @@ -188450,7 +188473,7 @@ "name": "RemoteClusterPrivilege", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L201-L214" + "specLocation": "security/_types/Privileges.ts#L201-L213" }, { "kind": "interface", @@ -188488,7 +188511,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L279-L291" + "specLocation": "security/_types/Privileges.ts#L278-L290" }, { "kind": "interface", @@ -188595,7 +188618,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L245-L277" + "specLocation": "security/_types/Privileges.ts#L244-L276" }, { "kind": "interface", @@ -188645,7 +188668,45 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L418-L428" + "specLocation": "security/_types/Privileges.ts#L417-L427" + }, + { + "kind": "interface", + "name": { + "name": "Restriction", + "namespace": "security._types" + }, + "properties": [ + { + "name": "workflows", + "required": true, + "type": { + "kind": "array_of", + "value": { + "kind": "instance_of", + "type": { + "name": "RestrictionWorkflow", + "namespace": "security._types" + } + } + } + } + ], + "specLocation": "security/_types/RoleDescriptor.ts#L130-L132" + }, + { + "kind": "enum", + "isOpen": true, + "members": [ + { + "name": "search_application_query" + } + ], + "name": { + "name": "RestrictionWorkflow", + "namespace": "security._types" + }, + "specLocation": "security/_types/RoleDescriptor.ts#L134-L137" }, { "kind": "interface", @@ -188813,6 +188874,18 @@ } } }, + { + "description": "Restriction for when the role descriptor is allowed to be effective.", + "name": "restriction", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "Restriction", + "namespace": "security._types" + } + } + }, { "name": "transient_metadata", "required": false, @@ -188832,7 +188905,7 @@ } } ], - "specLocation": "security/_types/RoleDescriptor.ts#L33-L79" + "specLocation": "security/_types/RoleDescriptor.ts#L33-L80" }, { "kind": "interface", @@ -189020,6 +189093,18 @@ } } }, + { + "description": "Restriction for when the role descriptor is allowed to be effective.", + "name": "restriction", + "required": false, + "type": { + "kind": "instance_of", + "type": { + "name": "Restriction", + "namespace": "security._types" + } + } + }, { "name": "transient_metadata", "required": false, @@ -189039,7 +189124,7 @@ } } ], - "specLocation": "security/_types/RoleDescriptor.ts#L81-L124" + "specLocation": "security/_types/RoleDescriptor.ts#L82-L128" }, { "kind": "interface", @@ -189217,7 +189302,7 @@ "name": "RoleTemplateInlineQuery", "namespace": "security._types" }, - "specLocation": "security/_types/Privileges.ts#L359-L360", + "specLocation": "security/_types/Privileges.ts#L358-L359", "type": { "kind": "union_of", "items": [ @@ -189260,7 +189345,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L327-L337" + "specLocation": "security/_types/Privileges.ts#L326-L336" }, { "kind": "interface", @@ -189348,7 +189433,7 @@ } ], "shortcutProperty": "source", - "specLocation": "security/_types/Privileges.ts#L339-L357" + "specLocation": "security/_types/Privileges.ts#L338-L356" }, { "kind": "interface", @@ -189427,7 +189512,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L430-L450" + "specLocation": "security/_types/Privileges.ts#L429-L449" }, { "kind": "enum", @@ -189653,7 +189738,7 @@ } } ], - "specLocation": "security/_types/Privileges.ts#L293-L315" + "specLocation": "security/_types/Privileges.ts#L292-L314" }, { "kind": "interface", @@ -192669,6 +192754,11 @@ } }, { + "availability": { + "stack": { + "since": "8.15.0" + } + }, "name": "remote_cluster", "required": true, "type": { @@ -192688,7 +192778,7 @@ "name": "Response", "namespace": "security.get_builtin_privileges" }, - "specLocation": "security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts#L26-L32" + "specLocation": "security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts#L26-L35" }, { "kind": "request", @@ -195628,7 +195718,7 @@ } } ], - "specLocation": "security/put_role/SecurityPutRoleRequest.ts#L32-L102" + "specLocation": "security/put_role/SecurityPutRoleRequest.ts#L32-L101" }, { "kind": "response", diff --git a/output/typescript/types.ts b/output/typescript/types.ts index d3e345ef12..d76141c579 100644 --- a/output/typescript/types.ts +++ b/output/typescript/types.ts @@ -17246,6 +17246,7 @@ export interface QueryRulesListRulesetsQueryRulesetListItem { ruleset_id: Id rule_total_count: integer rule_criteria_types_counts: Record + rule_type_counts: Record } export interface QueryRulesListRulesetsRequest extends RequestBase { @@ -17755,6 +17756,12 @@ export interface SecurityReplicationAccess { allow_restricted_indices?: boolean } +export interface SecurityRestriction { + workflows: SecurityRestrictionWorkflow[] +} + +export type SecurityRestrictionWorkflow = 'search_application_query'| string + export interface SecurityRoleDescriptor { cluster?: SecurityClusterPrivilege[] indices?: SecurityIndicesPrivileges[] @@ -17766,6 +17773,7 @@ export interface SecurityRoleDescriptor { metadata?: Metadata run_as?: string[] description?: string + restriction?: SecurityRestriction transient_metadata?: Record } @@ -17780,6 +17788,7 @@ export interface SecurityRoleDescriptorRead { metadata?: Metadata run_as?: string[] description?: string + restriction?: SecurityRestriction transient_metadata?: Record } diff --git a/specification/inference/delete/DeleteRequest.ts b/specification/inference/delete/DeleteRequest.ts index e6ee9719e6..1a0d6c88bb 100644 --- a/specification/inference/delete/DeleteRequest.ts +++ b/specification/inference/delete/DeleteRequest.ts @@ -24,8 +24,8 @@ import { Id } from '@_types/common' /** * Delete an inference endpoint * @rest_spec_name inference.delete - * @availability stack since=8.11.0 stability=experimental visibility=public - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.11.0 stability=stable visibility=public + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { diff --git a/specification/inference/get/GetRequest.ts b/specification/inference/get/GetRequest.ts index b9d1d7b805..e3267babb3 100644 --- a/specification/inference/get/GetRequest.ts +++ b/specification/inference/get/GetRequest.ts @@ -24,8 +24,8 @@ import { Id } from '@_types/common' /** * Get an inference endpoint * @rest_spec_name inference.get - * @availability stack since=8.11.0 stability=experimental visibility=public - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.11.0 stability=stable visibility=public + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { diff --git a/specification/inference/inference/InferenceRequest.ts b/specification/inference/inference/InferenceRequest.ts index 297f419be5..1baf2cea39 100644 --- a/specification/inference/inference/InferenceRequest.ts +++ b/specification/inference/inference/InferenceRequest.ts @@ -26,8 +26,8 @@ import { Duration } from '@_types/Time' /** * Perform inference on the service * @rest_spec_name inference.inference - * @availability stack since=8.11.0 stability=experimental visibility=public - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.11.0 stability=stable visibility=public + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { diff --git a/specification/inference/put/PutRequest.ts b/specification/inference/put/PutRequest.ts index a3d23a93a1..be83f3ace8 100644 --- a/specification/inference/put/PutRequest.ts +++ b/specification/inference/put/PutRequest.ts @@ -25,8 +25,8 @@ import { Id } from '@_types/common' /** * Create an inference endpoint * @rest_spec_name inference.put - * @availability stack since=8.11.0 stability=experimental visibility=public - * @availability serverless stability=experimental visibility=public + * @availability stack since=8.11.0 stability=stable visibility=public + * @availability serverless stability=stable visibility=public */ export interface Request extends RequestBase { path_parts: { diff --git a/specification/query_rules/list_rulesets/types.ts b/specification/query_rules/list_rulesets/types.ts index fd50af5c33..1441eb6af6 100644 --- a/specification/query_rules/list_rulesets/types.ts +++ b/specification/query_rules/list_rulesets/types.ts @@ -31,7 +31,12 @@ export class QueryRulesetListItem { rule_total_count: integer /** - * A map of criteria type to the number of rules of that type + * A map of criteria type (e.g. exact) to the number of rules of that type */ rule_criteria_types_counts: Dictionary + + /** + * A map of rule type (e.g. pinned) to the number of rules of that type + */ + rule_type_counts: Dictionary } diff --git a/specification/security/_types/Privileges.ts b/specification/security/_types/Privileges.ts index 6836f8494e..6e8846e9d9 100644 --- a/specification/security/_types/Privileges.ts +++ b/specification/security/_types/Privileges.ts @@ -200,7 +200,6 @@ export enum ClusterPrivilege { /** * The subset of cluster level privileges that can be defined for remote clusters. - * @availability stack */ export enum RemoteClusterPrivilege { /** diff --git a/specification/security/_types/RoleDescriptor.ts b/specification/security/_types/RoleDescriptor.ts index ad8afe33a5..57ea1ac0ab 100644 --- a/specification/security/_types/RoleDescriptor.ts +++ b/specification/security/_types/RoleDescriptor.ts @@ -40,19 +40,16 @@ export class RoleDescriptor { * @aliases index */ indices?: IndicesPrivileges[] - /** * A list of indices permissions for remote clusters. * @availability stack since=8.14.0 */ remote_indices?: RemoteIndicesPrivileges[] - /** * A list of cluster permissions for remote clusters. Note - this is limited a subset of the cluster permissions. * @availability stack since=8.15.0 */ remote_cluster?: RemoteClusterPrivileges[] - /** * An object defining global privileges. A global privilege is a form of cluster privilege that is request-aware. Support for global privileges is currently limited to the management of application privileges. * @availability stack @@ -75,6 +72,10 @@ export class RoleDescriptor { * Optional description of the role descriptor */ description?: string + /** + * Restriction for when the role descriptor is allowed to be effective. + */ + restriction?: Restriction transient_metadata?: Dictionary } @@ -93,7 +94,6 @@ export class RoleDescriptorRead implements OverloadOf { * @availability stack since=8.14.0 */ remote_indices?: RemoteIndicesPrivileges[] - /** * A list of cluster permissions for remote clusters. Note - this is limited a subset of the cluster permissions. * @availability stack since=8.15.0 @@ -120,5 +120,18 @@ export class RoleDescriptorRead implements OverloadOf { * Optional description of the role descriptor */ description?: string + /** + * Restriction for when the role descriptor is allowed to be effective. + */ + restriction?: Restriction transient_metadata?: Dictionary } + +export class Restriction { + workflows: RestrictionWorkflow[] +} + +/** @non_exhaustive */ +export enum RestrictionWorkflow { + search_application_query +} diff --git a/specification/security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts b/specification/security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts index a1f81e913e..6d85ea8f21 100644 --- a/specification/security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts +++ b/specification/security/get_builtin_privileges/SecurityGetBuiltinPrivilegesResponse.ts @@ -27,6 +27,9 @@ export class Response { body: { cluster: ClusterPrivilege[] index: IndexName[] + /** + * @availability stack since=8.15.0 + */ remote_cluster: RemoteClusterPrivilege[] } } diff --git a/specification/security/put_role/SecurityPutRoleRequest.ts b/specification/security/put_role/SecurityPutRoleRequest.ts index 00726f27b8..5614e4b344 100644 --- a/specification/security/put_role/SecurityPutRoleRequest.ts +++ b/specification/security/put_role/SecurityPutRoleRequest.ts @@ -78,7 +78,6 @@ export interface Request extends RequestBase { /** * A list of remote cluster permissions entries. * @availability stack since=8.15.0 - * */ remote_cluster?: RemoteClusterPrivileges[] /**