---
sourceDocument: Xanadu API Reference
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/xanadu/api-reference

 Release :

    - xanadu

ft:locale :

    - en-US

ft:publication_title :

    - Xanadu API Reference

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# Override Event Management Topic Open API functionality

# Override Event Management Topic Open API functionality {#ariaid-title1}

* Release version: Xanadu
* 
* Updated August 1, 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 1 minute to read

The Event Management Topic Open API enables you to save topic records in the Topic \[sn_api_notif_mgmt_topic\] table after validating the topic payload.
You can override the processing of a topic record by updating the methods in the [TopicAPIUtilsOOB](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopicAPIUtilsOOBAPIScoped "The TopicAPIUtilsOOB script include provides methods that are used when processing the Event Management Topic Open API endpoint.") API in the TopicAPIUtils API.  
The following is the list of available methods within this API and the default functionality that they provide:

* [TopicAPIUtilsOOB - createTopicHelper(Object topicObject, Array warnings)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-createTopHelp_O_A "Inserts the information passed in the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint into the Topic [sn_api_notif_mgmt_topic] table."): Inserts the payload passed in the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint into the Topic \[sn_api_notif_mgmt_topic\] table.
* [TopicAPIUtilsOOB - getCreateTopicSchema()](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-getCreTopSchema "Returns the defined schema for the payload used by the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint to validate the topic payload."): Returns the defined schema for the payload used by the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint to validate the topic payload. The default payload schema, <var class="keyword varname">Constants.SCHEMA</var>, is located in the sn_api_notif_mgmt.Constants script include.
* [TopicAPIUtilsOOB - isValidCreateTopicPayload(Object topicObject, String schema, Array warnings)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-isValCreTopPay_O "Validates the payload passed into the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint. This validation is performed on the request body and the schema."): Validates the payload passed into the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint. This validation is performed on the request body and the schema.
* [TopicAPIUtilsOOB - prepareCreateTopicResponse(Object topicObject, String topicSysId, Array warnings)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-prepCreTopResp_OSA "Generates and returns the response to a Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint call."): Generates and returns the response to a Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint call.
* [TopicAPIUtilsOOB - processTopicCreation(Object topicObject)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-processTopicCreation_O "Processes the request made by the Event Management Topic Open API endpoint."): Processes the request made by the Event Management Topic Open API endpoint. This method invokes the helper methods needed for data insertion, schema validation, request body validation, and response-orchestration. Override this method if you need to customize the fundamental processing of the [Event Management Topic Open - POST /sn_api_notif_mgmt/topic](https://servicenow-prod.fluidtopics.net/GN7~MKUQQ9uy6qYqrD52eA#evt_man_top-POST-topic "Creates a new record in the Topic [sn_api_notif_mgmt_topic] table and saves the passed topic information to that record.") request. Otherwise, override the individual helper methods.
* [TopicAPIUtilsOOB - transformCreateTopicResponse(Object topicObject, String topicSysId)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-tranCreTopResp_OS "Provides the ability to add custom data to the response object returned to the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint."): Provides the ability to add custom data to the response object returned to the Event Management Topic Open API - POST /sn_api_notif_mgmt/topic endpoint.
* [TopicAPIUtilsOOB - validateTopicAttributes(Object topicObject, Array details)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-valTopAtts_O_A "Validates whether the topic name, header-query, content-query, and namespace combination passed in the Event Management Topic Open API endpoint payload is unique."): Validates whether the topic name, header-query, content-query, and namespace combination passed in the Event Management Topic Open API endpoint payload is unique. The endpoint uses this attribute combinations to determine whether the topic currently exists in the Topic \[sn_api_notif_mgmt_topic\] table. The default implementation also checks whether the name attribute, which is defined as required in the default topic payload schema, is included in the passed payload.
* [TopicAPIUtilsOOB - validateTopicExternalId(Object topicObject, Array details)](https://servicenow-prod.fluidtopics.net/u70xWnodGYtra~5Jl~yaYA#TopAPIUtilOOB-valTopExtId_O_A "Validates the topic external ID passed in the request body of the Event Management Topic Open API endpoint."): Validates the topic external ID passed in the request body of the Event Management Topic Open API endpoint. In the base implementation this only validates that the external ID is not empty.

