Update object API

edit

Deprecated in 8.7.0.

To be removed in an upcoming version

Update the attributes for existing Kibana saved objects.

Request

edit

PUT <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, and type properties that describe the other saved objects this object references. To refer to the other saved object, use name in the attributes, but never the id, 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

edit

Update 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

edit

Starting 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.