---
title: "Send flow message"
method: POST
path: "/v1/whatsapp/flows/send"
tags: ["WhatsApp Flows"]
---

# Send flow message

`POST /v1/whatsapp/flows/send`

Send a published flow as an interactive message with a CTA button.
When the recipient taps the button, the flow opens natively in WhatsApp.
Flow responses are received via webhooks.

## Request body

- object
  - `accountId` string, required — WhatsApp social account ID
  - `to` string, required — Recipient phone number (E.164 format, e.g. +1234567890)
  - `flow_id` string, required — Published flow ID
  - `flow_cta` string, required — CTA button text (e.g. 'Book Now', 'Sign Up')
  - `flow_action` 'navigate' | 'data_exchange' — Action type: navigate opens a screen directly, data_exchange hits your endpoint first
  - `flow_token` string — Unique token to correlate responses. If omitted, auto-generated as '<flowId>:<uuid>' so the response can be attributed to this flow in the Flow Responses view.
  - `flow_action_payload` object
    - `screen` string — First screen ID to navigate to
    - `data` object — Optional data to pass to the screen
  - `body` string, required — Message body text
  - `header` object
    - `type` 'text'
    - `text` string
  - `footer` string — Optional footer text
  - `draft` boolean — Set true to test an unpublished (DRAFT) flow

## Response `200`

Flow message sent

- object
  - `success` boolean
  - `messageId` string — WhatsApp message ID (WAMID)

## Other responses

- `400` — Validation error or missing phone number ID
- `401` — Unauthorized
- `404` — WhatsApp account not found

---

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