---
title: "for invoking WorkflowState.start API"
method: POST
path: "/api/v1/workflowState/start"
---

# for invoking WorkflowState.start API

`POST /api/v1/workflowState/start`

## Request body

- WorkflowStateStartRequest
  - `context` Context, required
    - `workflowId` string, required
    - `workflowRunId` string, required
    - `workflowStartedTimestamp` integer, required
    - `stateExecutionId` string
    - `firstAttemptTimestamp` integer
    - `attempt` integer
  - `workflowType` string, required
  - `workflowStateId` string, required
  - `stateInput` EncodedObject
    - `extStoreId` string
    - `extPath` string
    - `encoding` string
    - `data` string
  - `searchAttributes` SearchAttribute[]
    - `key` string
    - `stringValue` string
    - `integerValue` integer
    - `doubleValue` number, double
    - `boolValue` boolean
    - `stringArrayValue` string[]
    - `valueType` 'KEYWORD' | 'TEXT' | 'DATETIME' | 'INT' | 'DOUBLE' | 'BOOL' | 'KEYWORD_ARRAY'
  - `dataObjects` KeyValue[]
    - `key` string
    - `value` EncodedObject
      - `extStoreId` string
      - `extPath` string
      - `encoding` string
      - `data` string

## Response `200`

successful operation

- WorkflowStateStartResponse
  - `localActivityInput` string
  - `upsertSearchAttributes` SearchAttribute[]
    - `key` string
    - `stringValue` string
    - `integerValue` integer
    - `doubleValue` number, double
    - `boolValue` boolean
    - `stringArrayValue` string[]
    - `valueType` 'KEYWORD' | 'TEXT' | 'DATETIME' | 'INT' | 'DOUBLE' | 'BOOL' | 'KEYWORD_ARRAY'
  - `upsertDataObjects` KeyValue[]
    - `key` string
    - `value` EncodedObject
      - `extStoreId` string
      - `extPath` string
      - `encoding` string
      - `data` string
  - `commandRequest` CommandRequest
    - `deciderTriggerType` 'ALL_COMMAND_COMPLETED' | 'ANY_COMMAND_COMPLETED' | 'ANY_COMMAND_COMBINATION_COMPLETED'
    - `commandWaitingType` 'ALL_COMPLETED' | 'ANY_COMPLETED' | 'ANY_COMBINATION_COMPLETED'
    - `timerCommands` TimerCommand[]
      - `commandId` string
      - `firingUnixTimestampSeconds` integer
      - `durationSeconds` integer
    - `signalCommands` SignalCommand[]
      - `commandId` string
      - `signalChannelName` string, required
      - `atLeast` integer
      - `atMost` integer
    - `interStateChannelCommands` InterStateChannelCommand[]
      - `commandId` string
      - `channelName` string, required
      - `atLeast` integer
      - `atMost` integer
    - `commandCombinations` CommandCombination[]
      - `commandIds` string[]
  - `upsertStateLocals` KeyValue[]
    - `key` string
    - `value` EncodedObject
      - `extStoreId` string
      - `extPath` string
      - `encoding` string
      - `data` string
  - `recordEvents` KeyValue[]
    - `key` string
    - `value` EncodedObject
      - `extStoreId` string
      - `extPath` string
      - `encoding` string
      - `data` string
  - `publishToInterStateChannel` InterStateChannelPublishing[]
    - `channelName` string, required
    - `value` EncodedObject
      - `extStoreId` string
      - `extPath` string
      - `encoding` string
      - `data` string

## Other responses

- `400` — Invalid input

---

[API](https://skmtc.net/indeedeng/apis/workflow-apis.md) · [All operations](https://skmtc.net/indeedeng/apis/workflow-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/indeedeng/workflow-apis/versions/fe9c7606824c/schema)
