Skip to main content

Viber

Engage users on Viber with rich business messages. Orbit supports Viber Business Messages for transactional notifications, promotional campaigns, and two-way conversations with over 1 billion Viber users worldwide.

Send a Viber Message

curl -X POST https://orbit-api.devotel.io/api/v1/messages/viber \
  -H "X-API-Key: dv_live_sk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155552671",
    "type": "text",
    "body": "Your appointment is confirmed for March 10 at 2:00 PM.",
    "sender_name": "Orbit Demo"
  }'

Send a Rich Message

curl -X POST https://orbit-api.devotel.io/api/v1/messages/viber \
  -H "X-API-Key: dv_live_sk_..." \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+14155552671",
    "type": "rich",
    "body": "Check out our spring collection!",
    "media_url": "https://example.com/images/promo.jpg",
    "button": {
      "text": "Shop Now",
      "url": "https://example.com/shop"
    }
  }'

Features

  • Text messages — plain text up to 1,000 characters
  • Rich messages — image, text, and a CTA button in a single message
  • Media messages — images, video, and file attachments
  • Two-way conversations — receive and reply to user messages
  • Delivery & read receipts — real-time status tracking
  • SMS fallback — automatic fallback to SMS if Viber delivery fails
  • TTL control — set message time-to-live for time-sensitive notifications

Message Types

TypeDescriptionImageButton
textPlain text onlyNoNo
richText + image + buttonYesYes
imageImage-only messageYesNo
videoVideo messageNo
fileFile attachmentNo

Sender Registration

Viber Business Messages require an approved Viber Business Account. Apply through the Orbit dashboard under Channels > Viber > Setup. Approval typically takes 5–7 business days.

Delivery & Fallback

Set fallback.channel to "sms" to automatically reroute undelivered Viber messages to SMS after the TTL expires:
{
  "to": "+14155552671",
  "type": "text",
  "body": "Your code is 482901",
  "ttl": 30,
  "fallback": { "channel": "sms" }
}