<< Click to Display Table of Contents >>

Navigation:  Bizagi Studio > Bizagi from external applications > Bizagi API > SOAP web services > Available SOAP web services > WorkflowEngineSOA Web methods >



This Web method is used to obtain the Processes in a Bizagi project (from an external application).


This method receives a single input having a category name (that one from which we want to retrieve its child Processes).




The description provided in this article applies too for the a web method available in Bizagi .NET edition.

For the getWorkflowClasses method, the request and response XML's are of the native .NET XmlDocument type.

For the getWorkflowClassesAsString method the same XML structure is handled, but this parameter is sent as a string type.


Processes available in a project are always under a given category.  This hierarchical structure is shown at the Process Module in Bizagi Studio, for each application and category:




Notice that under the Travel category, we find two Processes: Travel Request and Expenses Report.





Input Schema

The following shows a sample XML structure of information to send to Bizagi:


<?xml version="1.0" encoding="utf-8"?>

<xs:schema xmlns:xs="" elementFormDefault="qualified" attributeFormDefault="unqualified">

 <xs:element name="BizAgiWSParam">



                         <xs:element name="category" type="xs:string"/>







Input Parameters

BizAgiWSParam: Root node.

category: Contains the name of the category for which we want to retrieve its Processes (enter the Name, not the display name).


Input Example

With the following example, we will retrieve Processes under the Travel category.

<?xml version="1.0" encoding="utf-8"?>








Output Schema

The following shows a sample XML structure of information returned by Bizagi:


<?xml version="1.0" encoding="utf-8"?>

<xs:schema xmlns:xsi="" xmlns:xs="" elementFormDefault="qualified" attributeFormDefault="unqualified">

 <xs:element name="workflowClasses">



                         <xs:element name="workflowClass" maxOccurs="unbounded">



                                                 <xs:element name="workflowClassId" type="xs:unsignedByte"/>

                                                 <xs:element name="workflowClassName" type="xs:string"/>

                                                 <xs:element name="workflowClassDisplayName" type="xs:string"/>

                                                 <xs:element name="workflowClassDescription"/>

                                                 <xs:element name="workflowClassHelpText"/>

                                                 <xs:element name="workflowClassHelpURL"/>

                                                 <xs:element name="workflowClassDisplayOrder" type="xs:unsignedByte"/>

                                                 <xs:element name="workflowClassCreationDate" type="xs:dateTime"/>

                                                 <xs:element name="workflowClassGlobalForm" type="xs:unsignedByte"/>

                                                 <xs:element name="workflowClassAllocationPrinciple" type="xs:string"/>

                                                 <xs:element name="workflowClassProcessType" type="xs:string"/>

                                                 <xs:element name="workflowClassDisplay" type="xs:boolean"/>

                                                 <xs:element name="workflowClassUseParentRadicationNumber" type="xs:boolean"/>

                                                 <xs:element name="workflowClassSupportsScopes" type="xs:boolean"/>

                                                 <xs:element name="caseAccessType" type="xs:string"/>










Output Parameters

workflowClasses: This is the root node. Contains a workflowClass node for each Process in the given category.

workflowClass: The information in this node is all about the Process (Process metadata) .

workflowClassId: Identification number (or key) of the Process.

workflowClassName: Name of the Process.

workflowClassDisplayName: Display name of the Process.

workflowClassDescription: Process description.

workflowClassHelpText: Process help text.

workflowClassHelpURL: Help URL for the Process.

workflowClassDisplayOrder: The order in which the Process will be viewed in the web application.

workflowClassCreationDate: Creation date of the Process.

workflowClassGlobalForm: Identification number of the Process’s global form (zero if it is not configured).

workflowClassAllocationPrinciple: Reserved for future use.

workflowClassProcessType: Process type.

workflowClassDisplay: Indicates whether the Process is visible or not.

workflowClassUseParentRadicationNumber: Indicates if a case of this Process uses its own creation number or the same number as the parent Process (if it is a Sub-process).

workflowClassSupportScopes: Indicates if the Process supports long-term transactions in Bizagi (Scopes; which is an efficient method of data persistence.

caseAccessType: Indicates the level of case security for the Process.



Output Example

In the following example, we illustrate a returned XML-structured sample response from Bizagi SOA layer, in which we can see the returned output:




Notice that within the Travel category we have two different Processes: Expenses Report and Travel Request.




Related Web methods

It is likely that you may want to use the getCategoriesAsString or getCategories Web method prior to using the Web methods to obtain Processes presented in this article.

For further information, refer to the getCategoriesAsString article.


Another option to obtain Processes is to use the getWorkflowClassesFromCategoryName Web method. The difference in this other method, is that it will receive a single string input which is not XML-formed.

For further information, refer to the getWorkflowClassesFromCategoryName article.