POST
/
v1
/
sessions
/
{sessionId}
/
continueChat
curl --request POST \
  --url https://typebot.io/api/v1/sessions/{sessionId}/continueChat \
  --header 'Content-Type: application/json' \
  --data '{
  "message": "<string>"
}'
{
  "clientSideActions": [
    {
      "expectsDedicatedReply": true,
      "lastBubbleBlockId": "<string>",
      "scriptToExecute": {
        "args": [
          {
            "id": "<string>",
            "value": "<string>"
          }
        ],
        "content": "<string>"
      },
      "type": "scriptToExecute"
    }
  ],
  "dynamicTheme": {
    "guestAvatarUrl": "<string>",
    "hostAvatarUrl": "<string>"
  },
  "input": {
    "id": "<string>",
    "options": {
      "isLong": true,
      "labels": {
        "button": "<string>",
        "placeholder": "<string>"
      },
      "variableId": "<string>"
    },
    "outgoingEdgeId": "<string>",
    "type": "text input",
    "prefilledValue": "<string>",
    "runtimeOptions": {
      "amountLabel": "<string>",
      "paymentIntentSecret": "<string>",
      "publicKey": "<string>"
    }
  },
  "lastMessageNewFormat": "<string>",
  "logs": [
    {
      "description": "<string>",
      "details": "<any>",
      "status": "<string>"
    }
  ],
  "messages": [
    {
      "id": "<string>",
      "content": {
        "html": "<string>",
        "plainText": "<string>",
        "richText": [
          "<any>"
        ]
      },
      "type": "text"
    }
  ]
}

Path Parameters

sessionId
string
required

The session ID you got from the startChat response.

Body

application/json
message
string

Response

200 - application/json
clientSideActions
object[]

Actions to execute on the client side

  • Script to execute

  • Redirect

  • Chatwoot

  • Google Analytics

  • Wait

  • Set variable

  • Stream OpenAI

  • Execute webhook

  • Inject start props

  • Init Pixel

  • Exec stream

  • Execute code

dynamicTheme
object

If the typebot contains dynamic avatars, dynamicTheme returns the new avatar URLs whenever their variables are updated.

input
object
  • Text

  • Buttons

  • Email

  • Number

  • URL

  • Phone number

  • Date

  • Payment

  • Rating

  • File

  • Picture choice

  • Buttons v5

  • File input v5

  • Picture choice v5

lastMessageNewFormat
string

The sent message is validated and formatted on the backend. For example, if for a date input you replied something like tomorrow, the backend will convert it to a date string. This field returns the formatted message.

logs
object[]

Logs that were saved during the last execution

messages
object[]
required
  • Text

  • Image

  • Video

  • Audio

  • Embed

  • Custom embed