QPR ProcessAnalyzer API: Difference between revisions

From QPR ProcessAnalyzer Wiki
Jump to navigation Jump to search
Line 1: Line 1:
QPR ProcessAnalyzer WCF Web Service API (Application Programming Interface) can be used to automate operations and to create integration with other applications. All Web Service operations only accept HTTP POST method (HTTP GET is not allowed). QPR ProcessAnalyzer WCF Web Service API can be used with wsHttp (SOAP) and webHttp endpoints.
QPR ProcessAnalyzer WCF Web Service API (Application Programming Interface) can be used to automate operations and to create integration with other applications. All Web Service operations only accept HTTP POST method (HTTP GET is not allowed). QPR ProcessAnalyzer WCF Web Service API can be used with wsHttp (SOAP) and webHttp endpoints.


== WCF Web Service API Methods ==
== Web API Methods ==
* Login
* Logout
* Run query
* Cancel query
* Get filters
* Get dashboards
 
== WCF API Methods ==
The following methods are available in the WCF Web Service API:
The following methods are available in the WCF Web Service API:
* [[QPR ProcessAnalyzer API: Authenticate|Authenticate]]: Tries to authenticate given user with given password and authentication parameters.
* [[QPR ProcessAnalyzer API: Authenticate|Authenticate]]: Tries to authenticate given user with given password and authentication parameters.

Revision as of 16:16, 14 May 2020

QPR ProcessAnalyzer WCF Web Service API (Application Programming Interface) can be used to automate operations and to create integration with other applications. All Web Service operations only accept HTTP POST method (HTTP GET is not allowed). QPR ProcessAnalyzer WCF Web Service API can be used with wsHttp (SOAP) and webHttp endpoints.

Web API Methods

  • Login
  • Logout
  • Run query
  • Cancel query
  • Get filters
  • Get dashboards

WCF API Methods

The following methods are available in the WCF Web Service API:

WCF Web Service 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': ''
  })
});                       
//create user
$.ajax({
  "method": "POST",
  "url": "http://localhost/qprpa/Mainservice.svc/webHttp/SetUser",
  "dataType": "json", "contentType": "application/json; charset=utf-8",
  "data": JSON.stringify({ 
    "sessionId": sessionId,
    "user": {"Name": "user", "FullName": "first last" },
    "parameters": [{"Key": "Password", "Value": "demo"}]
  })
});
//add user to group, value 8:12:0 is user:group:member type
$.ajax({
  "method": "POST",
  "url": "http://localhost/qprpa/Mainservice.svc/webHttp/ModifyUserRelations",
  "dataType": "json", "contentType": "application/json; charset=utf-8",
  "data": JSON.stringify({ 
    "sessionId": sessionId,
    "parameters": [{"Key": "AddGroups", "Value": "8:12:0"}]
  })
});
//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 Examples

Move Data from QPR ProcessAnalyzer to Database using PowerShell

List Users

$paService=New-WebServiceProxy –Uri "http://localhost/qprpa/MainService.svc"
$connection=$paService.Authenticate("username", "password", @())
$token=$connection.GetValue(0).Value

$param=@()
$users=$paService.GetUsers($token, $null, $param)
$users
$paService | get-member | ? {$_.definition -match "GetAnalysis"}

Update Model Configuration

$paService=New-WebServiceProxy –Uri "http://localhost/qprpa/MainService.svc"
$connection=$paService.Authenticate("username", "password", @())
$token=$connection.GetValue(0).Value
$param=@()
$modelId=@(2)
$model=$paService.GetModels($token,$modelId, $param)

$model[0]
$model[0].ConfigurationJson = "{}"

$paService.SetModel($token,$model[0], $param)

Get Flowchart Image

$paService=New-WebServiceProxy –Uri "http://localhost/qprpa/MainService.svc" -Namespace "WebServiceProxy" -Class "PaService"
$connection=$paService.Authenticate("username", "password", @())
$token=$connection.GetValue(0).Value

$ids = new-object WebServiceProxy.ModelViewId
$ids.ViewId = 13
$ids.ViewIdSpecified = 1

$analysisType = 0
$processAnalysisType = 4
$minTransitionPercentage = 0.0

$png=  $paService.GetAnalysisImageAsByteArray($token, $ids,  $analysisType,1,  $processAnalysisType,1 , $minTransitionPercentage,1)
[IO.File]::WriteAllBytes('c:\tmp\image.png', $png)