---
type: api
title: Initialize security solution flows
description: **Spaces method and path for this operation:**
url: https://www.elastic.co/elastic/docs-builder/docs/4641/api/doc/kibana/operation/operation-initializesecuritysolution
resource: https://www.elastic.co/elastic/docs-builder/docs/4641/api/doc/kibana/operation/operation-initializesecuritysolution
products:
  - Kibana
---

# Initialize security solution flows

Authentication: required

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

## Paths

- `POST` `/api/security_solution/initialize`
- `POST` `/s/{space_id}/api/security_solution/initialize`

#### 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

Run one or more Security Solution initialization flows for the current space.
Each flow provisions a specific set of assets, for example list indices,
security data views, prebuilt detection rules, endpoint protection, AI prompts,
or detection rule monitoring assets. Only the requested flows are run, and the
response reports a result for each one.

## Request body

The initialization flows to run.

`application/json`

- `flows` (enum[] · min items: 1) — required
  Values: `create-list-indices`, `security-data-views`, `init-prebuilt-rules`, `init-endpoint-protection`, `init-ai-prompts`, `init-detection-rule-monitoring`

## Response

Indicates a successful call. Returns a result for each requested flow.

`application/json`

- `flows` (object)
  Per-flow results. Only requested flows appear in the response, so all properties are optional. Each flow is either a typed ready result or an error result.
  - `create-list-indices` (union oneOf)
    - **status: ready**
      - `status` (enum)
        Values: `ready`
    - **status: error**
      - `status` (enum)
        Values: `error`
      - `error` (string) — nullable
  - `init-ai-prompts` (union oneOf)
    - **status: ready**
      - `status` (enum)
        Values: `ready`
      - `payload` (object)
        - `install_status` (string)
          Fleet package installation status (e.g., installed, already_installed).
        - `name` (string)
        - `version` (string)
    - **status: error**
      - `status` (enum)
        Values: `error`
      - `error` (string) — nullable
  - `init-detection-rule-monitoring` (union oneOf)
    - **status: ready**
      - `status` (enum)
        Values: `ready`
    - **status: error**
      - `status` (enum)
        Values: `error`
      - `error` (string) — nullable
  - `init-endpoint-protection` (union oneOf)
    - **status: ready**
      - `status` (enum)
        Values: `ready`
      - `payload` (object)
        - `install_status` (string)
          Fleet package installation status (e.g., installed, already_installed).
        - `name` (string)
        - `version` (string)
    - **status: error**
      - `status` (enum)
        Values: `error`
      - `error` (string) — nullable
  - `init-prebuilt-rules` (union oneOf)
    - **status: ready**
      - `status` (enum)
        Values: `ready`
      - `payload` (object)
        - `install_status` (string)
          Fleet package installation status (e.g., installed, already_installed).
        - `name` (string)
        - `version` (string)
    - **status: error**
      - `status` (enum)
        Values: `error`
      - `error` (string) — nullable
  - `security-data-views` (union oneOf)
    - **status: ready**
      - `status` (enum)
        Values: `ready`
      - `payload` (object)
        - `alertDataView` (object)
          - `id` (string)
          - `patternList` (string[])
          - `title` (string)
        - `attackDataView` (object)
          - `id` (string)
          - `patternList` (string[])
          - `title` (string)
        - `defaultDataView` (object)
          - `id` (string)
          - `patternList` (string[])
          - `title` (string)
        - `kibanaDataViews` (object[])
          - `id` (string)
          - `patternList` (string[])
          - `title` (string)
        - `signalIndexName` (string)
    - **status: error**
      - `status` (enum)
        Values: `error`
      - `error` (string) — nullable
## Code examples

#### Console

```console
POST kbn:/api/security_solution/initialize
{
  "flows": [
    "init-prebuilt-rules",
    "init-endpoint-protection",
    "init-ai-prompts"
  ]
}
```

#### curl

```curl
curl -X POST "${KIBANA_URL}/api/security_solution/initialize" \
  -H "Authorization: ApiKey ${API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "flows": [
      "init-prebuilt-rules",
      "init-endpoint-protection",
      "init-ai-prompts"
    ]
  }'
```

## Response examples

#### Default

`application/json`

```json
{
  "flows": {
    "init-ai-prompts": {
      "payload": {
        "install_status": "installed",
        "name": "security_ai_prompts",
        "version": "8.17.1"
      },
      "status": "ready"
    },
    "init-endpoint-protection": {
      "payload": {
        "install_status": "already_installed",
        "name": "endpoint",
        "version": "8.17.1"
      },
      "status": "ready"
    },
    "init-prebuilt-rules": {
      "payload": {
        "install_status": "installed",
        "name": "security_detection_engine",
        "version": "8.17.1"
      },
      "status": "ready"
    }
  }
}
```

