---
type: api
title: Search Discover sessions
description: **Spaces method and path for this operation:**
url: https://www.elastic.co/elastic/docs-builder/docs/4641/api/doc/kibana/v9/operation/operation-search-discover-sessions
resource: https://www.elastic.co/elastic/docs-builder/docs/4641/api/doc/kibana/v9/operation/operation-search-discover-sessions
products:
  - Kibana
---

# Search Discover sessions

Authentication: required

Availability: Planned

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

## Paths

- `GET` `/api/discover_sessions`
- `GET` `/s/{space_id}/api/discover_sessions`

#### Path parameters

- `space_id` (string) — optional
  An identifier for the space. If `space_id` is not provided in the URL, the default space is used. Refer to [Spaces](https://www.elastic.co/docs/deploy-manage/manage-spaces) for more information.

## Description

Returns a paginated summary list of Discover sessions. Use `GET /api/discover_sessions/{id}` for the full session state.

## Query string parameters

- `page` (number · min: 1 · default: 1) — optional
  The page of results to return.
- `per_page` (number · min: 1 · max: 1000 · default: 20) — optional
  The number of results to return per page.
- `query` (string · max length: 1000) — optional
  Full-text search (`simple_query_string`) over `title` and `description`. All terms must match.
- `tags` (string[] · max items: 100 · default: []) — optional
  A tag ID to include. Accepts a single tag ID or multiple tag IDs. When multiple are specified, Discover sessions matching any of the tag IDs are included.
- `excluded_tags` (string[] · max items: 100 · default: []) — optional
  A tag ID to exclude. Accepts a single tag ID or multiple tag IDs. When multiple are specified, Discover sessions matching any of the tag IDs are excluded.
- `tag_names` (string[] · max items: 100) — optional
  A tag name to include. Accepts a single tag name or multiple tag names. When multiple are specified, Discover sessions matching any of the tag names are included. If the same name is shared by multiple tags, sessions matching any of those tags are included.
- `excluded_tag_names` (string[] · max items: 100) — optional
  A tag name to exclude. Accepts a single tag name or multiple tag names. When multiple are specified, Discover sessions matching any of the tag names are excluded. If the same name is shared by multiple tags, sessions matching any of those tags are excluded.

## Responses

#### `200`

Success

`application/json`

- `data` (object[] · max items: 1000)
  List of matching Discover sessions (summaries, not the full session state).
  - `data` (object)
    - `description` (string)
      Discover session description.
    - `tags` (string[] · max items: 1000 · default: [])
      Tag IDs associated with this Discover session.
    - `title` (string)
      Discover session title.
  - `id` (string)
    The Discover session ID.
  - `meta` (object)
    - `created_at` (string)
      Timestamp when the object was created (ISO 8601).
    - `created_by` (string)
      User profile ID of the user who created the object.
    - `managed` (boolean)
      When `true`, the object is managed by Kibana and cannot be edited by users.
    - `owner` (string)
      Identifier of the plugin or team that owns this object.
    - `updated_at` (string)
      Timestamp when the object was last updated (ISO 8601).
    - `updated_by` (string)
      User profile ID of the user who last updated the object.
    - `version` (string)
      Internal version identifier for optimistic concurrency control.
- `meta` (object)
  - `page` (number · min: 1 · default: 1)
    The returned page of results.
  - `per_page` (number · min: 1 · max: 1000 · default: 20)
    The number of results returned per page.
  - `total` (number)
    The total number of results matching the query.
#### `400`

Invalid request

#### `500`

Internal server error

## Code examples

#### Console

```console
GET kbn:/api/discover_sessions?query=requests&per_page=20
```

#### curl

```curl
curl -X GET "${KIBANA_URL}/api/discover_sessions?query=requests&per_page=20" \
  -H "Authorization: ApiKey ${API_KEY}" \
  -H "elastic-api-version: 2023-10-31"
```

## Response examples

#### One matching Discover session

`application/json`

```json
{
  "data": [
    {
      "data": {
        "description": "",
        "tags": [],
        "title": "Requests by extension"
      },
      "id": "web-log-requests",
      "meta": {
        "created_at": "2026-10-15T09:00:00.000Z",
        "created_by": "u_example",
        "managed": false,
        "updated_at": "2026-10-15T09:00:00.000Z",
        "updated_by": "u_example",
        "version": "WzEsMV0="
      }
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 20,
    "total": 1
  }
}
```

