Skip to main content

What are Flows?

Flows are forms that open inside the WhatsApp conversation itself. The customer fills them in without leaving the chat and without opening a browser — and you get structured answers back. They fit appointment booking, sign-up, satisfaction surveys, lead generation, support and login.
Flows belong to the WABA, not to the channel. Use the wabaId from List WABAs on the endpoints in this section.

Categories

Meta uses the category when reviewing the flow. Picking the wrong one can get it rejected.

Lifecycle

1

Build the flow_json

Define the screens, the components and the routing_model. It is JSON, sent as a string in the flow_json field.
2

Create it in DRAFT

Use Create flow without publish. That way you can still iterate.
3

Fix the issues

Get flow returns validation_errors with whatever Meta flagged.
4

Publish

Publish flow. From then on flow_json no longer changes.

flow_json structure

Available components

On TextInput, input-type accepts text, number, email, password, passcode and phone.

Actions

data_exchange requires endpoint_uri to be configured. If your endpoint fails too often, Meta puts the flow in THROTTLED.

Endpoints

List flows

See the WABA flows with status and categories.

Create flow

Create a flow from its flow_json.

Get flow

Fetch a flow and its validation issues.

Update flow

Change the name, the categories or the flow_json.

Publish flow

Make the flow available for use.

Deprecate flow

Stop accepting new openings.

Delete flow

Delete a flow in DRAFT.

Sync flows

Force a status refresh with Meta.