---
title: "Create App"
method: POST
path: "/api/v2/app-builder/apps"
tags: ["App Builder"]
---

# Create App

`POST /api/v2/app-builder/apps`

Create a new app, returning the app ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access).

## Request body

- CreateAppRequest — A request object for creating a new app.
  - `data` CreateAppRequestData — The data object containing the app definition.
    - `attributes` CreateAppRequestDataAttributes — App definition attributes such as name, description, and components.
      - `components` ComponentGrid[] — The UI components that make up the app.
        - `events` AppBuilderEvent[] — Events to listen for on the grid component.
          - `name` 'pageChange' | 'tableRowClick' | '_tableRowButtonClick' | 'change' | 'submit' | 'click' | 'toggleOpen' | 'close' | 'open' | 'executionFinished' — The triggering action for the event.
          - `type` 'custom' | 'setComponentState' | 'triggerQuery' | 'openModal' | 'closeModal' | 'openUrl' | 'downloadFile' | 'setStateVariableValue' — The response to the event.
        - `id` string — The ID of the grid component. This property is deprecated; use `name` to identify individual components instead.
        - `name` string, required — A unique identifier for this grid component. This name is also visible in the app editor.
        - `properties` ComponentGridProperties, required — Properties of a grid component.
          - `backgroundColor` string — The background color of the grid.
          - `children` Component[] — The child components of the grid.
            - `events` AppBuilderEvent[] — Events to listen for on the UI component.
              - …
            - `id` string, nullable — The ID of the UI component. This property is deprecated; use `name` to identify individual components instead.
            - `name` string, required — A unique identifier for this UI component. This name is also visible in the app editor.
            - `properties` ComponentProperties, required — Properties of a UI component. Different component types can have their own additional unique properties. See the [components documentation](https://docs.datadoghq.com/service_management/app_builder/components/) for more detail on each component type and its properties.
              - …
            - `type` 'table' | 'textInput' | 'textArea' | 'button' | 'text' | 'select' | 'modal' | 'schemaForm' | 'checkbox' | 'tabs' | 'vegaChart' | 'radioButtons' | 'numberInput' | 'fileInput' | 'jsonInput' | 'gridCell' | 'dateRangePicker' | 'search' | 'container' | 'calloutValue', required — The UI component type.
          - `isVisible` union — Whether the grid component and its children are visible. If a string, it must be a valid JavaScript expression that evaluates to a boolean.
            - string
            - boolean
        - `type` 'grid', required — The grid component type.
      - `description` string — A human-readable description for the app.
      - `name` string — The name of the app.
      - `queries` Query[] — An array of queries, such as external actions and state variables, that the app uses.
        - union — A data query used by an app. This can take the form of an external action, a data transformation, or a state variable.
          - ActionQuery — An action query. This query type is used to trigger an action, such as sending a HTTP request.
            - `events` AppBuilderEvent[] — Events to listen for downstream of the action query.
              - …
            - `id` string, uuid, required — The ID of the action query.
            - `name` string, required — A unique identifier for this action query. This name is also used to access the query's result throughout the app.
            - `properties` ActionQueryProperties, required — The properties of the action query.
              - …
            - `type` 'action', required — The action query type.
          - DataTransform — A data transformer, which is custom JavaScript code that executes and transforms data when its inputs change.
            - `id` string, uuid, required — The ID of the data transformer.
            - `name` string, required — A unique identifier for this data transformer. This name is also used to access the transformer's result throughout the app.
            - `properties` DataTransformProperties, required — The properties of the data transformer.
              - …
            - `type` 'dataTransform', required — The data transform type.
          - StateVariable — A variable, which can be set and read by other components in the app.
            - `id` string, uuid, required — The ID of the state variable.
            - `name` string, required — A unique identifier for this state variable. This name is also used to access the variable's value throughout the app.
            - `properties` StateVariableProperties, required — The properties of the state variable.
              - …
            - `type` 'stateVariable', required — The state variable type.
      - `rootInstanceName` string — The name of the root component of the app. This must be a `grid` component that contains all other components.
      - `tags` string[] — A list of tags for the app, which can be used to filter apps.
    - `type` 'appDefinitions', required — The app definition type.

## Response `201`

Created

- CreateAppResponse — The response object after a new app is successfully created, with the app ID.
  - `data` CreateAppResponseData — The data object containing the app ID.
    - `id` string, uuid, required — The ID of the created app.
    - `type` 'appDefinitions', required — The app definition type.

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `429` — Too many requests

---

[API](https://skmtc.net/datadog/apis/api-v2.md) · [All operations](https://skmtc.net/datadog/apis/api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/datadog/api-v2/revisions/da68bf029e4c/schema)
