QPR ProcessAnalyzer API

From QPR ProcessAnalyzer Wiki
Revision as of 09:54, 25 January 2021 by Ollvihe (talk | contribs) (→‎Web API)
Jump to navigation Jump to search

QPR ProcessAnalyzer API's can be used to automate operations in process mining or create integration with other applications. QPR ProcessAnalyzer has two API:

  • Web API: REST-based API used by the web UI.
  • WCF API: Older API used by the Excel Client and ScriptLauncher.

Prefer the Web API, because WCF API is a legacy API that will be removed in future.

Web API

The Web API is a JSON based API using the REST design principle. All operations require a prior login which is done with the Token operation with username and password (the access token is returned as a response for a successful login). All operations (except the Token) need to have a HTTP request header Authorization with value Bearer <access token> in place to identify the session.

Url for calling the API has the following form (replace the DNS name with a correct one):

https://customer.onqpr.com/qprpa/api/<operationName>

Following operations are available:

  • token: Login user using username and password, and get a session token as a response.
  • signout: Logs out a session.
  • expression/query: Run query in the server and returns results as a response.
  • cancel: Cancels currently running operation.
  • filters: Get all filters in system or filters in a model.
  • serverinfo: Gets the default UI language in whether SSO has been configured.
  • importfile: Import data into models and datatables from .csv, .xes and .pacm files.
  • usersettings: Save user specific settings to the server.
  • operations/terminate: Terminates selected operations (i.e. end tasks).

In addition, there are Web API operations for

WCF API

All WCF API operations only accept HTTP POST method (HTTP GET is not allowed). WCF API can be used with wsHttp (SOAP) and webHttp endpoints.

The following methods are available in the WCF API:

  • Authenticate: Tries to authenticate given user with given password and authentication parameters.
  • GetStream can be used to query contents of a stream bound to the given session identified by given stream id.
  • LogOff: Logs off the user session.
  • RunScript can be used to execute given script using given parameters.

WCF API Usage Examples

JavaScript Examples

//login                 
$.ajax({
  "method": "POST",
  "url": "http://localhost/qprpa/Mainservice.svc/webHttp/Authenticate",
  "dataType": "json", "contentType": "application/json; charset=utf-8",
  "data": JSON.stringify({
    'logOnName': '<username>',
    'password': '<password>',
    'parameters': ''
  })
});                       
//log off
$.ajax({
  "method": "POST",
  "url": "http://localhost/qprpa/Mainservice.svc/webHttp/LogOff",
  "dataType": "json", "contentType": "application/json; charset=utf-8",
  "data": JSON.stringify({ 
    "sessionId": sessionId
  })
});

PowerShell Example: Move Data from QPR ProcessAnalyzer to Database using PowerShell