---
sourceDocument: 호주 API 참조
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/api-reference

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 API 참조

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# 이벤트 알림 관리 Open API 개발자 가이드

# 이벤트 알림 관리 Open API 개발자 가이드 {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 9분

이벤트 알림 관리 개방형 API를 사용하여 이벤트 \[em_event\] 테이블에서 이벤트 기록을 생성, 업데이트 및 삭제합니다.

이 개발자 가이드에서는 이벤트 알림 관리 개방형 API를 확장하여 다양한 커스터마이제이션을 수행하는 방법에 대한 정보를 제공합니다.

## 이벤트 알림 관리 Open API 확장 {#ariaid-title2}

연결된 스크립트 포함 파일을 편집하여 이벤트 알림 관리 Open API의 기능을 확장하고 수정할 수 있습니다.  
다음은 이벤트 알림 관리 Open API가 API에 전달된 이벤트 알림 요청을 처리하는 데 사용하는 스크립트 포함입니다.

* AlarmAPIProcessorOOB:TMFTopicEventAPIUtil 스크립트 포함의 함수를 지원하는 도우미 함수를 포함합니다. AlarmAPIProcessorOOB 스크립트 포함에 대한 자세한 내용은 을 참조하십시오[경보 관리 개방형 API 개발자 가이드](https://servicenow-prod.fluidtopics.net/46yCPkIHAGH0K2kx5L7P3Q#alarm-mgmt_dev-guide "경보 관리 개방형 API를 사용하여 이벤트 [em_event] 테이블에 데이터를 생성하고 업데이트합니다.").
* AlarmAPIProcessor: 빈 스크립트 포함 파일입니다. 이 파일을 업데이트하여 AlarmAPIProcessorOOB 스크립트 포함에서 재정의할 함수를 정의합니다.
* JSONSchemaValidation: TMFAlarmAPIConstants 스크립트 포함에 정의된 페이로드에 대한 스키마 확인을 처리하는 함수를 포함합니다. 이 스크립트 포함은 tmt_core 플러그인 아래에 있습니다.
* TMFAlarmAPIConstants: 상수 및 필수 매개변수 정보를 포함합니다. 또한 Event Notification Management Open 엔드포인트에 전달된 페이로드에 대한 스키마도 포함되어 있습니다.
* [TMFTopicEventAPIUtilOOB:](https://servicenow-prod.fluidtopics.net/1ZqbN7o783bK7eFOvx99BA#tmftopiceventapiutiloobScopedAPI "TMFTopicEventAPIUtilOOB 스크립트 포함에는 이벤트 [em_event] 테이블에서 이벤트를 생성, 업데이트 및 삭제하기 위해 외부 트리거 정의에 의해 트리거되는 이벤트 알림 관리 개방형 API 요청을 처리하는 함수가 포함되어 있습니다.") 이벤트를 생성, 업데이트 및 삭제하는 `AlarmCreateNotification`, `AlarmChangeNotification`, `AlarmDeleteNotification` 작업이 있는 [외부 트리거 정의 플로우](https://www.servicenow.com/docs/access?context=set-up-flow-ihub&version=australia&pubname=australia-integrate-applications&ft:locale=en-US)에 의해 트리거되는 API 요청을 처리하는 함수를 포함합니다.
* TMFTopicEventAPIUtil: 비어 있는 스크립트 포함 파일입니다. 이 파일을 업데이트하여 TMFTopicEventAPIUtilOOB 스크립트 포함에서 재정의할 함수를 정의합니다.

다음 섹션에서는 이러한 스크립트 포함 파일을 확장/수정하여 이벤트 알림 관리 Open API 처리에 수행할 수 있는 몇 가지 사용자 지정 예시를 제공합니다.

### 필수 매개변수

Event Notification Management API는 JSON 스키마를 활용하여 필수 매개변수를 정의합니다. 이러한 JSON 스키마는 TMFAlarmAPIConstants 스크립트 포함에 정의되어 있습니다. 이러한 스키마는 요청 페이로드가 유효한지 여부를 확인하는 데 사용됩니다. 이러한 스키마는 스크립트 포함에서 직접 참조되지 않지만 TMFTopicEventAPIUtilOOB 스크립트 포함의 다음 함수에 의해 반환됩니다.

* getAlarmCreateEventSchema(): 이벤트를 생성하기 위한 유효성 검사 스키마를 반환합니다.
* getAlarmDeleteEventSchema(): 이벤트 경보를 삭제하기 위한 확인 스키마를 반환합니다.
* getAlarmChangeEventSchema(): 이벤트의 필드 변경에 대한 확인 스키마를 반환합니다.

기존 스키마를 재정의하려면 TMFTopicEventAPIUtilOOB 스크립트 포함에서 새 스키마를 정의하고 TMFTopicEventAPIUtil 스크립트 포함 함수를 재정의합니다.

예:

    var TMFTopicEventAPIUtil = Class.create();
    TMFTopicEventAPIUtil.prototype = Object.extendsObject(TMFTopicEventAPIUtilOOB, {
    	// Define overriding functions here	
    	// Define getAlarmCreateEventSchema here to override OOTB function in TMFTopicEventAPIUtilOOB
    	getAlarmCreateEventSchema: function() {
    		return JSON.parse(TMFTopicEventAPIUtil.CUSTOMIZED_SCHEMA);
    	},
        type: 'TMFTopicEventAPIUtil'
    });

    // New schema
    TMFTopicEventAPIUtil.CUSTOMIZED_SCHEMA = "{
      \"title\":\"AlarmCreateEvent\",
      \"type\":\"object\",
      \"properties\":{
        \"event\":{
          \"type\":\"object\",
          \"properties\":{
            \"alarm\":{
              \"type\":\"object\",
              \"properties\":{
                \"id\":{
                  \"type\":\"string\"
                },
                \"href\":{
                  \"type\":\"string\"
                },
                \"externalAlarmId\":{
                  \"type\":\"string\"
                },
                \"alarmType\":{
                  \"type\":\"string\"
                },
                \"perceivedSeverity\":{
                  \"type\":\"string\"
                },
                \"probableCause\":{
                  \"type\":\"string\"
                },
                \"alarmedObject\":{
                  \"type\":\"object\",
                  \"properties\":{
                    \"id\":{
                      \"type\":\"string\"
                    },
                    \"href\":{
                      \"type\":\"string\"
                    }
                  },
                  \"required\":[
                    \"id\"
                  ]
                },
                \"crossedThresholdInformation\":{
                  \"type\":\"object\",
                  \"properties\":{
                    \"thresholdId\":{
                      \"type\":\"string\"
                    }
                  },
                  \"required\":[
                    \"thresholdId\"
                  ]
                },
                \"affectedService\":{
                  \"type\":\"array\",
                  \"properties\":{
                    \"id\":{
                      \"type\":\"string\"
                    },
                    \"href\":{
                      \"type\":\"string\"
                    }
                  },
                  \"items\":{
                    \"type\":\"object\",
                    \"required\":[
                      \"id\"
                    ]
                  }
                },
                \"sourceSystemId\":{
                  \"type\":\"string\"
                },
                \"specificProblem\":{
                  \"type\":\"string\"
                }
              },
              \"required\":[
                \"externalAlarmId\",\"alarmType\",\"perceivedSeverity\",\"probableCause\",\"sourceSystemId\",\"alarmedObject\"
              ]
            }
          },
          \"required\":[
            \"alarm\"
          ]
        }
      },
      \"required\":[
        \"event\"
      ]
    }";

### 요청 본문 확인 {#extend-event-mgmt-notif-api__section_ikk_tkt_prb}

요청 본문에 대한 추가 유효성 검사를 수행하려면 TMFTopicEventAPIUtilOOB 스크립트 포함에서 다음 함수를 재정의합니다. 이러한 함수는 동일한 스크립트 포함에서 지정된 함수에서 호출됩니다.

* verifyAlarmCreateEventPayload(): processAlarmCreateEvent()에 의해 호출됩니다.
* verifyAlarmDeleteEventPayload(): processAlarmDeleteEvent()에 의해 호출됩니다.
* verifyAlarmChangeEventPayload(): processAlarmChangeEvent()에 의해 호출됩니다.

이러한 모든 함수는 기본적으로 성공을 반환합니다. 도우미 함수가 오류를 반환하면 API 작업을 중지합니다.

사용자 지정 유효성 검사를 적용하려면 TMFTopicEventAPIUtil 스크립트 포함의 동일한 함수 이름 및 매개 변수를 사용하여 TMFTopicEventAPIUtilOOB 스크립트 포함의 도 우미 함수를 재정의합니다.

이 예에서 사용자 지정 TMFTopicEventAPIUtil 스크립트 포함의 함수는 TMFTopicEventAPIUtilOOB 스크립트 포함의 기본 함수를 재정의하여 이름 속성에 대한 유효성 검사를 수행합니다.  

    var TMFTopicEventAPIUtil = Class.create();
    TMFTopicEventAPIUtil.prototype = Object.extendsObject(TMFTopicEventAPIUtilOOB, {

        // Define overriding functions here
        verifyAlarmCreateEventPayload: function(eventPayload,responseObject){

            // Returning error status terminates the POST request
            // Make sure to assign error message and reason
            if (eventPayload.type != "unique") {
                responseObject.setMessage("Failed");
                responseObject.setReason("No reason needed");
                return responseObject.status = "error";
            }
        },
    	
        type: 'TMFTopicEventAPIUtil'
    });

### 요청 본문 구독 확인

API에 대한 요청 본문 구독 확인을 수정하려면 TMFTopicEventAPIUtilOOB 스크립트 포함에서 validateSubscription() 함수를 재정의해야 합니다. 이 함수는 이벤트 알림을 생성하는 데 사용 중인 callbackURL이 등록되었는지 여부를 확인하고 발생한 콜백에 대해 등록되었는지 여부를 eventType 확인합니다. 이 함수는 TMFTopicEventAPIUtilOOB 스크립트 포함에도 있는 processAlarmCreateEvent(), processAlarmDeleteEvent() 및 processAlarmChangeEvent() 함수에 의해 호출됩니다.

### 필드 매핑

기록을 만들거나 업데이트할 때 Event Notification Management Open API는 요청 본문 매개변수를 이벤트 기록 필드에 매핑합니다. 기록을 검색할 때 API는 이벤트 기록 필드를 응답 객체 속성에 매핑합니다.

TMFTopicEventAPIUtilOOB 스크립트 포함에는 매개변수의 eventType 값에 따라 변경, 생성 및 삭제 요청을 이벤트 \[em_event\] 테이블의 레코드에 매핑하는 다음 함수가 포함되어 있습니다.

* mapAlarmChangeObjectToEvent()
* mapCreateAlarmObjectToEvent()
* mapDeleteAlarmObjectToEvent()

필드 매핑을 사용자 지정하여 추가 이벤트 \[em_event\] 테이블 필드에 대한 데이터를 추가 및 검색하거나 기본 필드 매핑을 변경할 수 있습니다. 매핑을 사용하려면 TMFTopicEventAPIUtil 에서 동일한 이름과 매개변수를 사용하여 TMFTopicEventAPIUtilOOB 매핑 함수를 재정의하는 함수를 만듭니다.

