API aberta da Gestão de notificações de eventos
. Gestão de notificações de eventos aberta A API fornece um endpoint para criar, atualizar e excluir eventos da tabela Eventos [em_event].
. Gestão de notificações de eventos aberta A API (sn_ind_tmf688) é uma ServiceNow Implementação da especificação de API aberta do TM Forum. Esta API é baseada em TMF688 Event Management API v4.0.0 . Você pode localizar informações adicionais de alarme em TMF642 Guia do usuário da API de gestão de alarmes TMF642 .
Esta API pode ser estendida para fazer personalizações em relação aos parâmetros necessários, solicitar validação de corpo, operações REST adicionais e mapeamentos de campo. Para obter mais informações, consulte. Guia do desenvolvedor de API aberta da Gestão de notificações de eventos.
API aberta da Gestão de notificações de eventos – POST instance_name/scope_id/GUID
Coloca a carga da solicitação associada na fila do NowMQ. Essa fila é processada em segundo plano para criar, atualizar e excluir eventos na tabela Eventos [em_event].
Este endpoint é diferente de outros endpoints no ServiceNow plataforma. Em vez de ter um endpoint para cada tarefa específica, como criar, atualizar e excluir, há apenas um único endpoint para todas as funcionalidades. O parâmetro eventTypena carga de chamada determina a tarefa a ser executada com base no valor aprovado de AlarmCreateEvent , AtualizaçãoEvento ou AlarmDeleteEvent .
O formato da chamada REST também é diferente das implementações REST padrão. Cada sistema externo que usará esta API, como Kafka, monitores de banco de dados ou outras aplicações, deve primeiro se registrar no ServiceNow plataforma. Eles também devem ter seu próprio webhook em vigor que usa as informações fornecidas durante o registro para gerar a assinatura necessária para chamar este endpoint, incluindo instance_name aplicação scope_id e exclusivo GUID . . GUID identifica o sistema de rede externa do qual a solicitação veio.
TMFAlarmAPIConstantes inclusão de script para o correspondente eventTypevalor do parâmetro. Todos os parâmetros passados na carga e não definidos no esquema são ignorados pelo endpoint.AlarmCreateEvent:ALARM_CREATE_EVENT_SCHEMAAtualizaçãoEvento:ALARM_CHANGE_EVENT_SCHEMAAlarmDeleteEvent:ALARM_DELETE_EVENT_SCHEMA
Formato de URL
URL padrão: <instance_name>/<scope_id>/<GUID>
Parâmetros de solicitação compatíveis
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| Nenhum(a) |
| Nome | Descrição |
|---|---|
| evento | Detalhes sobre o evento ocorrido. Tipo de dados: Objeto |
| alarme.evento | Necessário quando eventType. AlarmCreateEvent . Detalhes sobre o alarme associado. Tipo de dados: Objeto |
| Event.alarm.affectedService | Lista de um ou mais serviços afetados pelo alarme. Tipo de dados: Matriz de objetos |
| Event.alarm.affectedService.href | Referência de URL que fornece detalhes do serviço afetado. Tipo de dados: Cadeia de caracteres |
| event.alarm.affectedService.id | Identificador do serviço afetado pelo alarme. Este valor é mapeado para o item de configuração (IC) afetado no alerta. Tipo de dados: Cadeia de caracteres |
| Event.alarmedObject | Necessário ao criar um evento. Detalhes do objeto de alarme. Tipo de dados: Objeto |
| Event.alarmedObject.href | Necessário ao criar um evento. Referência de URL para obter os detalhes do objeto de alarme. Tipo de dados: Cadeia de caracteres |
| event.alarm.alarmedObject.id | Necessário quando eventType. AlarmCreateEvent . Identificador exclusivo do objeto de alarme. Este valor é mapeado para um IC no sistema. Tipo de dados: Cadeia de caracteres |
| Event.alarmType.alarmType | Necessário quando eventType. AlarmCreateEvent . Tipo de alarme. Usado para categorizar o alarme. Por exemplo: "QualityOfServiceAlarm" Tipo de dados: Cadeia de caracteres |
| Event.alarm.CrossedThresholdInformation | Detalhes sobre o limite cruzado. Tipo de dados: Objeto |
| Event.alarm.CrossedThresholdInfomation.thresholdId | Identificador exclusivo do limite que causou o alarme. Tipo de dados: Cadeia de caracteres |
| Event.alarm.externalAlarmId | Necessário quando eventType. AlarmCreateEvent . Necessário quando eventType. AlarmDeleteEvent ou AlarmChangeEvent . Ido parâmetro não foi especificado. Identificador exclusivo do alarme do sistema de origem que publica o alarme. Tipo de dados: Cadeia de caracteres |
| event.alarm.href | Referência de URL para o alarme. Por exemplo: "http://api/alarm/ROUTER_IF@Cisco-0000-0-0-0-0-00-00-0-- XZ0/00 às 00" Tipo de dados: Cadeia de caracteres |
| event.alarm.id | Necessário quando eventType. AlarmDeleteEvent ou AlarmChangeEvent se externalAlarmIdnão foi especificado. Identificador exclusivo do alarme. Especificado pelo sistema proprietário do alarme. Por exemplo: "8675399" Tipo de dados: Cadeia de caracteres |
| Event.alarm.perceivedSeverity | Necessário quando eventType. AlarmCreateEvent . Possíveis gravidades associadas ao alarme. Os valores são consistentes com a recomendação X.733 da ITU-T. Depois que um alarme é limpo, sua gravidade percebida é definida como "LIMPAR" e não pode mais ser definida. Valores válidos:
Tipo de dados: Cadeia de caracteres |
| event.alarm.probableCause | Necessário quando eventType. AlarmCreateEvent .Situação mais provável para acionar o alarme. Use com alarmTypepara qualificar o alarme. Os valores possíveis são consistentes com a recomendação ITU-T X.733 ou 3GPP TS 32.111-2 Anexo B. Por exemplo: "Limite cruzado" Tipo de dados: Cadeia de caracteres |
| Event.alarm.sourceSystemId | Necessário quando eventType. AlarmCreateEvent . Identificador exclusivo do sistema de origem do alarme. Por exemplo: "SOURCE_SYSTEM_vManage_00000_000_00" Tipo de dados: Cadeia de caracteres |
| Evento.alarm.specificProblema | Problema específico que aciona o alarme. Use com probableCausetparâmetro para qualificar o alarme. Por exemplo: "Limite de tráfego de entrada excedido" Tipo de dados: Cadeia de caracteres |
| eventType | Obrigatório. Tipo de evento a ser processado. Valores válidos:
Tipo de dados: Cadeia de caracteres |
Cabeçalhos
Os cabeçalhos de solicitação e resposta a seguir se aplicam somente a esta ação HTTP ou se aplicam a esta ação de maneira distinta. Para obter uma lista de cabeçalhos gerais usados na REST API, consulte Cabeçalhos de REST API compatíveis .
| Cabeçalho | Descrição |
|---|---|
| Aceitar | Formato de dados do corpo da resposta. Oferece suporte somente a application/json. |
| Cabeçalho | Descrição |
|---|---|
| Nenhum(a) |
Códigos de status
Os seguintes códigos de status se aplicam a esta ação HTTP. Para obter uma lista de possíveis códigos de status usados na REST API, consulte Códigos de resposta HTTP da REST API .
| Código do status | Descrição |
|---|---|
| 200 | Retornado para cada chamada, independentemente do status de processamento real da chamada. Indica somente que o endpoint recebeu a solicitação. |
Parâmetros do corpo da resposta
| Nome | Descrição |
|---|---|
| Nenhum(a) | Este endpoint é assíncrono e, portanto, não retorna dados de resposta. |
Solicitação de curl
A seguir mostra a carga possível para um evento de alarme de criação. Este exemplo reflete os parâmetros que estão na implementação padrão ( AlarmCreateEventSchema ).
--data "{
"eventType": "AlarmCreateNotification",
"event": {
"alarm": {
"id": "",
"externalAlarmId": "ext123456",
"alarmType": "QualityOfServiceAlarm",
"perceivedSeverity": "MINOR",
"alarmedObject": {
"id": "vManage_000000",
"href": " http://api/alarmedobject/000000"
},
"probableCause": "Threshold crossed",
"sourceSystemId": "SOURCE_SYSTEM_vManage_00000_000_00",
"href": "http://api/alarm/ROUTER_IF@Cisco-0000-0-0-0-0-00-00-0-- Xz0/00@00",
"specificProblem": "Inbound Traffic threshold crossed",
"crossedThresholdInformation": {
"thresholdId": "12fasdfasdfasd"
},
"affectedService": [
{
"id": "SD WAN Enterprise Solutions",
"href": "http://api/service/vlan_dot0_dot0"
}
]
}
}
}
Nenhuma resposta retornada.
Solicitação de curl
A seguir mostra a carga possível para um evento de alarme de mudança. Este exemplo reflete os parâmetros que estão na implementação padrão ( AlarmChangeEventSchema ).
--data "{
"eventType": "AlarmChangeEventSchema",
"event": {
"alarm": {
"id": "",
"externalAlarmId": "ext123456",
"perceivedSeverity": "MAJOR",
"probableCause": "Threshold crossed",
"crossedThresholdInformation": {
"thresholdId": "12fasdfasdfasd"
},
"affectedService": [
{
"id": "SD WAN Enterprise Solutions",
"href": "http://api/service/vlan_dot0_dot0"
}
]
}
}
}
Nenhuma resposta retornada.
Solicitação de curl
A seguir mostra a carga possível para um evento de alarme de exclusão (limpar). Este exemplo reflete os parâmetros que estão na implementação padrão ( AlarmDeleteEventSchema ).
--data "{
"eventType": "AlarmDeleteEventSchema",
"event": {
"alarm": {
"id": "",
"externalAlarmId": "ext123456",
"perceivedSeverity": "MAJOR",
"probableCause": "Threshold crossed",
"crossedThresholdInformation": {
"thresholdId": "12fasdfasdfasd"
}
}
}
}
Nenhuma resposta retornada.