VX Agents

API directory · Messaging & SMS

Infobip Viber Business Messages

v1.0.0 · 10 endpoints · 0 connections · shared by vx.ai

Reach customers on Viber through Infobip: send text, image, video or file messages with a call-to-action button and SMS failover, chat from a Viber Bot, manage approved Viber templates, then read delivery reports and message logs to see what landed and what was seen.

Connect this API to an AI agent Browse all specs

What you can do with Infobip Viber Business Messages via MCP

Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.

MethodPathOperationDescription
POST /viber/2/messages sendViberMessages Send Viber text, image, video or file messages (with button, SMS failover)
GET /viber/2/reports getViberDeliveryReports Get delivery reports for sent Viber business messages
GET /viber/2/logs getViberMessageLogs Search logs of sent Viber business messages by sender, number, status or date
GET /viber/1/senders/{sender}/templates listViberTemplates List Viber templates of a sender
POST /viber/1/senders/{sender}/templates createViberTemplate Create a Viber template and submit it for approval
GET /viber/1/senders/{sender}/templates/{templateId} getViberTemplate Get one Viber template and its approval status
PATCH /viber/1/senders/{sender}/templates/{templateId} renameViberTemplate Rename a Viber template
POST /viber-bot/1/messages sendViberBotMessage Send a message from a Viber Bot to a subscriber
GET /viber-bot/1/reports getViberBotDeliveryReports Get delivery reports for Viber Bot messages
GET /viber-bot/1/logs getViberBotMessageLogs Search logs of sent Viber Bot messages

Authentication

infobipApiKey

API key — sent as the Authorization header

Infobip API key sent as Authorization: App <api-key> (the word App, a space, then the key).

How to get a credential

  1. Sign in to the Infobip portal (a free trial account works; trial messages can only go to your own verified number).
  2. Open Developer tools > API keys and click Create API key.
  3. Give it a name and select the scopes below, then copy the key.
  4. Copy your personal base URL from the same page (e.g. xyz123.api.infobip.com) and set it as the server baseUrl variable.
  5. Business messages need a Viber sender registered on your Infobip account (Channels and Numbers > Viber); Viber Bot messages need a connected Viber Bot.

Permissions used

API scope Operations
viber-bm:message:send (or message:send) sendViberMessages, getViberDeliveryReports
viber-bm:logs:read getViberMessageLogs
viber-bm:manage listViberTemplates, getViberTemplate, createViberTemplate, renameViberTemplate (and every business message operation)
viber-bot:message:send (or message:send) sendViberBotMessage, getViberBotDeliveryReports
viber-bot:logs:read getViberBotMessageLogs

Common errors

  • 401 Unauthorized: the header is not App <key>, the key was revoked, or the base URL belongs to another account.
  • 403 Forbidden: the key lacks one of the scopes above, or the sender is not registered to your account.
  • 400 Bad Request: unknown sender, a number not in international format (e.g. 441134960001), or content that does not match its type.
  • 429 Too Many Requests: rate limit hit (logs allow 120 requests a minute, template reads 10 a second); wait and retry.

Store the value App <api-key> as a VX Agents credential (API key header) and never paste it into chat.

Usage guide

Setup

  • Credential: an Infobip API key stored as App <api-key> (see the authentication notes for scopes).
  • Set the server variable baseUrl to your personal Infobip prefix (xyz123 for https://xyz123.api.infobip.com).
  • Worth pinning: your Viber business sender name (used as sender in messages and as the path value for templates) and, for bots, the bot's sender name.

Send a Viber message and follow it up

  1. For a template-based message, call listViberTemplates with your sender, then getViberTemplate to check it is approved and see its params.
  2. Draft the message: sender, destinations[].to (international number without +, e.g. 441134960001) and content with a type (TEXT, IMAGE, VIDEO, FILE, QUICK_REPLY, TEMPLATE). Add options.smsFailover so the text goes out by SMS if Viber cannot deliver.
  3. Show the user the recipients and content and get a yes, then call sendViberMessages. Keep the returned bulkId and messageIds.
  4. Check the outcome with getViberDeliveryReports (by bulkId or messageId) or getViberMessageLogs (filter by sender, destination, generalStatus, sentSince/sentUntil).
  5. For a Viber Bot conversation, send with sendViberBotMessage (TEXT, IMAGE, VIDEO, FILE, URL, LOCATION) and check it with getViberBotDeliveryReports / getViberBotMessageLogs.
  6. New template: createViberTemplate (category, body with {{param}} placeholders) submits it for approval; renameViberTemplate only changes its name.

Good to know

  • Every send costs money and reaches a real person: always confirm recipients and content first. Creating a template submits it to Viber for review, so confirm that too.
  • Delivery reports are returned only once each: a second call with the same filter returns nothing new. Use the logs for history (they keep 48 hours of messages; use useCursor=true and cursor to page).
  • Times are ISO 8601 with offset, e.g. 2026-10-24T09:00:00.000+0000.
  • Bot keyboards and carousels are not in this spec (left out for size).

Source: Infobip Viber API reference (https://www.infobip.com/docs/api/channels/viber), checked 2026-10-24.

How to use this spec

  1. Create a free VX Agents account (sandbox tools included).
  2. Open the marketplace and connect “Infobip Viber Business Messages” to an agent.
  3. Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.

Related APIs