> ## Documentation Index
> Fetch the complete documentation index at: https://juo.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Start a workflow

> Used to start a new workflow run.



## OpenAPI

````yaml openapi-customer.json POST /workflows/start
openapi: 3.1.0
info:
  version: 8.15.0
  title: '@fastify/swagger'
servers:
  - url: https://api.juo.io/customer/v1
security:
  - DelegatedToken: []
  - AccessToken: []
paths:
  /workflows/start:
    post:
      tags:
        - api.customer.v1
      description: Starts a new workflow flow
      parameters:
        - $ref: '#/components/parameters/TenantHeader'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                flowType:
                  type: string
                context:
                  type: object
                  additionalProperties: {}
                workflowId:
                  type: string
                dryRun:
                  type: boolean
              required:
                - flowType
                - context
        required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      workflowId:
                        type: string
                      workflowVersion:
                        type: number
                      runId:
                        type: string
                      runVersion:
                        type: number
                      status:
                        type: string
                        enum:
                          - running
                          - waiting_interaction
                          - completed
                          - failed
                          - cancelled
                      pendingInteraction:
                        type: object
                        properties:
                          interactionId:
                            type: string
                          stepId:
                            type: string
                          actionType:
                            type: string
                          actionBehavior:
                            type: string
                            enum:
                              - input
                          actionConfig:
                            type: object
                            additionalProperties: {}
                          availableResponses:
                            type: array
                            items:
                              type: object
                              properties:
                                type:
                                  type: string
                                label:
                                  type: string
                              required:
                                - type
                                - label
                          presentedAt:
                            format: date-time
                            type: string
                          timeoutMs:
                            type: number
                        required:
                          - interactionId
                          - stepId
                          - actionType
                          - actionBehavior
                          - actionConfig
                          - availableResponses
                          - presentedAt
                      interactiveSteps:
                        type: array
                        items:
                          type: object
                          properties:
                            stepId:
                              type: string
                            actionType:
                              type: string
                            actionConfig:
                              type: object
                              additionalProperties: {}
                            availableResponses:
                              type: array
                              items:
                                type: object
                                properties:
                                  type:
                                    type: string
                                  label:
                                    type: string
                                required:
                                  - type
                                  - label
                          required:
                            - stepId
                            - actionType
                            - actionConfig
                            - availableResponses
                      result:
                        type: object
                        additionalProperties: {}
                      error:
                        type: object
                        properties:
                          message:
                            type: string
                          code:
                            type: string
                        required:
                          - message
                      invalidatedResources:
                        type: array
                        items:
                          type: string
                      outcome:
                        type: object
                        properties:
                          type:
                            type: string
                          message:
                            type: string
                        required:
                          - type
                          - message
                      completionData:
                        type: object
                        properties:
                          outcome:
                            type: object
                            properties:
                              type:
                                type: string
                              message:
                                type: string
                            required:
                              - type
                              - message
                          endStep:
                            type: object
                            properties:
                              id:
                                type: string
                              category:
                                type: string
                              label:
                                type: string
                            required:
                              - id
                    required:
                      - workflowId
                      - workflowVersion
                      - runId
                      - runVersion
                      - status
                  - type: object
                    properties:
                      status:
                        type: string
                        enum:
                          - no_workflow
                      fallbackToDefault:
                        type: boolean
                        enum:
                          - true
                    required:
                      - status
                      - fallbackToDefault
                  - type: object
                    properties:
                      status:
                        type: string
                        enum:
                          - completed_silently
                      invalidatedResources:
                        type: array
                        items:
                          type: string
                      outcome:
                        type: object
                        properties:
                          type:
                            type: string
                          message:
                            type: string
                        required:
                          - type
                          - message
                      completionData:
                        type: object
                        properties:
                          outcome:
                            type: object
                            properties:
                              type:
                                type: string
                              message:
                                type: string
                            required:
                              - type
                              - message
                          endStep:
                            type: object
                            properties:
                              id:
                                type: string
                              category:
                                type: string
                              label:
                                type: string
                            required:
                              - id
                    required:
                      - status
                    title: SilentCompletion
components:
  parameters:
    TenantHeader:
      name: X-Tenant-ID
      x-speakeasy-name-override: tenant
      x-speakeasy-globals-hidden: true
      in: header
      schema:
        type: string
      required: true
      description: >-
        Unique identifier of the tenant in the system (usually a store
        identifier)
  securitySchemes:
    DelegatedToken:
      type: apiKey
      name: X-Delegated-Token
      in: header
    AccessToken:
      type: http
      scheme: bearer

````