Triggering a K2 Workflow from Microsoft Flow.

In this Post we shall see how we can trigger a K2 workflow from a Microsoft flow.

We have 2 ways to do this.

  • Using the K2 connector.
  • Using the OOB K2 Api.

Using the K2 connector

  • Go to Microsoft flow Dashboard and click on “New” and you will see few options among which you need to select “Instant – from blank”.
  • Give your flow a name and there you will find different options to trigger this flow. Here I have selected “Manually trigger a flow”.
  • Once the flow designer opens, Click on New Step in the search box and type K2 which will show you the K2 related connectors. Select the K2 Workflow connector as shown in below.
  • Select Start Workflow from the list shown.
  • Next provide the details of your workflow, you can pass either Workflow Id or workflow name here or you can select from the list.

Now create a new connection by clicking on dots and select New Connection

Enter data and click create which will create a new K2 connection and use it for this step.

** This Connector that we are using here is a preview K2 Connector version which uses a single user account credentials which we need to use only for development Purpose. But in general UAT and production environment we have to create a Custom Connector which uses Oauth to authenticate.

To Know about Creating K2 Custom Connector please visit the link below

https://help.k2.com/kb002870

  • Once you select the workflow it will provide options to pass folio, data fields  and some advanced options as shown in below screengrab
  • Click on Save and then Click on Test and Select I’ll Perform the trigger Action
  • Once flow Started Successfully, we can go “My Flows” and tab and select the flow that we have created and click on dots Symbol and select Run history to see the status of the flow instance that we have started.

Here the Flow instance status shows as Test Succeeded which means the flow has run successfully and it should have created an instance in K2. Let’s go to K2 Management Site and see if it has created an instance.

You can see the instance has been created successfully. Let’s see the other approach using K2 api.

Using the OOB K2 Api.

  • Enable K2 REST Api from K2 Management (Use below link to know how)

https://help.k2.com/onlinehelp/K2Five/UserGuide/current/default.htm#K2-Management-Site/Integration/Workflow-REST-API.htm

  • Once enabled check whether they are configured properly or not by running below url in post man or directly in chrome browser.

https://servername/Api/Workflow/V1/workflows

If we see the data then we are good to go.

  • Go to Microsoft flow designer -> navigate to my flows – > select the flow that we created before -> click edit -> add new step -> Search for HTTP and select.
  • Enter the Requests details as shown in below.

You can know the Workflow Id of your process from the “Process” smartobject which will be under category System/Management/Workflows/Smartobjects

  • Set the Headers Content-Type as Application/Json.
  • In Body we can set the Folio and data fields as shown.
  • Authentication we can user Basic/OAuth. Here I’m using Basic for Development purpose but generally we have to set it to OAuth. To know how to set OAuth for Api please refer below link https://help.k2.com/kb002784

Save the flow and test run to see the result.

**Similarly we can follow the same approach performing a task action and other K2 Activities.

That’s it. This is how we can trigger a K2 workflow from Microsoft flow. Thanks for Reading!!

Sharepoint List Binding with K2 Workflow & Smartforms

Today we shall see how we can bind a K2 workflow with a Sharepoint List and trigger the workflow when an item gets added to the list. Also we shall see how we can use K2 smartforms for adding & updating an items in SharePoint list.

In previous post I have shown how to enable K2 for a list using K2 Five for Sharepoint tool and the options for generating the Smartobjects, Smartforms, workflows & Reports for the list. Now we look at the other way to achieve the same.  I’ll be using the Same Users SharePoint list which I have shown in previous post

Click on K2 tab and select application which will open the page as shown below

As we have selected only Smartobjects generation in previous post, it is just showing them. Now Click on New tab and Select Generate Forms which will show you below screen.

Now click OK and the tool will generate view and forms for you based on the list columns and once it completes it will show you below screen with all the views and forms that are automatically created.

It will create 3 forms one for adding a new item, one for editing and one for display purpose. We can directly edit the form or view from here if you want to change anything like look and feel or controls. Also you can edit these forms from the K2 Designer which I have shown in my previous post.

Click on Settings to see or change the forms to show.

Now navigate to Users List and click on new to see the K2 Form which is highlighted in below screen.

Now let’s create a new workflow and associate with this list, so that whenever a new user is added to this list it will create an approval task to some user and updates the status accordingly.

Now from the Users List K2 Application screen, click on New and select workflow.

Now it will show you below screen where you find 2 options to trigger the workflow. One is via Smart form submit button and the second way is via Sharepoint list item events that are available and shown there.

Here I’ll select “When the following events occur” and select “An item was added” and select OK which will open K2 workflow Designer. Now design your workflow with your requirements.

In Users List I have added a new column called Status and initially when a new User is added to the list, the status will be Pending Approval and once the task is assigned to Manager and he performs as an action then accordingly the status will be updated and workflow will complete.

Below is the screen shot of workflow that is created for this purpose. I’ll create a separate post explaining the process of creating a workflow in new designer with all the events that we have now.

Now Create a New User in List and see the Workflow is getting Triggered status will be set as Pending Approval

And task is getting assigned in TaskList (You can access Tasklist from K2 Tab in Users List.)

Approve the task and see the status getting changed.

That’s it. This is how we can make use of K2 Smartforms and Workflows along with Sharepoint list.

Thanks for reading!!

Registering a SharePoint Service Instance Using K2 Five for SharePoint App.

Prior K2 Versions have the provision of creating a Sharepoint Service Instance from the “SmartObjects Service Tester Utility” Tool by providing the Site URL, which would fetch all the objects in that site. But the latest K2 Version (from K2 Five I believe) they have removed the direct provision to create a new Sharepoint 2013 Service Instance and it has to be created Via K2 Five for Sharepoint App. Let’s See how we can do that below.

Below is a custom SharePoint site which has a List “Users”.

  1. Before we add K2 App to a site, Pre –requisite is to install K2 Five for Sharepoint on site collection level. Only then it will be available as an app for all sites.
  2. Once the installation in done now Navigate to the Users List and click on Settings and Click Add an app and select K2 Five for SharePoint in it. This will activate this app on this site.
  • If Pop-up is shown like below Just Click Trust It and then it will start activating this app to this site. To perform this step User needs admin permissions over the Sharepoint Site collection. Also it asks for SharePoint Admin URL Details.
  • Once the process above completes it will show the status as Activated.
  • Next step is to navigate to Users List and see if K2 is shown in top navigation bar as shown in below screengrab. If you see the K2 as shown below then we are good to go with generating the Service Instance & SmartObjects.
  • Now click on Application and it will take you to a new tab as shown below.

This is the screen from where we can generate SmartObjects for the Users List, In case if you want to generate forms & workflows along with reports, which you want to use along with this list then you can check the other checkboxes. I will explain these options in a separate post but for now I’ll create just SmartObjects.

  • Now click Ok and the app automatically creates the Service Instances and SmartObjects for us. Once done it will show 2 SmartObjects as shown below. One for the List & the other for List’s Attachments.
  • We can see these SmartObjects in K2 designer as well as SmartObjects Service Tester Utility As well. In designer we can see these SmartObjects under Sharepoint 2013 Category.


  • If you want to edit this Smart Object we can directly edit in SharePoint itself by clicking on Edit in SharePoint K2 App or Navigate to path above in K2 designer and edit.
  • SmartObject Methods that are created by default are as shown in below screen shot
  • Select GetListItems and Execute to see the SharePoint List Data.

That’s it. This is how we can generate the Sharepoint SmartObjects using the Sharepoint App.

In my next post i will show you how to use K2 smartforms for Adding and editing a Sharepoint List Item with in Sharepoint Context.

Thanks for Reading.

Refer for More Information

https://help.k2.com/kb001738

https://help.k2.com/onlinehelp/k2blackpearl/userguide/4.7/default.htm#ServiceBrokers/SharePoint/SharePoint_2013_Broker.htm