Use one repeatable quality gate to prevent misaligned areas, broken destinations, and irreversible default changes.
Pre-publish quality gate
Gate 1 — Image and coordinates
Do not start the upload stage until this gate passes; later failures will otherwise be harder to interpret.
- Image is JPEG/PNG and no more than 1MB
- Width is 800–2500px, height at least 250px, and ratio ≥ 1.45
- JSON size matches the image
- Every bounds object is inside the image with no accidental overlap
- No more than 20 areas
Gate 2 — Actions and destinations
Test destinations on a mobile network as well; an internal page that works on office Wi-Fi may be unreachable to real users.
- Every URL opens on mobile and uses HTTPS
- Message and label lengths are valid
- Postback and datetime have webhook support
- Every richmenuswitch alias exists
- No unnecessary IDs or secrets are embedded in actions
- Every area matches its visible promise
Gate 3 — Publish and rollback
After setting the default, reopen chat on available iOS and Android devices. Verify edge targets, labels, and actions, then remove the old menu only after the rollback window ends.
- Object validation succeeds
- Create and upload use the same richMenuId
- A test user verifies the menu before default assignment
- Old and new IDs are recorded
- A rollback owner is assigned
- UTM and success metrics are ready
Official references
Confirm the latest official specification before using a workflow in a critical system.
Ready to map it on a canvas?
Drag, move, and resize action areas, then validate the JSON before publishing.
Open Studio →