

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# API de alertas
<a name="v10-Grafana-API-Alerting"></a>

**nota**  
Esta seção só se aplica aos alertas clássicos. Para obter mais informações, consulte [Grafana Alerting](alerts-overview.md).

Use a API de preferências para obter informações sobre alertas clássicos do dashboard e seus estados. No entanto, essa API não pode ser usada para modificar o alerta. Para criar novos alertas ou modificá-los, você precisa atualizar o JSON do dashboard que contém os alertas.

**nota**  
Para usar uma API do Grafana com seu espaço de trabalho Amazon Managed Grafana, você deve ter um token de conta de serviço válido. Você inclui isso no campo `Authorization` na solicitação da API.

## Receber alertas
<a name="v10-Grafana-API-Alerting-get"></a>

```
GET /api/alerts
```

**Exemplo de solicitação**

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

**Parâmetros de string de consulta:**

Esses parâmetros são usados como parâmetros de string de consulta. Por exemplo: `/api/alerts?dashboardId=1`
+ **dashboardId**: limite as respostas aos alertas no valor especificado dos dashboards. Você pode especificar vários dashboards. Por exemplo, `dashboardId=23&dashboardId=35`.
+ **panelId**: limite a resposta ao alerta para um painel específico em um dashboard.
+ **consulta**: limite a resposta aos alertas com um nome como esse valor.
+ **estado**: retorne os alertas que têm um ou mais dos seguintes estados de alerta: `ALL`, `alerting`, `ok`, `no_data`, `paused` ou `pending`. Para especificar vários estados, use o seguinte formato: `?state=paused&state=alerting`
+ **limite**: limite a resposta a um número X de alertas.
+ **folderId** : limite a resposta aos alertas dos dashboards nas pastas específicas. Você pode especificar várias pastas. Por exemplo, `folderId=23&folderId=35`.
+ **dashboardQuery**: limite as respostas aos alertas que têm um nome de dashboard como esse valor.
+ **dashboardTag**: limite os alertas de resposta dos dashboards com tags específicas. Para fazer a filtragem “AND” com várias tags, especifique o parâmetro de tags várias vezes. Por exemplo, .`dashboardTag=tag1&dashboardTag=tag2` Observe que essas são tags Grafana, não AWS tags.

**Exemplo de resposta**

```
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"
  }
]
```

## Receba alerta por ID
<a name="v10-Grafana-API-Alerting-getbyId"></a>

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

**Exemplo de solicitação**

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

**Exemplo de resposta**

```
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**  
Dados `evalMatches` são armazenados em cache no banco de dados quando e somente quando o estado do alerta muda. Se os dados de um servidor acionarem o alerta primeiro, antes que esse servidor seja visto saindo do estado de alerta, e um segundo servidor também entrar em um estado que acionaria o alerta, o segundo servidor não estará visível nos dados `evalMatches`.

## Pausar alerta por ID
<a name="v10-Grafana-API-Alerting-pausebyId"></a>

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

**Exemplo de solicitação**

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

{
  "paused": true
}
```

O parâmetro `:id` de consulta é o ID do alerta a ser pausado ou não pausado. `paused` pode ser `true` para pausar um alerta ou `false` para retomá-lo.

**Exemplo de resposta**

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

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