Skip to main content

Flows Reference

Refer to this section to get more details on the Flows API, Flow JSON, and other technical topics for WhatsApp Flows.
### Flow JSON
Learn about Flow JSON.
### Flow JSON Components
Flow JSON components.
### Media Upload Components
Media upload components.
### Flows API
The Flows API provides a programmatic way to manage your Flows.
This API allows you to create new Flows, publish draft Flows, and more.
### Metrics API
Learn all about the Metrics API here.
### Webhooks
It’s important to keep an eye on the performance of your Flow.
### Error Codes
Are you seeing an error response from the Flows API?
Learn more about the error and how to fix it here.
### Versioning
Learn more about the different versions of Flow JSON and the Data API.
### Lifecycle of a Flow
It’s important to keep an eye on the performance of your Flow.

Learn More

- Ready to create your first Flow? Get Started here!
- Curious about what Flows look like? Explore examples here.
- Want to kick the tires with a demo Flow? Try it now with the Flows Playground.
- Looking for a comprehensive list of Flow Components? Check it out here.

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. ←\ \ Previous\ \ Examples →\ \ Next\ \ Flow JSON On This Page Reference Learn More Supported Platforms Terminology