Webhooks in Kanbanize

If you have ever wanted to integrate Kanbanize with another system on the internet you should be celebrating this new feature with us. It is now simple and easy to do with the web service caller, which has been implemented as part of the runtime policies module.

New: As of release 4.19, there is a new possibility to dynamically send parameter values directly populated by the fields of the card, which the corresponding run-time policy has been triggered for. Apart from that, you can now send the payload as raw, JSON-encoded values, directly in the body of the HTTP request.

Here’s how you can use it. First, go to the runtime policies module and choose either the “Card is updated” or the “Card is moved” policy:

Create new run-time policy screen in Kanbanize

Once you’ve chosen one of the policies check the possible actions on the right. One of them should read “Invoke web service” and will look like that:

Invoke Web Service Action in Kanbanize Run-time policy

Click the Add new action link to add a call to external web service and then click the “Not Set” link to configure the parameters. The configuration panel looks like that:

Invoke Web Service Options in Kanbanize Run-time policy

You can configure the following options:

Name – a human readable identifier for the web service call
URL – the address of the endpoint service
Method – which HTTP method should be used for the call
Authentication – None or basic authentication supported for the moment
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 PATH requests send an additional 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,
“assignee” : “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 payload is received by the endpoint, the content of “kanbanize_payload” can be parsed and the required actions can be then performed by the external system.

For your convenience, there is a Test Service button which will send a pre-canned request for testing and debugging purposes only.

We hope you’ll enjoy this new capability in Kanbanize and we hope it will make it possible to apply the principles of Kanban to even more scenarios at work. For comments or suggestions, please use the comments section below or send us your feedback via the FEEDBACK panel in the tool itself.

14 thoughts on “Webhooks in Kanbanize

  1. Pingback: Kanbanize 4.5 - What's New | Kanbanize Blog

  2. Mario

    I think that webhook is a great feature of Kanbanize!
    I have a question about “assignee” field of “card” : where this value came from? from Real Name account? or from Username account? or from E-Mail?
    thank you!
    Mario

    Reply
  3. Ricardo

    Webhoocks can be very useful but from this payload it is hard to know what the event changed. Woulbe be more useful to have the details of the history event to know what changed and not have to write additional fucntions to detec it.
    Also in this documentation extlink is not spelled properly, the same occurs with the test payload used to configure the events
    the actual object use “extlink “all in lower case and here it is using camel case “extLink”

    Reply
    1. Monica Georgieff

      Hi Ricardo,

      thanks for your excellent feedback! I will pass this on to the RnD team to consider for future releases of Kanbanize. We take customer feedback and requests very seriously and bump them up in priority to make sure we address them. Happy Kanbanizing!

      Reply
  4. Adam Franco

    Hi Kanbanize folks,

    I’m attempting to write an integration that posts all changes made in our Kanban board to our Slack channel so that we can easily monitor activity in Slack. Before stumbling on this post, I was planning to use your get_board_activities API method to poll for changes and then post new entries to Slack, however this has the downside of polling every few minutes, putting extra load on your systems.

    The new Webhooks mentioned in this post would remove the need for polling and allow Kanbanize to push notifications out instead, only executing when there is activity. In my testing though, there are a couple of deal breakers with the current implementation that prevent the Webhooks from being useful for Kanban activity monitoring:

    * The “Card is Updated” policy doesn’t seem to trigger when sub-tasks are completed or comments are added, losing some of the most interesting activity.
    * To capture most other activity, at least three policies would be needed “Card is Created”, “Card is Updated”, and “Card is Moved”, using up many of (or more than depending on the plan) allowed runtime policies.
    * The policy execution limits are 5/day or 500/day depending on plan, likely not enough to capture significant use.

    Unless the is some other way to get Kanbanize to make a web-hook request for all activity I guess I’m just left with polling the get_board_activities API. Thoughts? Other suggestions for this kind of integration?

    Reply
    1. Monica Georgieff

      Hi Adam,

      Thanks for commenting on our post 🙂 I understand what you’re trying to achieve, and web hooks might not be the best option as there are limits to what is tracked by the runtime policies. Get_board_activities is probably your best bet but keep in mind the API limits per hour. Just to clarify a bit on your second point, though, there is a way to set one policy for more than one board using the OR button in set up. In terms of the policy execution limits you mentioned, I recommend getting in touch with our sales team at sales@kanbanize.com. They can give you some more information about what opportunities there might be to extend the limit. I hope we can make it work for your particular scenario and needs!

      Best,

      Monica

      Reply
          1. Monica Georgieff

            Thanks for the feedback Prolet!
            Other users have made that suggestion as well.
            I’ll take it to the developer team and if I can provide more information, I’ll be sure to reach out and let you know. Cheers!

  5. James Bertram

    Hi! One of our departments has a process of exporting project card timelog data, running some excel macros against it and then posting that data to another site for financial reporting. We are looking to automate that process. Is time log data included in these webhooks, and if not, is that on the product roadmap at all?

    Reply
    1. Monica Georgieff

      Hi James,

      I understand your scenario very well. The need for automation is a very important one! However, at this point the time log data you can enter in Kanbanize is not included in the webhooks. I have passed on your request to the RnD team and they will keep it in mind for future considerations of the roadmap. Thank you for your suggestion! Cheers, Monica

      Reply

Leave a Reply

Your email address will not be published. Required fields are marked *