cancel
Showing results for 
Search instead for 
Did you mean: 

What kind of APIs are avaiable?

JirongHu
Level 3
I am in DevOps team so only interested in automation. For example: I want a way to export the newly created release to GitHub and deploy it to the next environment. To achieve that I want an API be able to list all the releases in the system, find out the new ones. I want to do the same for Process and Objects.

The Web API expose the Process/Object's functions, not what I am looking for.

AutomateC.exe can only import/export a known Process/Object. Is there something like REST API provides a complete function similar to AutomateC.exe?

Thanks
Jirong

------------------------------
Jirong Hu
------------------------------
Jirong DevOps RBC
1 BEST ANSWER

Helpful Answers

james.man
Staff
Staff

There isn't a REST API that you can use unfortunately.  You could potentially create a Blue Prism process that will execute the CLI command to list out the known processes, import, export, or whatever you want.  And then you could expose that process as a SOAP webservice.

You could also consider reading data directly from the Blue Prism database.  We generally don't recommend that you query the main database directly (and you may not have permissions to query the DB directly), but if you have access to something like a read-replica, this might be possible.

Neither of these are perfect solutions, but hopefully they can achieve what you're looking for.



------------------------------
James Man
Professional Services
Blue Prism
Asia/Hong_Kong
------------------------------

View answer in original post

7 REPLIES 7

james.man
Staff
Staff

There isn't a REST API that you can use unfortunately.  You could potentially create a Blue Prism process that will execute the CLI command to list out the known processes, import, export, or whatever you want.  And then you could expose that process as a SOAP webservice.

You could also consider reading data directly from the Blue Prism database.  We generally don't recommend that you query the main database directly (and you may not have permissions to query the DB directly), but if you have access to something like a read-replica, this might be possible.

Neither of these are perfect solutions, but hopefully they can achieve what you're looking for.



------------------------------
James Man
Professional Services
Blue Prism
Asia/Hong_Kong
------------------------------

Hi James

Thanks for your reply. I am trying to use AutomateC.exe, the problems are:
1. AutomateC.exe needs the name of Object/Process/Release. For DevOps, I need to find out newly created/updated ones, to process them.
2. There is no way to export an existing Release.

Over the years, somebody in our organization had created a utility to query the database directory and construct everything from the Audit Event, but we are afraid the database tables will change in future.

Jirong

------------------------------
Jirong Hu
------------------------------
Jirong DevOps RBC

For a package that already exists, you can create a release and export it from the CLI using:

AutomateC /exportpackage "Package Name" /release "Release Name" /sso

If the /release <release_name> parameter is not specified, the name of the release will automatically be set to "<package_name> - Release #", where the release number is incremented automatically.

Change /sso to /user <username> <password> if necessary.

For detecting which Processes are new or Updated, you can probably look at the audit logs, for example:

Automatec /getauditlog /age 1m /sso

And look for messages matching:

The user '{0}' modified the business object '{1}'
The user '{0}' created the business object '{1}'
The user '{0}' imported the business object '{1}'
The user '{0}' created the process '{1}'
The user '{0}' modified the process '{1}'
The user '{0}' imported the process '{1}'

You might also be able to find the information you want from the system report command:

Automatec /report "C:\Users\Public\system report.txt" /sso

 



------------------------------
James Man
Professional Services
Blue Prism
Asia/Hong_Kong
------------------------------

Hi James

 

Your command will create a new release for that package. What I need to automate is if somebody created a new release (only at that moment, he or she can export that release as an XML file), I want to export that release as an XML file and import it to the next environment, a kind of promotion process. But the problem is I find no way to re-export that release as an XML file.

 

Thanks for the audit log and report information, I will look into that next.

 

Jirong

_______________________________________________________________________

If you received this email in error, please advise the sender (by return email or otherwise) immediately. You have consented to receive the attached electronically at the above-noted email address; please retain a copy of this confirmation for future reference.

Si vous recevez ce courriel par erreur, veuillez en aviser l'expéditeur immédiatement, par retour de courriel ou par un autre moyen. Vous avez accepté de recevoir le(s) document(s) ci-joint(s) par voie électronique à l'adresse courriel indiquée ci-dessus; veuillez conserver une copie de cette confirmation pour les fins de reference future.



Jirong DevOps RBC

Hi James

https://bpdocs.blueprism.com/bp-6-8/en-us/helpCommandLine.htm
I can't find this getauditlog function in the above help. So it's an undocumented function? Beside /age, is there any other options. Do you have the document?

Thanks
Jirong

------------------------------
Jirong
DevOps
RBC
------------------------------
Jirong DevOps RBC

Creation of a Release is a one time event. It's created and written to file. If there are changes to the underlying Package (ex. updated VBO etc) then you have to create a new Release which is really nothing more than a new file name.

As an alternative, you could look at the /export flag on AutomateC which will allow you to export individual processes/VBOs as .xml files.

Cheers,

------------------------------
Eric Wilson
Director, Partner Integrations for Digital Exchange
Blue Prism
------------------------------

In addition to /age, the getauditlog flag can also take parameters /fromdate yyyyMMdd /todate yyyyMMdd

------------------------------
James Man
Professional Services
Blue Prism
Asia/Hong_Kong
------------------------------