Create Flow draft
Create a WhatsApp Flow draft from a definition in Blueticked's builder dialect.
definition is Blueticked's builder dialect, not raw Meta Flow JSON: { version, screens: [...] } where each screen is { id, title, terminal?, layout: { type: "SingleColumnLayout", children: [...] } }. Screen ids use letters, digits and underscores.
Supported component types: TextInput, TextArea, DatePicker, CalendarPicker, Dropdown, RadioButtonsGroup, CheckboxGroup, ChipsSelector, OptIn, PhotoPicker, DocumentPicker, Image, TextHeading, TextSubheading, TextBody, TextCaption, RichText, EmbeddedLink, NavigationList, If, Switch and Footer (an explicit Form wrapper is also accepted). Anything else (e.g. Meta-only DateTimePicker or ImageCarousel) is rejected with 400 validation_failed at create/update time.
Input components carry name, label and optional required; choice fields take data-source as a static [{ id, title }] list (or a ${data.key} webhook binding on dynamic forms); each screen ends in a Footer whose on-click-action.name is complete (terminal screen), navigate or data_exchange.
On publish the stored dialect is transformed to Meta Flow JSON 7.3: the wire version is stamped, screens are wrapped in a Form, and the complete/navigate payload mappings Meta requires are generated, so never paste Meta Flow JSON here. Deeper rules (label caps, footer/payload rules) are checked at publish with friendly errors.
Omit definition (or send {}) to create a blank draft and fill it in via PATCH or the Flow builder UI.
The flow is returned flat (fields at the top level, the full serializer), matching GET /api/v1/flows/{id}.
Request
- Base URL: https://app.blueticked.com
- URL: https://app.blueticked.com/api/v1/flows
- Auth: HTTP bearer
Headers
A unique key (e.g. a UUID) that makes a POST safe to retry: replaying the same key within 24h returns the original result instead of acting twice.
Request body
Response
Success
Example response
{
"id": "2bb7e214-6106-4d25-ba1f-2e28b88dc657",
"business_id": "22222222-2222-4222-9222-222222222222",
"name": "customer_feedback_v1",
"description": "Post-visit feedback form",
"public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkq...\n-----END PUBLIC KEY-----\n",
"created_at": "2026-05-22T10:30:00.000Z",
"updated_at": "2026-05-22T10:30:00.000Z",
"request_id": "req_b2e3d610e10f1b07468721ee98f0e1d2"
}Changes
No recorded changes to this operation across all 1 revision of this API.