---
title: List Apps
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > API Reference > App Builder
---

# List Apps{% #list-apps %}

{% tab title="v2" %}

| Datadog site      | API endpoint                                              |
| ----------------- | --------------------------------------------------------- |
| ap1.datadoghq.com | GET https://api.ap1.datadoghq.com/api/v2/app-builder/apps |
| ap2.datadoghq.com | GET https://api.ap2.datadoghq.com/api/v2/app-builder/apps |
| app.datadoghq.eu  | GET https://api.datadoghq.eu/api/v2/app-builder/apps      |
| app.ddog-gov.com  | GET https://api.ddog-gov.com/api/v2/app-builder/apps      |
| us2.ddog-gov.com  | GET https://api.us2.ddog-gov.com/api/v2/app-builder/apps  |
| app.datadoghq.com | GET https://api.datadoghq.com/api/v2/app-builder/apps     |
| us3.datadoghq.com | GET https://api.us3.datadoghq.com/api/v2/app-builder/apps |
| us5.datadoghq.com | GET https://api.us5.datadoghq.com/api/v2/app-builder/apps |

### Overview

List all apps, with optional filters and sorting. This endpoint is paginated. Only basic app information such as the app ID, name, and description is returned by this endpoint. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection.md#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys.md#actions-api-access). This endpoint requires the `apps_run` permission.

### Arguments

#### Query Strings

| Name                 | Type    | Description                                                   |
| -------------------- | ------- | ------------------------------------------------------------- |
| limit                | integer | The number of apps to return per page.                        |
| page                 | integer | The page number to return.                                    |
| filter[user_name]    | string  | Filter apps by the app creator. Usually the user's email.     |
| filter[user_uuid]    | string  | Filter apps by the app creator's UUID.                        |
| filter[name]         | string  | Filter by app name.                                           |
| filter[query]        | string  | Filter apps by the app name or the app creator.               |
| filter[deployed]     | boolean | Filter apps by whether they are published.                    |
| filter[tags]         | string  | Filter apps by tags.                                          |
| filter[favorite]     | boolean | Filter apps by whether you have added them to your favorites. |
| filter[self_service] | boolean | Filter apps by whether they are enabled for self-service.     |
| sort                 | array   | The fields and direction to sort apps by.                     |

### Response

{% tab title="200" %}
OK
{% tab title="Model" %}
A paginated list of apps matching the specified filters and sorting.

| Parent field  | Field                        | Type      | Description                                                                                                                                                       |
| ------------- | ---------------------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|               | data                         | [object]  | An array of app definitions.                                                                                                                                      |
| data          | attributes [*required*] | object    | Basic information about the app such as name, description, and tags.                                                                                              |
| attributes    | description                  | string    | A human-readable description for the app.                                                                                                                         |
| attributes    | favorite                     | boolean   | Whether the app is marked as a favorite by the current user.                                                                                                      |
| attributes    | name                         | string    | The name of the app.                                                                                                                                              |
| attributes    | selfService                  | boolean   | Whether the app is enabled for use in the Datadog self-service hub.                                                                                               |
| attributes    | tags                         | [string]  | A list of tags for the app, which can be used to filter apps.                                                                                                     |
| data          | id [*required*]         | uuid      | The ID of the app.                                                                                                                                                |
| data          | meta                         | object    | Metadata of an app.                                                                                                                                               |
| meta          | created_at                   | date-time | Timestamp of when the app was created.                                                                                                                            |
| meta          | deleted_at                   | date-time | Timestamp of when the app was deleted.                                                                                                                            |
| meta          | org_id                       | int64     | The Datadog organization ID that owns the app.                                                                                                                    |
| meta          | updated_at                   | date-time | Timestamp of when the app was last updated.                                                                                                                       |
| meta          | updated_since_deployment     | boolean   | Whether the app was updated since it was last published. Published apps are pinned to a specific version and do not automatically update when the app is updated. |
| meta          | user_id                      | int64     | The ID of the user who created the app.                                                                                                                           |
| meta          | user_name                    | string    | The name (or email address) of the user who created the app.                                                                                                      |
| meta          | user_uuid                    | uuid      | The UUID of the user who created the app.                                                                                                                         |
| meta          | version                      | int64     | The version number of the app. This starts at 1 and increments with each update.                                                                                  |
| data          | relationships                | object    | The app's publication information.                                                                                                                                |
| relationships | deployment                   | object    | Information pointing to the app's publication status.                                                                                                             |
| deployment    | data                         | object    | Data object containing the deployment ID.                                                                                                                         |
| data          | id                           | uuid      | The deployment ID.                                                                                                                                                |
| data          | type                         | enum      | The deployment type. Allowed enum values: `deployment`                                                                                                            |
| deployment    | meta                         | object    | Metadata object containing the publication creation information.                                                                                                  |
| meta          | created_at                   | date-time | Timestamp of when the app was published.                                                                                                                          |
| meta          | user_id                      | int64     | The ID of the user who published the app.                                                                                                                         |
| meta          | user_name                    | string    | The name (or email address) of the user who published the app.                                                                                                    |
| meta          | user_uuid                    | uuid      | The UUID of the user who published the app.                                                                                                                       |
| data          | type [*required*]       | enum      | The app definition type. Allowed enum values: `appDefinitions`                                                                                                    |
|               | included                     | [object]  | Data on the version of the app that was published.                                                                                                                |
| included      | attributes                   | object    | The attributes object containing the version ID of the published app.                                                                                             |
| attributes    | app_version_id               | uuid      | The version ID of the app that was published. For an unpublished app, this is always the nil UUID (`00000000-0000-0000-0000-000000000000`).                       |
| included      | id                           | uuid      | The deployment ID.                                                                                                                                                |
| included      | meta                         | object    | Metadata object containing the publication creation information.                                                                                                  |
| meta          | created_at                   | date-time | Timestamp of when the app was published.                                                                                                                          |
| meta          | user_id                      | int64     | The ID of the user who published the app.                                                                                                                         |
| meta          | user_name                    | string    | The name (or email address) of the user who published the app.                                                                                                    |
| meta          | user_uuid                    | uuid      | The UUID of the user who published the app.                                                                                                                       |
| included      | type                         | enum      | The deployment type. Allowed enum values: `deployment`                                                                                                            |
|               | meta                         | object    | Pagination metadata.                                                                                                                                              |
| meta          | page                         | object    | Information on the total number of apps, to be used for pagination.                                                                                               |
| page          | totalCount                   | int64     | The total number of apps under the Datadog organization, disregarding any filters applied.                                                                        |
| page          | totalFilteredCount           | int64     | The total number of apps that match the specified filters.                                                                                                        |

{% /tab %}

{% tab title="Example" %}

```json
{
  "data": [
    {
      "attributes": {
        "description": "string",
        "favorite": false,
        "name": "string",
        "selfService": false,
        "tags": [
          "service:webshop-backend",
          "team:webshop"
        ]
      },
      "id": "65bb1f25-52e1-4510-9f8d-22d1516ed693",
      "meta": {
        "created_at": "2019-09-19T10:00:00.000Z",
        "deleted_at": "2019-09-19T10:00:00.000Z",
        "org_id": "integer",
        "updated_at": "2019-09-19T10:00:00.000Z",
        "updated_since_deployment": false,
        "user_id": "integer",
        "user_name": "string",
        "user_uuid": "65bb1f25-52e1-4510-9f8d-22d1516ed693",
        "version": "integer"
      },
      "relationships": {
        "deployment": {
          "data": {
            "id": "65bb1f25-52e1-4510-9f8d-22d1516ed693",
            "type": "deployment"
          },
          "meta": {
            "created_at": "2019-09-19T10:00:00.000Z",
            "user_id": "integer",
            "user_name": "string",
            "user_uuid": "65bb1f25-52e1-4510-9f8d-22d1516ed693"
          }
        }
      },
      "type": "appDefinitions"
    }
  ],
  "included": [
    {
      "attributes": {
        "app_version_id": "65bb1f25-52e1-4510-9f8d-22d1516ed693"
      },
      "id": "65bb1f25-52e1-4510-9f8d-22d1516ed693",
      "meta": {
        "created_at": "2019-09-19T10:00:00.000Z",
        "user_id": "integer",
        "user_name": "string",
        "user_uuid": "65bb1f25-52e1-4510-9f8d-22d1516ed693"
      },
      "type": "deployment"
    }
  ],
  "meta": {
    "page": {
      "totalCount": "integer",
      "totalFilteredCount": "integer"
    }
  }
}
```

{% /tab %}

{% /tab %}

{% tab title="400" %}
Bad Request
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="403" %}
Forbidden
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="429" %}
Too many requests
{% tab title="Model" %}
API error response.

| Field                    | Type     | Description       |
| ------------------------ | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    "Bad Request"
  ]
}
```

{% /tab %}

{% /tab %}

### Code Example

##### 
                  \# Curl command curl -X GET "https://api.datadoghq.com/api/v2/app-builder/apps" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}" 
                
##### 

```python
"""
List Apps returns "OK" response
"""

from datadog_api_client import ApiClient, Configuration
from datadog_api_client.v2.api.app_builder_api import AppBuilderApi

configuration = Configuration()
with ApiClient(configuration) as api_client:
    api_instance = AppBuilderApi(api_client)
    response = api_instance.list_apps()

    print(response)
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=python) and then save the example to `example.py` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" python3 "example.py"
##### 

```ruby
# List Apps returns "OK" response

require "datadog_api_client"
api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
p api_instance.list_apps()
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=ruby) and then save the example to `example.rb` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" rb "example.rb"
##### 

```go
// List Apps returns "OK" response

package main

import (
	"context"
	"encoding/json"
	"fmt"
	"os"

	"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
	"github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
)

func main() {
	ctx := datadog.NewDefaultContext(context.Background())
	configuration := datadog.NewConfiguration()
	apiClient := datadog.NewAPIClient(configuration)
	api := datadogV2.NewAppBuilderApi(apiClient)
	resp, r, err := api.ListApps(ctx, *datadogV2.NewListAppsOptionalParameters())

	if err != nil {
		fmt.Fprintf(os.Stderr, "Error when calling `AppBuilderApi.ListApps`: %v\n", err)
		fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
	}

	responseContent, _ := json.MarshalIndent(resp, "", "  ")
	fmt.Fprintf(os.Stdout, "Response from `AppBuilderApi.ListApps`:\n%s\n", responseContent)
}
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=go) and then save the example to `main.go` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" go run "main.go"
##### 

```java
// List Apps returns "OK" response

import com.datadog.api.client.ApiClient;
import com.datadog.api.client.ApiException;
import com.datadog.api.client.v2.api.AppBuilderApi;
import com.datadog.api.client.v2.model.ListAppsResponse;

public class Example {
  public static void main(String[] args) {
    ApiClient defaultClient = ApiClient.getDefaultApiClient();
    AppBuilderApi apiInstance = new AppBuilderApi(defaultClient);

    try {
      ListAppsResponse result = apiInstance.listApps();
      System.out.println(result);
    } catch (ApiException e) {
      System.err.println("Exception when calling AppBuilderApi#listApps");
      System.err.println("Status code: " + e.getCode());
      System.err.println("Reason: " + e.getResponseBody());
      System.err.println("Response headers: " + e.getResponseHeaders());
      e.printStackTrace();
    }
  }
}
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=java) and then save the example to `Example.java` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" java "Example.java"
##### 

```rust
// List Apps returns "OK" response
use datadog_api_client::datadog;
use datadog_api_client::datadogV2::api_app_builder::AppBuilderAPI;
use datadog_api_client::datadogV2::api_app_builder::ListAppsOptionalParams;

#[tokio::main]
async fn main() {
    let configuration = datadog::Configuration::new();
    let api = AppBuilderAPI::with_config(configuration);
    let resp = api.list_apps(ListAppsOptionalParams::default()).await;
    if let Ok(value) = resp {
        println!("{:#?}", value);
    } else {
        println!("{:#?}", resp.unwrap_err());
    }
}
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=rust) and then save the example to `src/main.rs` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" cargo run
##### 

```typescript
/**
 * List Apps returns "OK" response
 */

import { client, v2 } from "@datadog/datadog-api-client";

const configuration = client.createConfiguration();
const apiInstance = new v2.AppBuilderApi(configuration);

apiInstance
  .listApps()
  .then((data: v2.ListAppsResponse) => {
    console.log(
      "API called successfully. Returned data: " + JSON.stringify(data)
    );
  })
  .catch((error: any) => console.error(error));
```

#### Instructions

First [install the library and its dependencies](https://docs.datadoghq.com/api/latest.md?code-lang=typescript) and then save the example to `example.ts` and run following commands:
    DD_SITE="datadoghq.com" DD_API_KEY="<API-KEY>" DD_APP_KEY="<APP-KEY>" tsc "example.ts"
{% /tab %}
