API aberta da Gestão de notificações de eventos

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 6 min. de leitura
  • . 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.

    A carga que você passa para este endpoint deve se correlacionar com a carga que está definida em 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_SCHEMA
    • AtualizaçãoEvento : ALARM_CHANGE_EVENT_SCHEMA
    • AlarmDeleteEvent : ALARM_DELETE_EVENT_SCHEMA

    Formato de URL

    URL padrão: <instance_name>/<scope_id>/<GUID>

    Parâmetros de solicitação compatíveis

    Tabela 1. Parâmetros de caminho
    Nome Descrição
    Nenhum(a)
    Tabela 2. Parâmetros de consulta
    Nome Descrição
    Nenhum(a)
    Tabela 3. Parâmetros do corpo da solicitação
    Nome Descrição
    evento Detalhes sobre o evento ocorrido.

    Tipo de dados: Objeto

    "event": {
      "alarm": {Object}
    }
    alarme.evento Necessário quando eventType. AlarmCreateEvent .

    Detalhes sobre o alarme associado.

    Tipo de dados: Objeto

    "alarm": {
      "affectedService": [Array],
      "alarmedObject": {Object},
      "alarmType": "String",
      "crossedThresholdInformation": {Object},
      "externalAlarmId": "String",
      "href": "String",
      "id": "String",
      "perceivedSeverity": "String",
      "probableCause": "String",
      "sourceSystemId": "String",
      "specificProblem": "String",
    }
    Event.alarm.affectedService Lista de um ou mais serviços afetados pelo alarme.

    Tipo de dados: Matriz de objetos

    "affectedService":[
      {
        "href": "String",
        "id": "String"
      },
    ]
    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

    "alarmedObject":
    {
      "href": "String",
      "id": "String"
    }
    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

    "crossedThresholdInformation":
    {
      "thresholdId": "String"
    }
    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:
    • LIMPAR
    • CRÍTICO
    • PRINCIPAL
    • SECUNDÁRIO
    • AVISO

    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:
    • AlarmChangeNotification
    • AlarmCreateNotification
    • AlarmDeleteNotification

    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 .

    Tabela 4. Cabeçalhos da solicitação
    Cabeçalho Descrição
    Aceitar Formato de dados do corpo da resposta. Oferece suporte somente a application/json.
    Tabela 5. Cabeçalhos de resposta
    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 .

    Tabela 6. Códigos de status
    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.