ITSM Vendor Configuration

You can configure the relevant ITSM configuration - communication end points, field mappings, closure codes - required to integrate a workflow automation flow with an IT Service Management (ITSM) tool.

  • Provision to configure the ITSM vendor name and the instance (For example, ServiceNow, Redmine, JIRA etc.) which can be referenced within the workflow tasks.
  • Provision to define credentials to connect to any ITSM system.
  • Provision to define relevant REST API details in order to do the following:
    • Create an ITSM ticket
    • Poll ITSM ticket details
    • Update an ITSM ticket
    • Close an ITSM ticket
  • Provision to define mapping of custom change ticket closure codes between AppViewX and the ITSM vendor.
  • Provision to define custom validation parameters between AppViewX vis-a-vis ITSM system, for example, Device/CI, Implementation date/time, ITSM state/status etc.

To configure a ServiceNow instance:

  1. On the Workflow Inventory page, from the navigation pane on the left, click Integration Hub.

  2. On the Integration page, click on the servicenow/change card.

  3. On the Vendor Configuration page, under Credentials, enter the URL, Username, and Password.

  4. Under General Settings, define the relevant field information.

The following table describes the field information in this section:

Field Description
Enable polling Allows you to enable periodic polling when integrated with an ITSM system.
Polling Interval (mins) Allows you to define the frequency of polling interval when integrated with an ITSM system.
Device / CI validation Allows you to validate for any mismatch between device/CI (configuration item) details between the AppViewX work order and the change ticket at the time of the work order approval and implementation.
Timezone Allows you to select the timezone from the list.
Approve mode Allows you to enable either a ‘hard stop’ or ‘override’ (the work order) in the event of any mismatch between the AppViewX work order and the change ticket details at the time of work order approval, peer review.
Implementation mode Allows you to enable either a ‘hard stop’ or ‘override’ (the work order) in the event of any mismatch between the AppViewX work order and the change ticket details at the time of work order implementation post all peer reviews.
  1. Define the Log/Configuration settings.

The following table describes the field information in this section:

Field Description
Select configuration type

Allows you to enable pushing of configuration commands and/or logs to the ITSM system.

For example, pushing config and configurations to the ‘journal field’ on ServiceNow.

Auto close Allows you to enable automatic ticket closure or otherwise on the ITSM system once the AppViewX work order is executed.
  1. Define relevant API parameters in the JSON configurator.
    {
    	"ServiceNowConfig": {
    		"serviceName": "ServiceNow",
    		"serviceApiList": {
    			"getTicket": {
    				"url": "/api/now/table/change_request?sysparm_query=number=<ticketNumber>",
    				"responseDataMapping": {
    					"state": "result~approval",
    					"startTime": "result~start_date",
    					"endTime": "result~end_date",
    					"sysId": "result~sys_id",
    					"ticketNumber": "result~number"
    				},
    				"apiListToCallAfter": [
    					"getDeviceList"
    				],
    				"name": "getTicket",
    				"method": "GET"
    			},
    			"getDeviceList": {
    				"url": "/api/now/table/task_ci?sysparm_display_value=true&sysparm_query=task=<sysId>",
    				"responseDataMapping": {
    					"deviceList": "result~ci_item~display_value"
    				},
    				"name": "getDeviceList",
    				"method": "GET"
    			},
    			"closeTicket": {
    				"url": "/api/now/table/change_request/<sysId>",
    				"responseDataMapping": {
    					"state": "result~state"
    				},
    				"payloadDataMapping": {
    					"state": "closureCode",
    					"close_notes": "comment"
    				},
    				"name": "closeTicket",
    				"method": "PUT"
    			},
    			"updateTicket": {
    				"url": "/api/now/table/change_request/<sysId>",
    				"responseDataMapping": {},
    				"payloadDataMapping": {
    					"work_notes": "updateData"
    				},
    				"name": "updateTicket",
    				"method": "PUT"
    			}
    		},
    		"validation": {
    			"state": "approved"
    		},
    		"tooltipData": {
    			"Affected CI's": "deviceList",
    			"Start Date": "startDate",
    			"End Date": "endDate",
    			"Status": "state"
    		},
    		"authorizationConfig": {
    			"type": "Basic"
    		},
    		"mandatoryHeaders": {
    			"Content-Type": "application/json"
    		},
    		"constants": {
    			"ticketCloseStates": {
    				"Success": 3,
    				"Not implemented": 4,
    				"Withdrawn": 7
    			},
    			"dateFormat": "yyyy-MM-dd HH:mm:ss"
    		}
    	}
    }
    
  2. Click Save.