Salesforce Integration with BMC Remedy System

The BMC Remedy ITSM (IT Service Management Suite) is provided with a number of OOB (Out of the Box) web services that can be used to create, query and modify requests. The most common integration is with the Incident Module. Commonly, integrations to these web services are from third party applications that can consume these web services and perform actions such as to create, query and modify requests. Interfaces can be written in a number of languages, such as Salesforce, Java, ASP, C, .NET, etc. to interact with these web services.
This document explains how a Case created in Salesforce can be created in Remedy. It also explains how incident number of Remedy can be transferred back to Salesforce. This incident number can be used to query Remedy about cases details of Remedy.

Incident Management Web Services By BMC Remedy:
Remedy system provide SOAP based web-service. These are:

  1. HPD_IncidentInterface_Create_WS
  2. HPD_IncidentInterface_WS_Get_Status

They can be accessed from the following links:

  1. http://<midtier_server>/arsys/WSDL/public/<servername>/HPD_IncidentInterface_Create_WS
  2. http://<midtier_server>/arsys/WSDL/public/<servername>/HPD_IncidentInterface_WS_Get_Status

  1. HPD_IncidentInterface_Create_WS :

  2. HPD_IncidentInterface_Create_WS web service has a method with a multiple parameters. These parameters are mapped with the fields of remedy System when calling this web service in order to create cases. We will get ‘Incident number’ as a response if it is created successfully.

    Fig. 1: Created Case in Remedy System

  3. HPD_IncidentInterface_WS_Get_Status
  4. This is used to retrieve the updated information from remedy system. Remedy has provided ‘HPD_IncidentInterface_WS_Get_Status’ SOAP based service. This SOAP based web service has single method with one parameter. If we pass valid “Incident number” as a parameter in this method then we will get updated information from remedy system in Salesforce and case can be updated with new values.

    Fig. 2: Case with Remedy Incident number in Salesforce

There are a few things that need to be followed when using these Web Services.

  1. When creating a request, ALL the fields that are mapped into the WSDL need to be provided even if they are NULL. These are expected in the SOAP request and therefore all the fields need to be provided.
  2. The required fields, along with Authentication Information, must be provided as a minimum these are Action, Last_Name, First_Name, Status, Service_Type, Impact Urgency, Summary, Reported_Source.

Steps to Integrate with Salesforce:
Step 1: To integrate with Salesforce, we need to download the WSDL file from Remedy System. These file can be download from following URL:
http://<midtier_server>/arsys/WSDL/public/<servername>/HPD_IncidentInterface_Create_WS
http://<midtier_server>/arsys/WSDL/public/<servername>/HPD_IncidentInterface_WS_Get_Status
Note: Here midtier_server is the name of server or IP address and port number (for example: 127.0.0.0:8080)
Step 2: After download, we need to parse these WSDL files in the apex classes.
Step 3: If parsing goes successfully then one apex class gets created in the Salesforce for each WSDL files
Step 4: Use methods of Generated apex classes to create the Incident in the Remedy and get the created incident data from Remedy to Salesforce.