QPR ProcessAnalyzer API
Jump to navigation
Jump to search
QPR ProcessAnalyzer 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).
Functions in the Web Service API
The following functions are available:
- Authenticate: Tries to authenticate given user with given password and authentication parameters.
- GetAnalysisImageAsByteArray: Get Flowchart Analysis as image.
- GetModels: Can be used to query QPR ProcessAnalyzer model related information.
- GetStream can be used to query contents of a stream bound to the given session identified by given stream id.
- QueryObjectProperties returns all the listed properties queried for all the listed objects identified by unique identifiers.
- ResetModelCache: Can be used to clear all cached model information of the given model.
- RunScript can be used to execute given PA script using given parameters.
- SetModel: Can be used to set model related information.
- ValidateModel can be used to perform all the pending tasks stored in the work queue of the given model.
Example Usage
//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": "547c1aa5-e85b-4642-bbb1-8cb656015002", "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": "749dcbdb-e57b-434b-a739-1f4ddc7ebc30", "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":"75aa3d08-5ad9-4b0b-8981-7daca98348cd" }) });
PowerShell example of listing 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"}
PowerShell example 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)
PowerShell example get flowchart image
$paService=New-WebServiceProxy –Uri "http://localhost/qprpa/MainService.svc" $connection=$paService.Authenticate("username", "password", @()) $token=$connection.GetValue(0).Value $filterId = 13 $analysisType = 0 $processAnalysisType = 4 $minTransitionPercentage = 0.0 $png= $paService.GetAnalysisImageAsByteArray($token,$filterId,1, $analysisType,1, $processAnalysisType,1 , $minTransitionPercentage,1) [IO.File]::WriteAllBytes('c:\tmp\image.png', $png)