QPR ProcessAnalyzer API: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
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 == | ||
The following | 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. | ||
* [[QPR ProcessAnalyzer API: CancelQueryOperation|CancelQueryOperation]]: Cancels running operation using query identifier. | * [[QPR ProcessAnalyzer API: CancelQueryOperation|CancelQueryOperation]]: Cancels running operation using query identifier. | ||
Line 25: | Line 25: | ||
* [[QPR ProcessAnalyzer API: GetUserRoles|GetUserRoles]] can be used to get available user roles. | * [[QPR ProcessAnalyzer API: GetUserRoles|GetUserRoles]] can be used to get available user roles. | ||
== Examples == | == WCF Web Service API Usage Examples == | ||
=== [[Move Data from QPR ProcessAnalyzer to Database using PowerShell]] === | === [[Move Data from QPR ProcessAnalyzer to Database using PowerShell]] === | ||
=== JavaScript Examples === | === JavaScript Examples === |
Revision as of 20:14, 9 October 2019
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
The following methods are available in the WCF Web Service API:
- Authenticate: Tries to authenticate given user with given password and authentication parameters.
- CancelQueryOperation: Cancels running operation using query identifier.
- DeleteModel: Deletes a model.
- DeleteProject: Deletes a project.
- GetAnalysis: Calculates and returns QPR ProcessAnalyzer analysis.
- GetAnalysisImageAsByteArray: Get Flowchart Analysis as image.
- GetModel: Can be used to query QPR ProcessAnalyzer model data.
- GetModels: Can be used to query QPR ProcessAnalyzer model related information.
- GetModelAsStream: Exports a model or a filtered data as a .pacm file.
- GetStream can be used to query contents of a stream bound to the given session identified by given stream id.
- GetUsers: can be used to get user related information.
- LogOff: Logs off the user session.
- 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.
- SetUser: Can be used to set user information.
- ValidateModel can be used to perform all the pending tasks stored in the work queue of the given model.
- GetUserPermissions can be used to query permissions given user has for a set of objects.
- ModifyUserRelations can be used to modify permissions given user.
- GetUserRoles can be used to get available user roles.
WCF Web Service API Usage Examples
Move Data from QPR ProcessAnalyzer to Database using PowerShell
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 }) });
List Users (PowerShell)
$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 (PowerShell)
$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 (PowerShell)
$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)