WhatsApp Flow Menus
Configuration for the menu options shown to parents in the WhatsApp bot flow (System Admin only). Items are addressed by integer id, not UUID.
GET List Menus {{url}}/whatsapp-flow-menus ▸
List every WhatsApp flow menu item, ordered by sort_order — the admin dashboard's System Settings → WhatsApp Flow Menu tab.
Notes
- Requires a bearer token (
auth:api).
Auth
Bearer tokenSample Response (200 OK)
{
"status": 200,
"data": [
{
"id": 1,
"name": "main_menu",
"description": "Top-level WhatsApp flow menu shown to parents.",
"enabled": true,
"sort_order": 0,
"created_at": "2026-05-19T00:00:00.000000Z",
"updated_at": "2026-05-19T00:00:00.000000Z"
}
],
"message": "success"
}
POST Create Menu {{url}}/whatsapp-flow-menus/add ▸
Create a new WhatsApp flow menu item.
Request Body
- name (
string, required, unique). - description (
string, required). - enabled (
boolean, optional, defaulttrue). - sort_order (
integer, optional, default0).
Notes
- Requires a bearer token (
auth:api).
Auth
Bearer tokenRequest Body
{
"name": "book_a_ride",
"description": "Lets a parent book an ad-hoc ride.",
"enabled": true,
"sort_order": 1
}Sample Response (200 OK)
{
"status": 200,
"data": {
"id": 2,
"name": "book_a_ride",
"description": "Top-level WhatsApp flow menu shown to parents.",
"enabled": true,
"sort_order": 0,
"created_at": "2026-05-19T00:00:00.000000Z",
"updated_at": "2026-05-19T00:00:00.000000Z"
},
"message": "Menu created successfully"
}
PUT Update Menu {{url}}/whatsapp-flow-menus/update/1 ▸
Update a WhatsApp flow menu item.
Request Body (all optional)
- name (
string, unique). - description (
string). - enabled (
boolean). - sort_order (
integer).
Notes
- Requires a bearer token (
auth:api).
Auth
Bearer tokenRequest Body
{
"description": "Updated description."
}Sample Response (200 OK)
{
"status": 200,
"data": {
"id": 1,
"name": "main_menu",
"description": "Top-level WhatsApp flow menu shown to parents.",
"enabled": true,
"sort_order": 0,
"created_at": "2026-05-19T00:00:00.000000Z",
"updated_at": "2026-05-19T00:00:00.000000Z"
},
"message": "Menu updated successfully"
}
DELETE Delete Menu {{url}}/whatsapp-flow-menus/delete/1 ▸
Delete a WhatsApp flow menu item.
Notes
- Requires a bearer token (
auth:api).
Auth
Bearer tokenSample Response (200 OK)
{
"status": 200,
"data": [],
"message": "Menu deleted successfully"
}
POST Reorder Menus {{url}}/whatsapp-flow-menus/reorder ▸
Bulk-update the sort_order of many menu items at once (drag-to-reorder in the UI).
Request Body
- menus (
array, required), each with: - id (
integer, required, must exist). - sort_order (
integer, required).
Notes
- Requires a bearer token (
auth:api).
Auth
Bearer tokenRequest Body
{
"menus": [
{
"id": 1,
"sort_order": 0
},
{
"id": 2,
"sort_order": 1
}
]
}Sample Response (200 OK)
{
"status": 200,
"data": [
{
"id": 1,
"name": "main_menu",
"description": "Top-level WhatsApp flow menu shown to parents.",
"enabled": true,
"sort_order": 0,
"created_at": "2026-05-19T00:00:00.000000Z",
"updated_at": "2026-05-19T00:00:00.000000Z"
}
],
"message": "Order updated successfully"
}
PUT Toggle Menu {{url}}/whatsapp-flow-menus/toggle/1 ▸
Enable or disable a menu item without touching its other fields.
Request Body
- enabled (
boolean, required).
Notes
- Requires a bearer token (
auth:api).
Auth
Bearer tokenRequest Body
{
"enabled": false
}Sample Response (200 OK)
{
"status": 200,
"data": {
"id": 1,
"name": "main_menu",
"description": "Top-level WhatsApp flow menu shown to parents.",
"enabled": false,
"sort_order": 0,
"created_at": "2026-05-19T00:00:00.000000Z",
"updated_at": "2026-05-19T00:00:00.000000Z"
},
"message": "Menu status updated successfully"
}