Slack Workflow Builder: the Good, the Bad, and the Broken

Bonus points if you can even find the “Actions menu”
We have both kinds of wine… white and red.

Teardown

The basic hypothesis of workflows is that non-technical users need a visual builder. Fortunately, it’s all represented as a json object that we can download. The overall structure looks like this:

{
"source_id": "<looks like some unique timer-based id>",
"version": "1",
"workflow": {
"name": "name of the workflow
"blueprint": {
"version": "1",
"trigger": {
"type":
"reaction_added | channel_action | member_joined_channel",
"id": "<uuid>",
"config": {
... trigger-specific data ...
}
},
"steps": [
{
"type": "dialog | message",
"id": "<uuid>",
"config": {
... step-specific data ...
}
},
...
]
}
}
}
"type": "message",
"id": "<uuid>",
"config": {
"user": {
"ref": "<uuid of trigger>==user"
},
"has_button": false,
"message_text": "howdy {{<uuid of trigger>==user}}!"
}
}

Let’s break it

You can craft your own json and upload new workflows. It’s pretty easy to sneak stuff past the upload step that violates the rules.

Silently not shown.
How to lose friends and alienate people.

Missions Impossible

There isn’t a documented API (that I could find) for Workflow Builder. Running Slack from the browser let me sniff out some of the calls:

Missions.ai from the Internet Archive
Missions.ai from the Internet Archive

Where Workflow Happens

Zapier already supports vastly more functionality than Workflow Builder, but I’m sure being built into Slack is compelling for a bunch of users. Even with the extremely limited functionality, you can see how triggers and steps are built to be generalized. It’s also clear that workflows are an important piece of Slack’s broader platform ambitions. There are going to be more triggers, more steps, and deep, broad integration with the zillions of cloud applications that Slack wants you working with through their collaboration platform.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Adam Leventhal

Adam Leventhal

1K Followers

Building computers at Oxide; past: DTrace, ZFS, Delphix CTO, Transposit founder, CEO