Introduction to the Businessmap External Web Service
If you have ever wanted to integrate Businessmap with another system on the internet, you can easily do it with the web service caller, which has been implemented as part of the Business Rules module.
In Businessmap, the web service caller is available for the following Business Rules:
- Card is created
- Card is updated
- Recurring update cards
- Card updated by email
- Card is moved
- WIP limit is reached
- WIP limit is exceeded
- Card count
How to Set It Up
Here is how you can use the external web service — go to the Business Rules module and choose either the “Card is updated” or the “Card is moved” rule (Note: these are the most commonly used rules in the scenario). It works with other rules as well.
Once you have chosen a business rule, click on it to open its configuration panel. You will see that one of the actions that will be triggered (if the rule is applied) in the THEN section is “Invoke web service.”
Click the Add new action link to add a call to an external web service, and then click the “Not Set” link to configure the parameters. The configuration panel looks like this:
You can configure the following options:
- Name – A human-readable identifier for the web service call
- URL – The address of the endpoint service. With the "add card fields" dropdown, you can dynamically set the ID values directly populated from the card into the URL, for which the corresponding business rule has been triggered.
- Method – The HTTP method that will be used for the call.
- Authentication – None, basic, and API Key authentication are supported.
- HTTP Body – Whether you want to send the payload as raw JSON-encoded values, directly in the HTTP body
- Parameters – parameters to be sent to the endpoint service
- Headers – custom headers to be sent to the endpoint service
Additionally, the POST, PUT, DELETE, and PATCH requests send additional parameters –
Default Payload Parameter: ‘kanbanize_payload’ that contains information about the card that has been created or moved. The payload is in the following format:
{
“trigger” : “taskCreated”,
“timestamp” : “2015-03-04T14:19:38+00:00”,
“card” : {
“taskid” : “35156”,
“title” : “”,
“description” : “”,
“tcolor” : “#34a97b”,
“priority” : “Average”,
“size” : null,
“owner” : “testAdmin”,
“deadline” : null,
“typeName” : “”,
“tags” : “”,
“extLink” : “”,
“reporter” : “testAdmin”,
“createdAt” : “2015-03-04 14:19:33”,
“columnname” : “Requested”,
“lanename” : “Default Swimlane”,
“boardName” : “my board”,
“customFields” : [
],
“boardid” : “131”
}
}
When the endpoint receives the payload, the content of “kanbanize_payload” can be parsed, and then the required actions can be performed by the external system.
Dynamic Custom Parameters: With the "+" sign, you can dynamically send parameter values directly populated by the fields of the card, for which the corresponding business rule has been triggered. Apart from that, you can now send the payload as raw, JSON-encoded values, directly in the body of the HTTP request.
For your convenience, there is a Test Service button that will send a pre-canned request for testing and debugging purposes only.