> ## Documentation Index
> Fetch the complete documentation index at: https://docs.flashcat.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Keep Alert Integration Guide

> Push alert events to Flashduty through Keep's Provider to achieve automated alert noise reduction.

Push alert events to Flashduty through Keep's Flashduty Provider to achieve automated alert noise reduction.

<div class="hide">
  ## In Flashduty

  You can obtain an integration key through either of these 2 methods:

  #### Using Dedicated Integration

  Choose this method when you don't need to route alert events to different channels - it's simpler.

  <details>
    <summary>Expand</summary>

    1. Enter the Flashduty console, select **Channel**, and go to a specific channel's details page
    2. Select the **Integrations** tab, click **Add Integration** to enter the integration page
    3. Choose **Keep** integration, click **Save** to generate a card
    4. Click the generated card to view the **Integration Key**, copy it for later use, and you're done
  </details>

  #### Using Shared Integration

  Choose this method when you need to route alerts to different channels based on the alert event's payload information.

  <details>
    <summary>Expand</summary>

    1. Enter the Flashduty console, select **Integration Center=>Alert Events** to access the integration selection page
    2. Select **Keep** integration:
       * **Integration Name**: Define a name for this integration
    3. Configure default routing and select the corresponding channel (after the integration is created, you can go to `Route` to configure more routing rules)
    4. Click **Save** and copy the newly generated **Integration Key** for later use
    5. Done
  </details>
</div>

## In Keep

***

### Field Definitions

|     Field     | Required |  Type  | Definition                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| :-----------: | :------: | :----: | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|     title     |    Yes   | string | Alert title, maximum `512` characters, will be truncated if exceeded                                                                                                                                                                                                                                                                                                                                                                                                                   |
| event\_status |    Yes   | string | Alert status. Enumerated values (`First letter capitalized`): *Critical*: Critical, *Warning*: Warning, *Info*: Info, *Ok*: Recovery. When set to Ok, it indicates automatic recovery of the alert                                                                                                                                                                                                                                                                                     |
|   alert\_key  |    No    | string | Alert identifier, used for updating or automatically recovering existing alerts. You can customize this value, but it cannot exceed `255` characters. You can also rely on system-generated values, which will be returned in the response. This value must exist if you're reporting a recovery event                                                                                                                                                                                 |
|  description  |    No    | string | Alert description, maximum `2048` characters, will be truncated if exceeded                                                                                                                                                                                                                                                                                                                                                                                                            |
|     labels    |    No    |   map  | Alert label collection, where key is the label name and value is the label value. 1. Both label key and value are case-sensitive strings. 2. Label keys should not exceed `128` characters and follow Prometheus label naming conventions. Values should not exceed `2048` characters, will be truncated if exceeded. 3. Maximum `50` labels allowed. `Label content refers to` [Best Practices](#best-practices). Example: "resource": "171.26.23.22", "check": "api latency > 500ms" |

### Configuration Method

#### Step 1: Configure Flashduty Provider

1. Login to Keep console, enter `Providers` list, select and click `Flashduty`.
2. Fill in the `Flashduty Integration Key` field with the `Integration Key` of Flashduty.
3. Click `Save` to save the configuration.

<img alt="drawing" width="600" src="https://download.flashcat.cloud/flashduty/doc/en/fd/keep-1.png" />

#### Step 2: Configure WorkFlows

1. Login to Keep console, enter `WorkFlows` , create or edit an existing Workflow.
2. Configure the `Trigger` section as needed.
3. In the `Steps` section, select `flashduty-action` and select the `Flashduty Provider` configured in the previous step.
4. In the `flashduty-action`'s `Configure` section, configure the alert title, alert status, alert description, and alert labels (for details on the field definitions, please refer to [Field Definitions](#field-definitions)).
5. Click `Save` to save the configuration.

<img alt="drawing" width="600" src="https://download.flashcat.cloud/flashduty/doc/en/fd/keep-2.png" />
