Viber Business Message icon

Viber Business Message

Send messages through the Rakuten Viber Business Messages API

Message → Send List

AI-generated

Summary

Send a quick‑reply list message to a Viber user

Inputs

  • dest (required) — Complete phone number, digits only — no spaces, "+" or special characters
  • label (required) — Declares the nature of the message for Viber internal purposes. Does not affect billing.
  • listCategory — Choose list category: Transactional or Session.
  • messageText (required) — Title shown above the options (max 85 UTF-8 chars).
  • listMessageUiType — UI style for the list: 1=Radio Buttons (Legacy), 2=Buttons (New) – requires Viber 27.8.2+.
  • listOptions (required) — Two to ten selectable options; each option has a text value (max 50 chars).
  • simplify — Whether to return a simplified response (status, message token, session ID) instead of the full Viber payload.
  • additionalFields — Optional fields: seq (unique identifier), tag (custom report tag), ttl (time‑to‑live in seconds), trackingData (override reply tracking string).

Output shape

array of objects, each containing a json field with the Viber API response

When simplify is true only status, seq, messageToken and optional sessionId are returned; otherwise the full response payload is returned. Errors appear as an object with an error field if continueOnFail is disabled.

Examples

Example 1: Send a quick‑reply list to a user

dest=972500000001, label=transaction, listCategory=session, messageText=Choose an action, listMessageUiType=2, listOptions=[{value='Option A'},{value='Option B'}], simplify=true, additionalFields[seq]=$itemIndex, additionalFields[tag]='promo'

Example 2: Broadcast a transactional list with three choices

dest=972500000002, label=transaction, listCategory=transactional, messageText=Select a service, listMessageUiType=1, listOptions=[{value='Service A'},{value='Service B'},{value='Service C'}], simplify=false, additionalFields[ttl]=3600

Example 3: Send a session‑type list with custom tracking data

dest=972500000003, label=promotion, listCategory=session, messageText=How can we help?, listMessageUiType=1, listOptions=[{value='Help'},{value='Support'},{value='Info'}], simplify=true, additionalFields[trackingData]='session_123'

Links

Discussion