Update object API
editUpdate object API
editDeprecated in 8.7.0.
To be removed in an upcoming version
Update the attributes for existing Kibana saved objects.
Request
editPUT <kibana host>:<port>/api/saved_objects/<type>/<id>
PUT <kibana host>:<port>/s/<space_id>/api/saved_objects/<type>/<id>
Path parameters
edit-
space_id
-
(Optional, string) An identifier for the space. If
space_id
is not provided in the URL, the default space is used. -
type
-
(Required, string) Valid options include
visualization
,dashboard
,search
,index-pattern
,config
. -
id
- (Required, string) The object ID to update.
Request body
edit-
attributes
-
(Required, object) The data to persist.
When you update, attributes are not validated, which allows you to pass arbitrary and ill-formed data into the API and break Kibana. Make sure any data that you send to the API is properly formed.
-
references
-
(Optional, array) Objects with
name
,id
, andtype
properties that describe the other saved objects this object references. To refer to the other saved object, usename
in the attributes, but never theid
, which automatically updates during migrations or import/export. -
upsert
- (Optional, object) If specified, will create the document with the given upsert attributes if it doesn’t exist.
Response code
edit-
200
- Indicates a successful call.
-
404
- Indicates the object was not found.
-
409
- Indicates a conflict error.
Example
editUpdate an existing data view object,my-pattern
, with a different title:
$ curl -X PUT api/index_patterns/index-pattern/my-pattern { "attributes": { "title": "some-other-pattern-*" } }
The API returns the following:
{ "id": "my-pattern", "type": "index-pattern", "version": 2, "attributes": { "title": "some-other-pattern-*" } }
Conflict errors
editStarting in Kibana 8.0, saved objects can exist in multiple spaces. As a result, you may encounter a 409 alias conflict error when using
the upsert
option. The Update API response is limited and does not include additional metadata. You can get more details about this error
by using the Bulk create API instead.