Create icon
Create icon
Create icon
DiscordIncomingWebhook icon

Bootstrap a monday.com Sprint Board from a Template as Code

Create monday.com sprint boards as code with Kestra. Clone a template, add Committed and Stretch groups and a Status column, and announce the id in Discord.

Categories
Business

Sprint boards should be reproducible artifacts, not the output of someone clicking through monday.com every other Friday. This blueprint declares the whole setup in YAML: io.kestra.plugin.monday.boards.Create clones a template into the target workspace, two io.kestra.plugin.monday.groups.Create tasks add the Committed and Stretch groups, io.kestra.plugin.monday.columns.Create adds a Status column, and Discord receives the new board id. Every sprint starts from an identical, versioned structure.

How it works

  1. create_board (io.kestra.plugin.monday.boards.Create) creates a public board named from the sprint_name input, cloned from template_id inside workspace_id. The new id is exposed as {{ outputs.create_board.boardId }}.
  2. committed_group and stretch_group (io.kestra.plugin.monday.groups.Create) add the two sprint groups to that board; each returns its groupId and title.
  3. status_column (io.kestra.plugin.monday.columns.Create) adds a status column named Status, returning its columnId.
  4. announce posts the board id, both group ids, and the column id to Discord so the team can jump straight in.
  5. The errors block posts a distinct Discord alert on failure, flagging that the board may be partially created before anyone retries.

What you get

  • Sprint board structure as reviewable, versionable code instead of tribal clicking knowledge.
  • Identical boards every sprint, with ids captured as outputs for downstream automation.
  • A Discord announcement the moment the board is ready.
  • A failure alert that prevents the team from starting on a half-built board.

Who it's for

  • Engineering managers and scrum leads who rebuild the same board every sprint.
  • PMO and ops teams standardizing board structure across many squads.
  • Platform teams treating workspace setup as part of their provisioning code.

Why orchestrate this with Kestra

A board template covers layout, but the ritual around it, naming, groups, columns, announcements, still happens by hand. Kestra chains the four API calls with output passing, records who created which board when, retries transient API failures, and makes the sprint cadence one Execute click or one API call from your sprint-planning automation.

Prerequisites

  • A monday.com template board and its template id, or remove templateId to start blank.
  • The target workspace id.
  • A Discord incoming webhook for announcements and failure alerts.

Secrets

  • MONDAY_API_TOKEN: monday.com personal API v2 token, from Profile, Developers, My Access Tokens.
  • DISCORD_WEBHOOK_URL: Discord incoming webhook URL.

Quick start

  1. Add the two secrets to your Kestra namespace.
  2. Set template_id and workspace_id to real ids from your account.
  3. Execute the flow with the next sprint's name and open the board id Discord reports.

How to extend

  • Add more columns, for example date or numbers, with additional io.kestra.plugin.monday.columns.Create tasks.
  • Seed the board with carry-over items using io.kestra.plugin.monday.items.Create into the Committed group id output.
  • Schedule the bootstrap on your sprint cadence with io.kestra.plugin.core.trigger.Schedule and a templated sprint name.
  • Archive the previous sprint's board in the same run with io.kestra.plugin.monday.boards.Archive.

Links

See How

New to Kestra?

Use blueprints to kickstart your first workflows.