Push API
Push API - это программный интерфейс, который позволяет добавить токен устройства мобильного приложения на базе iOS, Android или Huawei в связку с SIP ID. Вам понадобится данный интерфейс при разработке мобильного приложения для звонков c использованием Exolve Mobile Voice SDK, чтобы пользователи вашего приложения могли получать push-уведомления о входящих звонках.
Push API Exolve предлагает пользователям следующие методы для управления токенами устройства:
-
AddSipDevicePushToken — добавляет токен устройства мобильного приложения в связку с SIP ID;
-
GetDeviceList — получает список токенов устройств мобильных приложений по заданным параметрам;
-
DeleteSipDevicePushToken — удаляет токен устройства мобильного приложения из связки с SIP аккаунтом.
Метод AddSipDevicePushToken
Примените этот метод для добавления токена устройства мобильного приложения в связку с SIP ID для отправки push-уведомления о входящем вызове. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/push/v1/AddSipDevicePushToken
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
sip_username | uint64 | юзернейм SIP ID |
device_token | string | токен устройства |
device_token_type | enum DeviceTokenType | тип устройства |
dev_mode | boolean | True - включить отладочный режим для push-уведомлений, False - боевой режим |
DeviceTokenType
Параметр | Тип | Описание |
---|---|---|
1 | enum | Android |
2 | enum | iOS |
3 | enum | iOS + VoIP |
4 | enum | Huawei |
Выходные параметры
Пустой JSON с 200 OK статусом.
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
401 | Unauthorized | Unauthorized | отсутствует/не валидный API-ключ |
404 | Not Found | not found | указанный юзернейм SIP ID не принадлежит приложению |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.SipUsername: value length must be between 11 and 15 runes, inclusive | значение в поле sip_username не валидно (принимает от 11 до 15 символов включительно) |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.DeviceToken: value length must be between 1 and 1024 runes, inclusive | поле device_token пустое |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.DeviceTokenType: value must be one of the defined enum values | значение в поле device_token_type не валидно, должно быть одно из заданных значений |
400 | Bad Request | cant decode json | поле device_token_type пустое |
Примеры
Входные параметры:
{
"sip_username": "883140123456789",
"device_token": "token",
"device_token_type": 1
}
Выходные параметры:
{}
Метод GetDeviceList
Примените этот метод для получения списка токенов устройств мобильных приложений по заданным параметрам. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/push/v1/GetDeviceList
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
sip_username | uint64 | юзернейм SIP ID |
device_token | string | токен устройства |
device_token_type | enum DeviceTokenType | тип устройства |
DeviceTokenType
Параметр | Тип | Описание |
---|---|---|
1 | enum | Android |
2 | enum | iOS |
3 | enum | iOS + VoIP |
4 | enum | Huawei |
Выходные параметры
Параметр | Тип | Описание |
---|---|---|
devices | Devices | список токенов устройств |
Devices
Параметр | Тип | Описание |
---|---|---|
application_uuid | string | идентификатор приложения, которому принадлежат токены устройств |
sip_username | uint64 | юзернейм SIP ID |
device_token | string | токен устройства |
device_token_type | enum DeviceTokenType | тип устройства |
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
401 | Unauthorized | Unauthorized | отсутствует/не валидный API-ключ |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.SipUsername: value length must be between 11 and 15 runes, inclusive | значение в поле sip_username не валидно (принимает от 11 до 15 символов включительно) |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.DeviceToken: value length must be between 1 and 1024 runes, inclusive | поле device_token пустое |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.DeviceTokenType: value must be one of the defined enum values | значение в поле device_token_type не валидно, должно быть одно из заданных значений |
400 | Bad Request | cant decode json | поле device_token_type пустое |
Примеры
Входные параметры:
{
"device_token_type": 1
}
Выходные параметры:
{
"devices": [
{
"application_uuid": "b81ce4fc-f755-4f49-b8d3-f782f9ad9999",
"sip_username": "883140123456789",
"device_token": "token",
"device_token_type": "1"
},
{
"application_uuid": "b81ce4fc-f755-4f49-b8d3-f782f9ad9999",
"sip_username": "883140987654321",
"device_token": "token2",
"device_token_type": "1"
}
]
}
Метод DeleteSipDevicePushToken
Примените этот метод для удаления токена устройства мобильного приложения из связки с SIP аккаунтом, чтобы отключить отправку push-уведомления. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.
Точка подключения:
POST: https://api.exolve.ru/push/v1/DeleteSipDevicePushToken
Авторизация
Передайте следующие Заголовки HTTP для успешной авторизации.
Имя | Тип | Описание |
---|---|---|
Authorization | string | API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0 , где e***s0 замените на API-ключ вашего приложения |
Входные параметры
Передайте следующие параметры в теле запроса в JSON формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр | Тип | Описание |
---|---|---|
sip_username | uint64 | юзернейм SIP ID |
device_token | string | токен устройства |
device_token_type | enum DeviceTokenType | тип устройства |
DeviceTokenType
Параметр | Тип | Описание |
---|---|---|
1 | enum | Android |
2 | enum | iOS |
3 | enum | iOS + VoIP |
4 | enum | Huawei |
Выходные параметры
Пустой JSON с 200 OK статусом.
Возможные ошибки
Код | Статус | Пример сообщения | Описание |
---|---|---|---|
401 | Unauthorized | Unauthorized | отсутствует/не валидный API-ключ |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.SipUsername: value length must be between 11 and 15 runes, inclusive | значение в поле sip_username не валидно (принимает от 11 до 15 символов включительно) |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.DeviceToken: value length must be between 1 and 1024 runes, inclusive | поле device_token пустое |
400 | Bad Request | invalid AddSipDevicePushTokenRequest.DeviceTokenType: value must be one of the defined enum values | значение в поле device_token_type не валидно, должно быть одно из заданных значений |
400 | Bad Request | cant decode json | поле device_token_type пустое |
Примеры
Входные параметры:
{
"sip_username": "883140123456789",
"device_token": "token",
"device_token_type": 1
}
Выходные параметры:
{}