Integration with BMC Remedyforce

BigFix Runbook AI integrates with BMC RemedyForce for Incident Management (IM) by creating and managing the required IM data sources. Before creating or configuring the data source, ensure that the organization has been set up.

Incident Management

To create a data source for Incident Management, perform the following steps:

  • On the main menu bar, click ActionsManage Data Sources.
  • The Create Data Source page appears with the following tabs:
  • Organization
  • Data Source
  • Fetch Data Configuration
  • Manage Rules Configuration
Figure 1. Figure 241 - Create Data Source

Release Rules Configuration is only applicable for the following Module types- Incident Management, Change Request Task and Service Request Task. This tab will not be activated for other module types.

  • On the Organization tab,
  • Select the Organization Name from the dropdown.
  • Select the Module as Incident Management, since we are configuring this data source for pulling the incident tickets.
  • Select the Service as Remedyforce Tool as we are configuring the data source for BMC Remedyforce.
  • Select the Integration Type as REST, since we will be integrating through REST APIs.
  • Click Next.
Figure 2. Figure 242 - Create Data Source (cont.)
  • On the Data Source tab,
  • Type the new data source in the Name field.
  • Select the Timezone to specify the time zone of the selected data source.
  • Select Timestamp to view the present data with date and time.
  • Select Analysis Enabled if user wants to analyze the data retrieved from the data source.
  • Click Next.
Figure 3. Figure 243 - Create Data Source (cont.)
  • On the Fetch Data Configuration tab, type in the details as per the environment.
  • In the Connection Details section, enter the following details:
  • URL – Type the URL which contains the placeholders that display the parameters based on the applied clause such as the number of records to be fetched, query type, date on which the data is fetched, and the order by and so on. It is dependent on the URL or API provided by the tool.
  • Sample URL - https://localhost/services/data/v45.0/query?q=SELECT+#Fields#+from+BMCServiceDesk__Incident__c+WHERE+BMCServiceDesk__queueName__c+=+'#AssignmentGroup#'+AND+BMCServiceDesk__Status_ID__c+IN+(#State#)
  • Authentication Type – Select one of the Authentication Types from Basic / Windows, JWT, OAuth 2.0
  • Selection of Basic / Windows requires you to enter -
  • User Id
  • Password.
  • Selection of JWT / OAuth 2.0 requires you to enter -
  • User Id
  • Password
  • Authentication URL
  • Here, we will be using JWT as the Authentication Type.
  • Proxy Required – Check Proxy Required, if the environment needs access to content from data sources outside the firewall.
  • Click on Test Connection to check accessibility of URL from service. Testing the connection is not mandatory, you can still create Data source.
Figure 4. Figure 244 – Create Data Source (Connection Details)
Graphical user interface, text, application, email Description automatically generated
  • For Password, click on icon next to it. If the password is available in plaintext, then select Input type as Input Text and enter the password in Value field. Else if it is available in any Key Vault such as CyberArk then select Input Type as CyberArk and then select any of the configured details from the value field.
Figure 5. Figure 245  Password in plaintext
Graphical user interface, application Description automatically generated
Figure 6. Figure 246  Password from Key Vault (CyberArk)
Graphical user interface Description automatically generated
  • Request Authentication Parameters – If the user has additional parameters, click Add Authentication Parameters under the Request Authentication Parameters tab.
  • Based on the Authentication Type, add the parameters mentioned in the below table:
Table 1. Table 47– Sample Authentication Parameters
Authentication Type Key Value Is Encrypted? Is Key?
JWT username <username> NO YES
JWT password <password> YES YES
JWT AuthMethod POST NO NO
JWT AuthPrefix AR-JWT NO NO
JWT TokenKey access_token NO NO
JWT ResponseType TEXT NO NO
OAuth2.0 username <username NO YES
OAuth2.0 password <password> YES YES
OAuth2.0 AuthMethod POST NO NO
OAuth2.0 AuthPrefix Bearer NO NO
OAuth2.0 client_id <clientID> YES YES
OAuth2.0 client_secret <clientsecret> YES YES
OAuth2.0 TokenKey access_token NO NO
OAuth2.0 ResponseType JSON NO NO
OAuth2.0 grant_type Password NO YES
Figure 7. Figure 247 – Create Data Source (Request Authentication Parameters for JWT)
Figure 8. Figure 248 – Create Data Source (Request Authentication Parameters for JWT)
  • URL Path Parameters – Based on the URL entered earlier, please map the values to the URL Path Parameters. E.g., for the URL entered earlier, please populate the below inputs:

Key: #Fields#

ValueType: Text

Value:

id,Name,CreatedDate,LastModifiedDate,BMCServiceDesk__Status_ID__c,BMCServiceDesk__FKStatus__c,BMCServiceDesk__shortDescription__c,BMCServiceDesk__incidentDescription__c,BMCServiceDesk__queueName__c,OwnerID

Note – These columns are mandatory. User can add more columns if more data is required to be fetched from ITSM tool.

Key: #AssignmentGroup#

ValueType: Text

VALUE: SMI-iautomate-L2e

Key: #State#

ValueType: Text

VALUE: ''ASSIGNED'',''OPENED'',''IN PROGRESS''

Figure 9. Figure 249 – URL Path Parameters (BMC Remedy – Incident Management)
  • Request Header Parameters – Please enter the request header parameters as required.
  • Response Body – In this section, please enter the output of URL query for one of the incidents in JSON format. A sample response is mentioned below.

Response Body – {

"totalSize": 1,

"done": true,

"records": [

{

"attributes": {

"type": "BMCServiceDesk__Incident__c",

"url": "/services/data/v45.0/sobjects/BMCServiceDesk__Incident__c/a1T3H0000008bssUAA"

},

"Id": "a1T3H0000008bssUAA",

"Name": "00238924",

"CreatedDate": "2020-07-14T14:48:04.000+0000",

"LastModifiedDate": "2020-07-20T11:28:24.000+0000",

"BMCServiceDesk__completedDate__c": "2020-07-20T10:28:14.000+0000",

"BMCServiceDesk__Status_ID__c": "CLOSED",

"BMCServiceDesk__FKStatus__c": "a2958000000NzamAAC",

"BMCServiceDesk__shortDescription__c": "Test Ticket for BigFix Runbook AI",

"BMCServiceDesk__incidentDescription__c": "Test Ticket for BigFix Runbook AI",

"BMCServiceDesk__queueName__c": "SMI-iautomate-L2e",

"OwnerId": "00G3H000000W37OUAS"

}

]

}

  • After entering the response, click Extract Keys to add the parameters in the Mandatory Parameter Mapping section.
  • Mandatory Parameter Mapping – Please map the mandatory parameters to the respective values as mentioned in the screenshot below.
Table 2. Table 48– Sample Mandatory Mapping Parameters
Key Value Type Value
TicketNumber JSON.Keys records.0.Name
Summary JSON.Keys records.0.BMCServiceDesk__shortDescription__c
Description JSON.Keys records.0.BMCServiceDesk__incidentDescription__c
CreationDate JSON.Keys records.0.CreatedDate
StatusCode JSON.Keys records.0.BMCServiceDesk__Status_ID__c
ResolvedDate JSON.Keys records.0.BMCServiceDesk__completedDate__c
LastModifiedDate JSON.Keys records.0.LastModifiedDate
Figure 10. Figure 250 – Mandatory Parameter Mapping
  • If you need to add Optional parameters, click Add Response Parameter to add more parameters. For our purpose, we will be adding a couple of extra parameters, as mentioned below, as we need them in the later section.
Table 3. Table 49– Sample Optional Mapping Parameters
Key Value Type Value
AssignedGroup JSON.Keys records.0.BMCServiceDesk__queueName__c
Col1 JSON.Keys records.0.id
AssignedGroupUniqueId JSON.Keys records.0.BMCServiceDesk__queueName__c
Status JSON.Keys records.0.BMCServiceDesk__FKStatus__c
Figure 11. Figure 251 – Optional Parameter Mapping
  • Click Next to proceed to Release Rules Configuration.
  • On Release Rules Configuration tab, type in the details as per the requirement.
  • In the Connection Details section, enter the following details:
  • URL – Type the URL of the selected service type to release the ticket. It contains the placeholders that display the parameters based on the applied clause and is dependent on the URL or API provided by the tool.
  • Sample URL - http://localhost:8005/Release/#TicketID#
  • Authentication Type – Please enter the information in line with the Authentication type configured for fetching data configuration previously.
  • Request Method – Select Request Method as PUT from the drop-down.
  • Proxy Required – Check Proxy Required, if the environment needs access to content from data sources outside the firewall.
  • Click on Test Connection to check accessibility of URL from service. Testing the connection is not mandatory, you can still create Data source.
Figure 12. Figure 252 – Test Connection
Graphical user interface, text, application, email Description automatically generated
  • For Password, click on icon next to it. If the password is available in plaintext, then select Input type as Input Text and enter the password in Value field. Else if it is available in any Key Vault such as CyberArk then select Input Type as CyberArk and then select any of the configured details from the value field.
Figure 13. Figure 253 - Password in plaintext
Graphical user interface, application Description automatically generated
Figure 14. Figure 254 - Password from Key Vault (CyberArk)
Graphical user interface Description automatically generated
  • URL Path Parameters – Based on the URL entered earlier, please map the values to the URL Path Parameters. E.g., for the URL entered earlier, please populate the below inputs.

Key: #TicketId#

ValueType: Table Columns

Value:

Select from dropdown that mapped to sys_id from previous screen “Col1

Figure 15. Figure 255 – Release Rules Configuration (URL Path Parameters)
  • Request Header Parameters – Please enter the request header parameters as required.
  • Request Body – In this section, please enter the request body in JSON format. A sample request is mentioned below:

Request Body – {

"grptransfer": {

"OwnerId": "#AssignmentGroupID#",

"BMCServiceDesk__queueName__c": "#AssignmentGroup#"

},

"workorder": {

"BMCServiceDesk__FKAction__c": "#ActionCode#",

"BMCServiceDesk__note__c": "#WorkNotes#",

"BMCServiceDesk__FKIncident__c": "#IncidentID#",

"BMCServiceDesk__description__c": "#BigFix Runbook AIWorkNotesManual#",

"BMCServiceDesk__FKUser__c": "#UserID#"

}

}

Figure 16. Figure 256 – Release Rules Configuration (Request Body)
  • Response Body – In this section, please enter the response body in JSON format. A sample response is mentioned below.

Response Body –

{ "result" : "#success#" }

Figure 17. Figure 257 – Release Rules Configuration (Response Body)
  • Response Key Value mapping can be done as per the below table.
Table 4. Table 50– Sample Response Key Value Mapping
#success# Text Success
  • Click Submit to add the data source.
  • In order to bring the tickets within BigFix Runbook AI scope, a specific queue needs to be configured in the ITSM tool and same has to be configured in BigFix Runbook AI. This is achieved through Manage the Entry Criteria. Please perform the below steps:
  • Go to Action tab and click Manage Data Sources.
  • On the Data Sources tab, click next to the data source user wants to manage. Manage Entry Criteria screen appears.
Figure 18. Figure 258 – Manage Entry Criteria
  • Select ‘AssignedGroup’ for the Column field and ‘equals to’ for the Operator field.
  • Enter the sys_id of the assignment group in Remedyforce in the Value field.
  • Clause and Sub-Clause fields can also be added based on requirement.
Figure 19. Figure 259 – Manage Entry Criteria (cont.)
  • Click Save.