---
title: "Create WhatsApp Flow"
method: POST
path: "/whatsapp/1/senders/{sender}/flows"
tags: ["channels", "whatsapp", "whatsapp-service-management", "whatsapp-flow-management"]
---

# Create WhatsApp Flow

`POST /whatsapp/1/senders/{sender}/flows`

## Request

- Base URL: `https://api.infobip.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.infobip.com/whatsapp/1/senders/{sender}/flows`
- Auth: one of:
  - OAuth 2
    - Client credentials
    - Token URL: `https://api.infobip.com/auth/1/oauth2/token`
  - API key in header `Authorization`
  - API key in header `Authorization`
  - HTTP basic

Create a WhatsApp flow. If successful, flow will be created in DRAFT status with default flow.json. Flow.json contains structure of the flow and other fields given in request can be updated until publication.

## Path parameters

- `sender` string, required

## Request body

- 0089ea7cf06f0b77e4c88a7276c6f25dd5c0c5bbab819756fc42c548980cae19CreateFlowRequest
  - `name` string, required: Name of the flow.
  - `categories` 0089ea7cf06f0b77e4c88a7276c6f25dd5c0c5bbab819756fc42c548980cae19FlowCategory[], required: Categories of the flow.
  - `cloneFlowId` string: ID of source Flow to clone. The new flow with DRAFT status will inherit the flow.json from source flow.

## Response `201`

Flow Created

- 0089ea7cf06f0b77e4c88a7276c6f25dd5c0c5bbab819756fc42c548980cae19FlowDataResponse: List of found flows.
  - `id` string, required: ID of the flow.
  - `name` string, required: Name of the flow.
  - `businessAccountId` integer, required: WhatsApp business account ID.
  - `categories` 0089ea7cf06f0b77e4c88a7276c6f25dd5c0c5bbab819756fc42c548980cae19FlowCategory[], required: Categories of the flow.
  - `status` 'DRAFT' | 'PUBLISHED' | 'DEPRECATED' | 'BLOCKED' | 'THROTTLED', required: Status of the flow.
  - `initialScreens` string[]: IDs of the initial screens required to send a flow with flowAction set to 'NAVIGATE'. Only exists for flows after publishing.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/infobip/apis/infobip-openapi-specification.md) - [All operations](https://skmtc.dev/infobip/apis/infobip-openapi-specification/llms.txt) - [OpenAPI document](https://skmtc.dev/infobip/apis/infobip-openapi-specification/revisions/9dcbbaf902de?raw)
