API de canais de notificação de alertas - Amazon Managed Grafana

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 canais de notificação de alertas

Use a API Alerting Notification Channels para criar, atualizar, excluir e recuperar canais de notificação.

O identificador (id) de um canal de notificação é um valor numérico de incremento automático e é exclusivo somente por espaço de trabalho. O identificador exclusivo (uid) de um canal de notificação pode ser usado para identificar de forma exclusiva uma pasta entre vários espaços de trabalho. Ele é gerado automaticamente se você não fornecer um ao criar um canal de notificação. O uid permite ter URLs consistentes para acessar canais de notificação e ao sincronizar canais de notificação entre vários espaços de trabalho do Amazon Managed Grafana.

nota

Para usar uma API do Grafana com seu espaço de trabalho do Amazon Managed Grafana, você deve ter um token válido da API Grafana. Você inclui isso no Authorization campo na solicitação da API. Para obter informações sobre como criar um token para autenticar suas chamadas de API, consulteAutenticar com tokens.

Obtenha todos os canais de notificação

Retorna todos os canais de notificação que o usuário autenticado tem permissão para visualizar.

GET /api/alert-notifications

Exemplo de solicitação

GET /api/alert-notifications HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json [ { "id": 1, "uid": "sns-uid", "name": "test", "type": "sns", "isDefault": false, "sendReminder": false, "disableResolveMessage": false, "frequency": "", "created": "2023-09-08T19:57:56Z", "updated": "2023-09-08T19:57:56Z", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false }, "secureFields": {} } ]

Obtenha todos os canais de notificação (pesquisa)

Retorna todos os canais de notificação, mas com informações menos detalhadas. Acessível por qualquer usuário autenticado e é usado principalmente para fornecer canais de notificação de alerta na interface do console do espaço de trabalho Grafana ao configurar as regras de alerta.

GET /api/alert-notifications/lookup

Exemplo de solicitação

GET /api/alert-notifications/lookup HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json [ { "id": 1, "uid": "sns-uid", "name": "test", "type": "sns", "isDefault": false }, { "id": 2, "uid": "slack-uid", "name": "Slack", "type": "slack", "isDefault": false } ]

Obtenha todos os canais de notificação por UID

GET /api/alert-notifications/uid/:uid

Exemplo de solicitação

GET /api/alert-notifications/uid/sns-uid HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "id": 1, "uid": "sns-uid", "name": "test", "type": "sns", "isDefault": false, "sendReminder": false, "disableResolveMessage": false, "frequency": "", "created": "2023-09-08T19:57:56Z", "updated": "2023-09-08T19:57:56Z", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false }, "secureFields": {} }

Obtenha todos os canais de notificação por ID

GET /api/alert-notifications/:id

Exemplo de solicitação

GET /api/alert-notifications/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "id": 1, "uid": "sns-uid", "name": "test", "type": "sns", "isDefault": false, "sendReminder": false, "disableResolveMessage": false, "frequency": "", "created": "2023-09-08T19:57:56Z", "updated": "2023-09-08T19:57:56Z", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false }, "secureFields": {} }

Crie um canal de notificação

Para ver quais canais de notificação são compatíveis com o Amazon Managed Grafana, consulte a lista de notificadores compatíveis em. Trabalhando com pontos de contato

POST /api/alert-notifications

Exemplo de solicitação

POST /api/alert-notifications HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890 { "uid": "new-sns-uid", // optional "name": "sns alert notification", //Required "type": "sns", //Required "isDefault": false, "sendReminder": false, "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false } }

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "id": 1, "uid": "new-sns-uid", "name": "sns alert notification", "type": "sns", "isDefault": false, "sendReminder": false, "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false }, "created": "2018-04-23T14:44:09+02:00", "updated": "2018-08-20T15:47:49+02:00" }

Atualizar canal de notificação por UID

PUT /api/alert-notifications/uid/:uid

Exemplo de solicitação

PUT /api/alert-notifications/uid/sns-uid HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890 { "uid": "sns-uid", // optional "name": "sns alert notification", //Required "type": "sns", //Required "isDefault": false, "sendReminder": true, "frequency": "15m", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false } }

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "id": 1, "uid": "sns-uid", "name": "sns alert notification", "type": "sns", "isDefault": false, "sendReminder": true, "frequency": "15m", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false }, "created": "2017-01-01 12:34", "updated": "2017-01-01 12:34" }

Atualizar canal de notificação por ID

PUT /api/alert-notifications/:id

Exemplo de solicitação

PUT /api/alert-notifications/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890 { "id": 1, "uid": "sns-uid", // optional "name": "sns alert notification", //Required "type": "sns", //Required "isDefault": false, "sendReminder": true, "frequency": "15m", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false } }

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "id": 1, "uid": "sns-uid", "name": "sns alert notification", "type": "sns", "isDefault": false, "sendReminder": true, "frequency": "15m", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false }, "created": "2017-01-01 12:34", "updated": "2017-01-01 12:34" }

Excluir canal de notificação por UID

DELETE /api/alert-notifications/uid/:uid

Exemplo de solicitação

DELETE /api/alert-notifications/uid/sns-uid HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "message": "Notification deleted" }

Excluir canal de notificação por ID

DELETE /api/alert-notifications/:id

Exemplo de solicitação

DELETE /api/alert-notifications/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "message": "Notification deleted" }

Canal de notificação de teste

Envia uma mensagem de notificação de teste para o tipo e as configurações do canal de notificação fornecidos.

POST /api/alert-notifications/test

Exemplo de solicitação

POST /api/alert-notifications/test HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer 1234abcd567exampleToken890 { "type": "sns", "settings": { "authProvider": "default", "autoResolve": true, "httpMethod": "POST", "messageFormat": "json", "severity": "critical", "topic": "<SNS-TOPIC-ARN>", "uploadImage": false } }

Exemplo de resposta

HTTP/1.1 200 Content-Type: application/json { "message": "Test notification sent" }