WhatsApp Flows

Overview

Updated: May 14, 2026
WhatsApp Flows enables you to build interactive workflows inside WhatsApp. This section covers walkthroughs, technical references, and best practices for creating high-quality, engaging user experiences.

Guides

Learn how to use endpoints to provide dynamic data for the screens and control routing in your Flow.
Learn how to send Flows via business-initiated templates and user-initiated interactive messages.
Set up encryption for secure data exchange between your endpoint and WhatsApp Flows.
Monitor your Flow’s health and address issues detected by WhatsApp.
Learn how to test and debug your WhatsApp Flow.
Learn how to make high-quality Flows with our Best Practices.
Use pre-built templates to quickly create and send Flows.
See code examples and tutorials on how to build Flow-based solutions.

Reference

Learn the structure and properties of Flow JSON used to define screens and routing.
Reference for all available Flow components including text inputs, dropdowns, date pickers, and more.
Reference for media upload components that allow users to upload images and documents in Flows.
Create, update, publish, and manage Flows using the Graph API.
Subscribe to Flow webhooks to receive response messages, status changes, and endpoint health alerts.
Learn about error responses from the Flows API and how to resolve them.
Understand Flow states (Draft, Published, Throttled, Blocked, Deprecated) and how transitions work.
Learn about Flow JSON, Data API, and message versioning schemes and their lifecycle.
Query system metrics for Flow endpoint performance (deprecated April 2026).

Learn more

Supported platforms

Currently, WhatsApp Flows are supported on:
  • Android running OS 6.0 and newer
  • iPhone running iOS 12 and newer
WhatsApp Flows are not supported on companion devices (e.g. WhatsApp Web).

Terminology

Flows: Represents a use case or workflow that a business offers to users. For example, “Book an appointment”. A Flow consists of screens, components (such as input fields), assets such as graphics), and (optionally) an endpoint for data-driven interactions.
Flow JSON: Flow JSON is used to programmatically define Flows.
Components: Individual building blocks that make up a screen (text fields, buttons, and so on).
Screens: A collection of Components on a single screen, defined in Flow JSON.
Endpoint: Communication channel created to exchange data between WhatsApp screens and the business server that processes data from each screen. Based on the business logic, the channel is then used to respond back with data to render the next screen in the workflow.
Did you find this page helpful?
Thumbs up icon
Thumbs down icon