

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# API di avviso
<a name="v10-Grafana-API-Alerting"></a>

**Nota**  
Questa sezione si applica solo agli avvisi classici. Per ulteriori informazioni, consulta [Avvisi Grafana](alerts-overview.md).

Utilizza l'API Preferences per ottenere informazioni sugli avvisi classici della dashboard e sui relativi stati. Tuttavia, non puoi utilizzare questa API per modificare l'avviso. Per creare nuovi avvisi o modificarli è necessario aggiornare il dashboard JSON che contiene gli avvisi.

**Nota**  
Per utilizzare un'API Grafana con il tuo spazio di lavoro Amazon Managed Grafana, devi disporre di un token di account di servizio valido. Lo includi nel `Authorization` campo della richiesta API.

## Ricevi avvisi
<a name="v10-Grafana-API-Alerting-get"></a>

```
GET /api/alerts
```

**Richiesta di esempio**

```
GET /api/alerts HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Parametri Querystring:**

Questi parametri vengono utilizzati come parametri di querystring. Ad esempio: `/api/alerts?dashboardId=1`
+ **dashboardID**: limita le risposte agli avvisi nel valore di dashboard specificato. È possibile specificare più dashboard. Ad esempio, `dashboardId=23&dashboardId=35`
+ **PanelID**: limita la risposta agli avvisi per un pannello specifico su una dashboard.
+ **query**: limita la risposta agli avvisi con un nome simile a questo valore.
+ **state**: restituisce gli avvisi che hanno uno o più dei seguenti stati di avviso:`ALL`,,`alerting`, `ok` `no_data``paused`, o. `pending` Per specificare più stati, utilizzate il seguente formato: `?state=paused&state=alerting`
+ **limit**: limita la risposta a un numero X di avvisi.
+ **FolderID**: limita la risposta agli avvisi dei dashboard nelle cartelle specificate. È possibile specificare più cartelle. Ad esempio, `folderId=23&folderId=35`
+ **DashboardQuery**: limita le risposte agli avvisi con un nome di dashboard simile a questo valore.
+ **DashboardTag**: limita gli avvisi di risposta dei dashboard con tag specificati. Per filtrare «AND» con più tag, specifica il parametro tags più volte. Ad esempio, `dashboardTag=tag1&dashboardTag=tag2`. Nota che questi sono tag Grafana, non AWS tag.

**Esempio di risposta**

```
HTTP/1.1 200
Content-Type: application/json

[
  {
    "id": 1,
    "dashboardId": 1,
    "dashboardUId": "ABcdEFghij"
    "dashboardSlug": "sensors",
    "panelId": 1,
    "name": "fire place sensor",
    "state": "alerting",
    "newStateDate": "2018-05-14T05:55:20+02:00",
    "evalDate": "0001-01-01T00:00:00Z",
    "evalData": null,
    "executionError": "",
    "url": "http://grafana.com/dashboard/db/sensors"
  }
]
```

## Ricevi un avviso tramite ID
<a name="v10-Grafana-API-Alerting-getbyId"></a>

```
GET /api/alerts/:id
```

**Richiesta di esempio**

```
GET /api/alerts/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Esempio di risposta**

```
HTTP/1.1 200
Content-Type: application/json

{
  "id": 1,
  "dashboardId": 1,
  "dashboardUId": "ABcdEFghij"
  "dashboardSlug": "sensors",
  "panelId": 1,
  "name": "fire place sensor",
  "state": "alerting",
  "message": "Someone is trying to break in through the fire place",
  "newStateDate": "2018-05-14T05:55:20+02:00",
  "evalDate": "0001-01-01T00:00:00Z",
  "evalData": "evalMatches": [
    {
      "metric": "movement",
      "tags": {
        "name": "fireplace_chimney"
      },
      "value": 98.765
    }
  ],
  "executionError": "",
  "url": "http://grafana.com/dashboard/db/sensors"
}
```

**Importante**  
`evalMatches`i dati vengono memorizzati nella cache del database quando e solo quando lo stato dell'avviso cambia. Se i dati di un server attivano per primi l'avviso e, prima che il server esca dallo stato di avviso, anche un secondo server entra in uno stato tale da attivare l'avviso, il secondo server non è visibile nei dati. `evalMatches`

## Metti in pausa l'avviso per ID
<a name="v10-Grafana-API-Alerting-pausebyId"></a>

```
POST /api/alerts/:id/pause
```

**Richiesta di esempio**

```
POST /api/alerts/1/pause HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "paused": true
}
```

Il parametro di `:id` interrogazione è l'ID dell'avviso da mettere in pausa o non mettere in pausa. `paused`può essere `true` quello di sospendere un avviso o di `false` riattivare l'avviso.

**Esempio di risposta**

```
HTTP/1.1 200
Content-Type: application/json

{
  "alertId": 1,
  "state":   "Paused",
  "message": "alert paused"
}
```