DecisionTelecom Viber API позволяет отправлять и получать деловые сообщения Viber в любую страну мира и из нее через API. Каждое сообщение идентифицируется уникальным случайным идентификатором, поэтому пользователи всегда могут проверить статус сообщения, используя заданную конечную точку.
Viber API использует HTTPS с ключом доступа, который используется в качестве авторизации API. Полезные данные запросов и ответов форматируются как JSON с использованием кодировки UTF-8.
API Авторизация - Базовый ключ доступа Base64.
Чтобы получить ключ API, пожалуйста, свяжитесь с вашим менеджером по работе с клиентами.
Example for text-image-button messages:{"source_addr":"Custom Company","destination_addr":8882222200,"message_type":108,"text":"Message content","image":"https://yourdomain.com/images/image.jpg","button_caption":"Join Us","button_action":"https://yourdomain.com/join-us","source_type":1,"callback_url":"https://yourdomain.com/viber-callback","validity_period":3600}Example for promotional text messages:{"source_addr":"Custom Company","destination_addr":8882222200,"message_type":106,"text":"Message content","source_type":1,"callback_url":"https://yourdomain.com/viber-callback","validity_period":3600}Example for send file:{"source_addr":"Custom Company","destination_addr":8882222200,"message_type":222,"file_url":" https://yourdomain.com/files/custom.pdf ","source_type":1,"callback_url":"https://yourdomain.com/viber-callback","validity_period":180}Example for transactional template messages:{"source_addr":"Custom Company","destination_addr":8882222200,"message_type":304,"text":"Message content","source_type":2,"callback_url":"https://yourdomain.com/viber-callback","validity_period":180}
Параметры
source_addr:
от 3 до 20 символов - от кого сообщение
destination_addr:
от 11 до 20 цифр – кому сообщение
message_type (тип отправленного сообщения):
6 - только текст (для основного устройства)
106 - только текст (для всех устройств)
8 - текст+изображение+кнопка (для основного устройства)
108 - текст+изображение+кнопка (для всех устройств)
Правильный URL для обратного вызова статуса сообщения
validity_period:
TTL (время жизни) позволяет отправителю ограничить время жизни сообщения. В случае, если сообщение не получило статус «доставлено» до истечения времени, сообщение не будет списано и не будет доставлено пользователю. В случае, если TTL не был указан (нет параметра «ttl»), Viber будет пытаться доставить сообщение в течение 1 дня.
Параметр только для типа сообщений 222, должен содержать корректный URL документа.
Расширения файлов, разрешённые к отправке: .doc, .docx, .rtf, .dot, .dotx, .odt ,odf, .fodt, .txt, .info, .pdf, .xps, .pdax, .eps, xls, .xlsx, .ods, .fods, .csv, .xlsm, .xltx
Файл должен содержать расширение и его название не может превышать 25 символов.
Размер файла не должен превышать 200 MB.
Response:
{"message_id":4291235}
Значения:
message_id:
Идентификатор отправленного сообщения
Получить Вайбер сообщение
https://web.it-decision.com/v1/api/receive-viber
{"message_id":4291235}
Параметры
message_id:
ID сообщения, статус которого вы хотите получить (за последние 30 дней)
{"message_id":4291235,"status":1,}
Значения
message_id:
ID сообщения, статус которого вы хотите получить (за последние 30 дней)
status:
Текущий статус сообщения Viber
Получить Вайбер сообщения массово
Количество проверяемых сообщений — не более 200 в одном запросе.
ID сообщения, статус которых вы хотите получить (за последние 30 дней)
{"11017894": {"message_id":11017894,"status":1 },"11017879": {"message_id":11017879,"status":1 },"11017865": {"name":"Empty parameter or parameter validation error","message":"Invalid Parameter: message_id 11017865 is not accepted for you","code":1,"status":400 }}
Значения
message_id:
ID сообщения, статус которого вы хотите получить (за последние 30 дней)
status:
Текущий статус сообщения Viber
Получение Callback
Обратный вызов будет возвращен на URL, указанный при отправке сообщения в параметре callback_url
{"message_id":4291235,"status":1}If the status is 3 (Rejected) then the additional parameter reject_code will be returned:{"message_id":4291235,"status":1,"reject_code":9}If the message type being sent is 301 or 304 (template transactional text) then the additional parameter matching_template_id will be returned{"message_id":4291235,"status":1,"matching_template_id":11079289}
Значения:
message_id:
ID сообщения
status:
Текущий статус сообщения
reject_code:
код, возвращаемый Viber при отклонении сообщения:
1 - Внутренняя ошибка сервера.
2 - Идентификатор не использовался более года/Идентификатор был недавно создан и еще не загружен на сервер.
3 - Ошибка в структуре запроса. Возможно, пропущена запятая, скобки, текст длиной более 1000 символов и т. д.
5 - Неверный тип сообщения. Либо неподдерживаемый тип, либо неверное значение.
6 - Отсутствуют обязательные параметры.
7 - Указывает на тайм-аут сервера на стороне Viber.
8 - Идентификатор был заблокирован пользователем/Пользователь полностью заблокировал деловые сообщения на своем устройстве.
9 - Номер назначения не зарегистрирован как пользователь Viber.
10 - Устройство не Android или iOS с версией Viber, поддерживающей деловые сообщения.
11 - Запрос был отправлен с IP-адреса, не входящего в белый список для этого идентификатора/В запросе использован неверный идентификатор, не принадлежащий партнеру.
13 - Ошибка в процессе выставления счета
18 - Отсутствует значение/Неверное значение в запросе параметра «label».
28 - Файл, который пытаются отправить, не имеет поддерживаемого формата для этой функции.
29 - Имя файла превышает максимально допустимые 25 символов.
30 - Если URL-адрес миниатюры состоит из более чем 1000 символов.
matching_template_id:
ID, выданный Viber при регистрации шаблона. Если параметр присутствует и значение параметра пустое, это означает, что сообщение не соответствует ни одному из зарегистрированных шаблонов и было перетарифицировано с транзакционного на рекламное сообщение на стороне Viber.
Статусы сообщений Viber:
Name
Status code
sent
0
delivered
1
error
2
rejected
3
undelivered
4
pending
5
seen
6
unknown
20
Ошибки:
Name
Too Many Requests
message
Rate limit exceeded
code
0
status
429
Name
Empty parameter or parameter validation error
message
Invalid Parameter: <param>
code
1
status
400
param:
destination_addrr more than 20 chars
wrong viber user account
source_type is wrong
source_type or message_type is wrong
source_type is wrong, because the account is another type
message_type is wrong
empty text
text more than 1000 chars
transaction message error - not empty image, button_caption or button_action
message_type is wrong - not empty image, button_caption or button_action
message_type is wrong - empty image, button_caption or button_action
message_type is wrong - empty button_caption or button_action
image is not url
image url wrong scheme
image not valid type
image is not valid
image size is more than 800x800
button_action is empty
button_caption is empty
button_caption or button_action is empty
image or button_action is empty
image or button_caption is empty
callback_url is not url
callback_url url wrong scheme
button_action is not url
button_action url wrong scheme
button_action more than 30 chars
message_id <message_id> is not accepted for you
file_url is not url
file_url wrong scheme
file_url contains an invalid file type or extension, possible file extensions to send: .doc, .docx, .rtf, .dot, .dotx, .odt ,odf, .fodt, .txt, .info, .pdf, .xps, .pdax, .eps, xls, .xlsx, .ods, .fods, .csv, .xlsm, .xltx
button_caption is not applicable with file_url
button_action is not applicable with file_url
image is not applicable with file_url
wrong message type for file_url
file_url is not applicable in this context
Name
Internal server error
message
The server encountered an unexpected condition which prevented it from fulfilling the request