Expose Powerup to Butler

Is there any way to expose functionality of a powerup to Butler? A casual glance on the Butler UI suggests that this is currently not possible, and I was also not able to find any documentation suggesting that it is.

This isn’t something that is currently possible. Can you share more on what you’d like to do? It sounds like a great idea and we’d love to hear more on what you had in mind.

I have developed this powerup, and I am getting requests to streamline the workflow by for example starting a timer when a card gets moved into a specific list.

Since this kind of automation is exactly what butler is about I was hoping that there was some way to allow powerups to expose actions for use in butler rules.

Since I do not know anything about the internals of butler, this is only wild speculation, but I guess there could for example be a ‘butler-actions’ capability that powerups could use to expose callable functions representing certain powerup interactions

TrelloPowerup.initialize({
  'butler-actions' : [{
    name : 'Start Timer',
    action : (t, opts) => { ... },
    ...
  }]
})

Of course being able to define triggers would also be nice, but I guess harder to do, since one would also need some way to call a trigger through the client library by issuing for example t.callTrigger('started') as well as a way to expose the trigger to butler.

TrelloPowerup.initialize({
  'butler-triggers' : [{
    name : 'started',
    ...
  }]
})

The actions and triggers defined by the powerup could be available in the butler ui like the builtin ones are right now.

Some way to share data between a trigger and action might also be useful if possible at all…

Can something like this be done?

For https://cardsync.xyz/ I made it possible to integrate Butler actions using webhooks. It’s a bit of a manual process, but works. See more here: https://trello.com/c/cGbQLn9Q/27-butler-integration