Create icon
SlackIncomingWebhook icon

Provision a Miro Workshop Board and Post the Link to Slack

Provision a Miro workshop board with Kestra. Create the board with a team sharing policy and post the view link to Slack before the session starts.

Categories
Business

Every workshop starts the same way, someone scrambles to create a board, set permissions, and paste the link into the channel while attendees wait. This blueprint turns that into one execution. io.kestra.plugin.miro.boards.Create creates the board in the correct Miro team with a sharingPolicy that keeps the board private to outsiders while granting the whole team edit access, and the flow posts the board's viewLink to Slack so the link is in the channel before anyone asks for it.

How it works

  1. create_board (io.kestra.plugin.miro.boards.Create) creates a board named after the workshop_name input inside the team from the team_id input. The sharingPolicy map sets access: private and teamAccess: edit, so team members can facilitate without per-board permission edits.
  2. The task returns the new board as flat outputs, including {{ outputs.create_board.id }}, {{ outputs.create_board.viewLink }}, and {{ outputs.create_board.createdAt }}.
  3. notify posts the board name and view link to Slack through an incoming webhook.
  4. The errors block posts a distinct Slack alert when creation fails, naming the flow and execution so the facilitator can react before the session.

What you get

  • A board that exists in the right team with the right permissions on the first try, every time.
  • The view link delivered where attendees already are, no copy-paste relay through the facilitator.
  • Consistent board naming driven by the workshop_name input, so boards stay findable after the session.
  • A failure alert so a revoked token or wrong team ID never surfaces as an awkward silence at kickoff.

Who it's for

  • Facilitators and team leads who run recurring workshops, retros, or design sprints on Miro.
  • Ops teams standardizing how collaboration spaces get created across an organization.
  • Anyone wiring Miro into a larger meeting-prep automation, calendar invites, agenda docs, and now the board.

Why orchestrate this with Kestra

Creating a board is one API call, but the workflow around it is not: the permissions have to be right, the link has to reach the channel, and a failure has to reach a human. Kestra wraps the single Miro call with typed inputs, secret management for the token, output passing into the Slack message, and a complete execution history of every board ever provisioned.

Prerequisites

  • A Miro OAuth access token with boards:write scope.
  • The Miro team ID the boards should belong to.
  • A Slack incoming webhook for the workshop channel.

Secrets

  • MIRO_ACCESS_TOKEN: Miro OAuth 2.0 access token.
  • SLACK_WEBHOOK_URL: Slack incoming webhook URL.

Quick start

  1. Add the two secrets to your Kestra namespace.
  2. Execute the flow with a workshop name and your team ID.
  3. Open the Slack message and click the view link to confirm the board and its permissions.

How to extend

  • Add a projectId property on create_board to file boards into a Miro project per initiative.
  • Tighten the sharingPolicy to teamAccess: view for read-only audiences such as stakeholder reviews.
  • Trigger the flow from a webhook so a calendar automation or form submission provisions the board.
  • Chain a boards.Copy task instead of Create when workshops should start from a prepared template, as shown in the retro board blueprint.

Links

Orchestrate with Kestra
Orchestrate Slack with Kestra
Share this Blueprint
See How

New to Kestra?

Use blueprints to kickstart your first workflows.