批量更新对象 API
编辑批量更新对象 API编辑
已于 8.7.0 版本弃用。
将在未来版本中移除
更新多个现有 Kibana 已保存对象的属性。
有关最新 API 详细信息,请参阅开放 API 规范。
请求编辑
PUT <kibana 主机>:<端口>/api/saved_objects/_bulk_update
PUT <kibana 主机>:<端口>/s/<空间 ID>/api/saved_objects/_bulk_update
路径参数编辑
-
space_id
- (可选,字符串)空间标识符。如果 URL 中未提供
space_id
,则使用默认空间。
请求正文编辑
-
type
- (必填,字符串)有效选项包括
visualization
、dashboard
、search
、index-pattern
、config
。 -
id
- (必填,字符串)要更新的对象 ID。
-
attributes
-
(必填,对象)要持久化的数据。
更新时,不会验证属性,这允许您将任意和格式错误的数据传递到 API 中并破坏 Kibana。请确保发送到 API 的任何数据都格式正确。
-
references
- (可选,数组)具有
name
、id
和type
属性的对象,这些属性描述了此对象引用的其他已保存对象。要引用其他已保存对象,请在属性中使用name
,而不要使用id
,后者会在迁移或导入/导出期间自动更新。 -
version
- (可选,数字)确保版本与持久化对象的版本匹配。
-
namespace
- (可选,字符串)要在其中更新此对象的命名空间的标识符。如果定义了此项,它将取代 URL 中的命名空间 ID。
响应代码编辑
-
200
- 表示调用成功。请注意,此 HTTP 响应代码表示批量操作成功。与单个对象相关的错误将在响应正文中返回。有关详细信息,请参阅下面的示例。
示例编辑
更新三个已保存对象,其中一个不存在
$ curl -X PUT api/saved_objects/_bulk_update [ { type: 'visualization', id: 'not an id', attributes: { title: 'An existing visualization', }, }, { type: 'dashboard', id: 'be3733a0-9efe-11e7-acb3-3dab96693fab', attributes: { title: 'An existing dashboard', }, { type: 'index-pattern', id: 'logstash-*', attributes: { title: 'my-logstash-pattern' } } ]
API 返回以下内容
[ { "type": "visualization", "id": "not an id", "error": { "statusCode": 404, "error": "Not Found", "message": "Saved object [visualization/not an id] not found", }, }, { "type": "dashboard", "id": "be3733a0-9efe-11e7-acb3-3dab96693fab", "version": 2, "attributes": { "title": "An existing dashboard", }, }, { "type": "index-pattern", "id": "logstash-*", "attributes": { "title": "my-logstash-pattern", } } ]