---
type: api
title: Get search applications
description: Get information about search applications.
url: https://www.elastic.co/elastic/docs-builder/docs/4493/api/doc/elasticsearch/v9/operation/operation-search-application-list
resource: https://www.elastic.co/elastic/docs-builder/docs/4493/api/doc/elasticsearch/v9/operation/operation-search-application-list
products:
  - Elasticsearch
---

# Get search applications

Availability: Beta since 8.8

## Paths

- `GET` `/_application/search_application`

## Description

Get information about search applications.

## Required authorization

- Cluster privileges: `manage_search_application`

## Authentication

- Api key: `Authorization: <value>`
  Elasticsearch APIs support key-based authentication.
  You must create an API key and use the encoded value in the request header.
  For example:
  
  
  ```
  curl -X GET "${ES_URL}/_cat/indices?v=true" \
    -H "Authorization: ApiKey ${API_KEY}"
  ```
  
  To get API keys, use the `/_security/api_key` APIs.
- Basic: `Authorization: Basic <credentials>`
- Bearer: `Authorization: Bearer <token>`
  Elasticsearch APIs support the use of bearer tokens in the `Authorization` HTTP header to authenticate with the API.
  For examples, refer to [Token-based authentication services](https://www.elastic.co/docs/deploy-manage/users-roles/cluster-or-deployment-auth/token-based-authentication-services)

## Query string parameters

- `q` (string) — optional
  Query in the Lucene query string syntax.
- `from` (number · default: 0) — optional
  Starting offset.
- `size` (number) — optional
  Specifies a max number of results to get.

## Response

`application/json`

- `count` (number)
- `results` (object[])
  - `indices` (string[])
    Indices that are part of the Search Application.
  - `analytics_collection_name` (string)
    Analytics collection associated to the Search Application.
  - `template` (object)
    Search template to use on search operations.
    - `script` (string)
      The associated mustache template.
  - `name` (string)
    Search Application name
  - `updated_at_millis` (number)
    Last time the Search Application was updated.
## Code examples

#### Console

```console
GET _application/search_application?from=0&size=3&q=app*
```

#### JavaScript

```javascript
const response = await client.searchApplication.list({
  from: 0,
  size: 3,
  q: "app*",
});
```

#### Python

```python
resp = client.search_application.list(
    from_="0",
    size="3",
    q="app*",
)
```

#### curl

```curl
curl -X GET "$ELASTICSEARCH_URL/_application/search_application?from=0&size=3&q=app*" \
  -H "Authorization: ApiKey $ELASTIC_API_KEY"
```

#### Java

```java
client.searchApplication().list(l -> l
    .from(0)
    .q("app*")
    .size(3)
);
```

#### C#

```c#
var response = await client.SearchApplication
    .ListAsync(d1 => d1
        .From(0)
        .QueryLuceneSyntax("app*")
        .Size(3)
    );
```

#### PHP

```php
$resp = $client->searchApplication()->list([
    "from" => "0",
    "size" => "3",
    "q" => "app*",
]);
```

#### Ruby

```ruby
response = client.search_application.list(
  from: "0",
  size: "3",
  q: "app*"
)
```

## Response examples

#### Search applications list response example1

A succesful response from `GET _application/search_application?from=0&size=3&q=app*` returns the first three search applications whose names start with `app`.

```json
{
  "count": 2,
  "results": [
    {
      "name": "app-1",
      "updated_at_millis": 1690981129366
    },
    {
      "name": "app-2",
      "updated_at_millis": 1691501823939
    }
  ]
}
```

