---
title: "Interact (stream)"
method: POST
path: "/v4/interact/stream"
tags: ["Conversation", "Public-Docs"]
---

# Interact (stream)

`POST /v4/interact/stream`

Returns a stream of trace events followed by an end event using [SSE](https://en.wikipedia.org/wiki/Server-sent_events).

## Request body

- object
  - `action` union, required
    - LaunchRequest — Send a launch request to start a new conversation.
      - `type` 'launch', required
      - `payload` object
        - `persona` string
      - `diagramID` string
      - `time` number
      - `metadata` object
    - TextRequest — Send the user response as a raw text payload.
      - `type` 'text', required
      - `payload` string, required
      - `diagramID` string
      - `time` number
      - `metadata` object
        - `source` string
    - object — Send one or more file attachments, with an optional text message.
      - `type` 'file', required
      - `payload` object, required
        - `text` string
        - `files` object[], required
          - `url` string, uri
          - `mimeType` string, required
          - `filename` string
          - `size` number
          - `s3Key` string
      - `diagramID` string
      - `time` number
      - `metadata` object
    - ActionRequest — Actions are self-describing operations with an associated payload.
      - `type` 'action', required
      - `payload` object
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string
      - `diagramID` string
      - `time` number
      - `metadata` object
    - IntentRequest — Trigger a specific intent from your conversation model.
      - `type` 'intent', required
      - `payload` IntentRequestPayload, required
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string
        - `data` object
        - `query` string
        - `intent` object, required
          - `name` string, required
        - `entities` IntentRequestEntity[]
          - `name` string, required
          - `value` string, required
          - `query` string
          - `verboseValue` VerboseValue[]
            - `rawText` string, required
            - `canonicalText` string, required
            - `startIndex` number, required
        - `confidence` number
      - `diagramID` string
      - `time` number
      - `metadata` object
    - EventRequest — Events are triggers with an associated payload.
      - `type` 'event', required
      - `payload` EventRequestPayload, required
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string
        - `event` object, required
          - `name` string, required
      - `diagramID` string
      - `time` number
      - `metadata` object
    - PathRequest — Continue the conversation by traveling down the specified path.
      - `type` string, required
      - `payload` object, required
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string, required
      - `diagramID` string
      - `time` number
      - `metadata` object
    - NoReplyRequest — Represents the user failing to reply, typically sent after a reasonable timeout.
      - `type` 'no-reply', required
      - `diagramID` string
      - `time` number
      - `metadata` object
    - MessageRequest — Similar to the `text` action.
      - `type` 'message', required
      - `payload` object, required
        - `message` string, required
      - `diagramID` string
      - `time` number
      - `metadata` object
    - EndRequest — Sent to indicate the conversation has been ended.
      - `type` 'end', required
      - `payload` object
        - `reason` string, required
        - `message` string
      - `diagramID` string
      - `time` number
      - `metadata` object
    - DTMFRequest — Represents the result of a dial-tone input, used for phone calls.
      - `type` 'dtmf', required
      - `payload` string, required
      - `diagramID` string
      - `time` number
      - `metadata` object
    - LiveAgentHandoffRequest — Sent to interact with a connected live agent.
      - `type` 'live-agent-handoff', required
      - `payload` union, required
        - LiveAgentHandoffMessagePayload
          - `type` 'message', required
          - `message` string, required
        - LiveAgentHandoffFileUploadPayload
          - `type` 'file_upload', required
          - `files` object[], required
            - `id` string, required
            - `name` string, required
            - `size` number, required
            - `type` string, required
            - `status` 'uploaded' | 'failed'
            - `metadata` object
        - LiveAgentHandoffContinueConversationPayload
          - `type` 'continue_conversation', required
        - LiveAgentHandoffReturnToVoiceflowPayload
          - `type` 'return_to_voiceflow', required
      - `diagramID` string
      - `time` number
      - `metadata` object
    - GeneralRequest — Represents an non-system-defined action.
      - `type` string, required
      - `payload` object
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string
      - `diagramID` string
      - `time` number
      - `metadata` object
    - AlexaIntentRequest — Legacy intent request type that `general-runtime` expects Alexa to send
      - `type` 'intent', required
      - `payload` object, required
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string
        - `data` object, required
        - `query` string
        - `intent` object, required
          - `name` string, required
        - `entities` IntentRequestEntity[], required
          - `name` string, required
          - `value` string, required
          - `query` string
          - `verboseValue` VerboseValue[]
            - `rawText` string, required
            - `canonicalText` string, required
            - `startIndex` number, required
        - `confidence` number
      - `diagramID` string
      - `time` number
      - `metadata` object
    - LegacyIntentRequest — The legacy intent request type that `general-runtime` expects from its clients.
      - `type` 'intent', required
      - `payload` object, required
        - `actions` BaseAction[]
          - `type` string, required
          - `payload` unknown, required
        - `label` string
        - `query` string
        - `intent` object, required
          - `name` string, required
        - `entities` IntentRequestEntity[], required
          - `name` string, required
          - `value` string, required
          - `query` string
          - `verboseValue` VerboseValue[]
            - `rawText` string, required
            - `canonicalText` string, required
            - `startIndex` number, required
        - `confidence` number
      - `diagramID` string
      - `time` number
      - `metadata` object
  - `variables` object — Key-value pairs to set or update on the session before this turn is processed. Useful for injecting context like a user's name, account tier, or current page. [Learn more](/documentation/build/data/variables).
  - `state` unknown
  - `config` object — Optional settings for this turn.
    - `userTimezone` string — The user's IANA timezone string (eg: `America/New_York`). Sets `{vf_user_timezone}` variable. Used to localize time-dependent agent behavior.
    - `completionEvents` boolean

## Response `200`

---

[API](https://skmtc.net/voiceflow/apis/general-runtime.md) · [All operations](https://skmtc.net/voiceflow/apis/general-runtime/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voiceflow/general-runtime/versions/6b1c4f778c56/schema)
