temporalio / temporalio/ui

Support multiple input payloads in Start Workflow UI

Open
#3,335 1 comment 6 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
TypeScript
Stars
431
Forks
179
Avg merge
2d 9h
Merged PRs (30d)
71

Description

Is your feature request related to a problem? Please describe.

The Temporal CLI supports passing multiple --input flags when executing a workflow:

temporal workflow execute \
  --workflow-id="my-workflow" \
  --type=MyWorkflow \
  --input="$FIRST_PAYLOAD" \
  --input="$SECOND_PAYLOAD" \
  --task-queue="my-task-queue"

This maps to workflow functions that accept multiple positional arguments, e.g.:

func MyWorkflow(ctx workflow.Context, conn ConnectionConfig, backup BackupConfig) error

However, the Web UI only provides a single input text box and displays the message "only single JSON payload supported." This means workflows that require multiple input arguments cannot be started from the UI, forcing users back to the CLI.

Describe the solution you'd like

The "Start Workflow" / "Execute Workflow" form in the UI should support multiple JSON input payloads, matching the CLI's capability. This could look like:

  • An "Add input" button that appends additional input fields
  • Each input field represents one positional argument to the workflow function
  • The payloads are sent as separate entries in the input array, not as a single merged object

Describe alternatives you've considered

  • Wrapping multiple arguments into a single struct/object — this works but requires changing the workflow function signature just to accommodate a UI limitation, which isn't ideal.
  • Using the CLI exclusively — functional, but defeats the purpose of having the UI for ad-hoc workflow execution and makes it less accessible to team members who prefer a visual interface.

Additional context

Supporting multiple inputs in the UI would bring it to parity with the CLI and make the Web UI viable for starting a much wider range of workflows.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the UI's Start Workflow / Execute Workflow form and trace how its single JSON input becomes the workflow input array. Add a way to append positional JSON inputs and verify that each payload remains a separate array entry, matching the CLI behavior described in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
62/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.