[[saved-objects-api-bulk-get]]
=== Bulk get objects API
++++
<titleabbrev>Bulk get objects</titleabbrev>
++++

deprecated::[8.7.0, To be removed in an upcoming version]

Retrieve multiple {kib} saved objects by ID.

[[saved-objects-api-bulk-get-request]]
==== Request

`POST <kibana host>:<port>/api/saved_objects/_bulk_get`

`POST <kibana host>:<port>/s/<space_id>/api/saved_objects/_bulk_get`

[[saved-objects-api-bulk-get-path-params]]
==== Path parameters

`space_id`::
  (Optional, string) An identifier for the space. If `space_id` is not provided in the URL, the default space is used.

[[saved-objects-api-bulk-get-request-body]]
==== Request Body

`type`::
  (Required, string) Valid options include `visualization`, `dashboard`, `search`, `index-pattern`, `config`.

`id`::
  (Required, string) ID of the retrieved object. The ID includes the {kib} unique identifier or a custom identifier.

`fields`::
  (Optional, array) The fields to return in the `attributes` key of the object response.

`namespaces`::
  (Optional, string array) Identifiers for the <<xpack-spaces,spaces>> in which to search for this object. If this is provided, the object
  is searched for only in the explicitly defined spaces. If this is not provided, the object is searched for in the current space (default
  behavior).
* For shareable object types (registered with `namespaceType: 'multiple'`): this option can be used to specify one or more spaces, including
the "All spaces" identifier (`'*'`).
* For isolated object types (registered with `namespaceType: 'single'` or `namespaceType: 'multiple-isolated'`): this option can only be
used to specify a single space, and the "All spaces" identifier (`'*'`) is not allowed.
* For global object types (registered with `namespaceType: 'agnostic'`): this option cannot be used.

[[saved-objects-api-bulk-get-response-body]]
==== Response body

`saved_objects`::
  (array) Top-level property containing objects that represent the response for each of the requested objects. The order of the objects in the response is identical to the order of the objects in the request.

Saved objects that are unable to persist are replaced with an error object.

[[saved-objects-api-bulk-get-body-codes]]
==== Response code

`200`::
  Indicates a successful call. Note, this HTTP response code indicates that the bulk operation succeeded. Errors pertaining to individual
  objects will be returned in the response body. See the example below for details.

[[saved-objects-api-bulk-get-body-example]]
==== Example

Retrieve a {data-source} with the `my-pattern` ID, and a dashboard with the `my-dashboard` ID:

[source,sh]
--------------------------------------------------
$ curl -X POST api/saved_objects/_bulk_get
[
  {
    "type": "index-pattern",
    "id": "my-pattern"
  },
  {
    "type": "dashboard",
    "id": "be3733a0-9efe-11e7-acb3-3dab96693fab"
  }
]
--------------------------------------------------
// KIBANA

The API returns the following:

[source,sh]
--------------------------------------------------
{
  "saved_objects": [
    {
      "id": "my-pattern",
      "type": "index-pattern",
      "version": 1,
      "attributes": {
        "title": "my-pattern-*"
      }
    },
    {
      "id": "my-dashboard",
      "type": "dashboard",
      "error": {
        "statusCode": 404,
        "message": "Not found"
      }
    }
  ]
}
--------------------------------------------------

Only the {data-source} exists.
