---
type: api
title: Resolve saved objects
description: WARNING: This API is deprecated. This is a legacy Saved Objects API and may be removed in a future version of Kibana.
url: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana/v0/operation/operation-post-saved-objects-bulk-resolve
resource: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana/v0/operation/operation-post-saved-objects-bulk-resolve
products:
  - Kibana
---

# Resolve saved objects

deprecated

- Server: `https://{kibana_url}`

## Paths

- `POST` `/api/saved_objects/_bulk_resolve`

- [Api key auth](/elastic/docs-builder/docs/4371/api/doc/kibana/v0/authentication#apikeyauth)
- [Basic auth](/elastic/docs-builder/docs/4371/api/doc/kibana/v0/authentication#basicauth)

## Description

WARNING: This API is deprecated. This is a legacy Saved Objects API and may be removed in a future version of Kibana.

Retrieve multiple Kibana saved objects by ID, using any legacy URL aliases if they exist.

Under certain circumstances, when Kibana is upgraded, saved object migrations may necessitate regenerating some object IDs to enable new features. When an object's ID is regenerated, a legacy URL alias is created for that object, preserving its old ID. In such a scenario, that object can be retrieved with the bulk resolve API using either its new ID or its old ID.

## Request Body

`application/json`

Type: `[] object · max: 10000`


## Responses

#### `200`

A bulk resolve response.

#### `400`

A bad request.

## Code Examples

#### Console

```console
POST kbn://api/saved_objects/_bulk_resolve
[{"type":"dashboard","id":"example-dashboard-1"},{"type":"dashboard","id":"legacy-id"}]
```

#### curl

```curl
curl \
  -X POST "${KIBANA_URL}/api/saved_objects/_bulk_resolve" \
  -H "Authorization: ApiKey ${API_KEY}" \
  -H "kbn-xsrf: true" \
  -H "Content-Type: application/json" \
  -d '[{"type":"dashboard","id":"example-dashboard-1"},{"type":"dashboard","id":"legacy-id"}]'
```

## Response Examples

#### A bulk resolve response with an exact and alias match

```json
{
  "resolved_objects": [
    {
      "outcome": "exactMatch",
      "saved_object": {
        "attributes": {
          "title": "Example dashboard 1"
        },
        "id": "example-dashboard-1",
        "managed": false,
        "namespaces": [
          "default"
        ],
        "references": [],
        "type": "dashboard",
        "updated_at": "2026-04-17T12:00:00.000Z",
        "version": "WzEsMV0="
      }
    },
    {
      "alias_target_id": "example-dashboard-2",
      "outcome": "aliasMatch",
      "saved_object": {
        "attributes": {
          "title": "Example dashboard 2"
        },
        "id": "example-dashboard-2",
        "managed": false,
        "namespaces": [
          "default"
        ],
        "references": [],
        "type": "dashboard",
        "updated_at": "2026-04-17T12:00:00.000Z",
        "version": "WzEsMl0="
      }
    }
  ]
}
```

#### A bad request error

```json
{
  "error": "Bad Request",
  "message": "Unsupported saved object type(s): unknownType",
  "statusCode": 400
}
```

