Skip to main content

What it is

WhatsApp Flows are multi-screen experiences that run inside WhatsApp. Use them for structured tasks such as sign-up, appointment booking, lead collection, feedback, or product configuration.

Before you begin

  • Connect the WABA that will own the Flow.
  • Design the screens and data model in a valid Flow JSON document.
  • Decide whether the Flow needs a data endpoint.
  • Choose categories that describe the Flow use case.
  • Keep new work in DRAFT until validation and preview are complete.

How it works

  1. Create a Flow with metadata and, optionally, its JSON structure.
  2. Retrieve the Flow and fix every validation error.
  3. Update metadata or upload a revised Flow JSON file.
  4. Generate a public preview URL for stakeholder testing.
  5. Publish the Flow when it is ready for messages.
  6. Deprecate a published Flow when it should no longer be used.
Draft Flows can be edited or deleted. Published Flows have stricter lifecycle rules, so test before publishing.

Request

Create a Flow

POST /whatsapp/flows

Update the Flow structure

PATCH /whatsapp/flows/{flowId}/assets

Preview and publish

Generate a preview with GET /whatsapp/flows/{flowId}/preview, then publish with POST /whatsapp/flows/{flowId}/publish.

Response

Creation returns the new Flow ID and operation result.
Retrieval returns the Flow lifecycle state and validation details.

Flow lifecycle

Use whatsapp.flow.status_change webhooks to process asynchronous lifecycle updates.

Limits and troubleshooting

  • Treat every validation error pointer as a location in the Flow JSON to fix.
  • Preview URLs are public; do not include production secrets or sensitive test data.
  • Publishing is a lifecycle boundary. Confirm content and endpoint behavior first.
  • Only delete a Flow when its current state allows deletion.
  • Version Flow JSON and endpoint behavior together when they exchange data.

Create a Flow API

Inspect metadata, JSON, clone, and publish options.

Flow webhooks

Handle Flow status changes.
For health checks, data exchange, validation, and completion responses, follow Implement a WhatsApp Flow endpoint.