На основе данного API вы можете создать собственные приложения, интеграции телефонии в ваши сервисы и даже собственный «Teleum».

так например данное API в своей работе использует мобильное приложение Teleum, которое позволяет полностью управлять всеми возможностями личного кабинета прямо из приложения.

Кому может быть полезно данное API

Сервисы Хелпдеск, CRM/ERP системы, работающие на публичный рынок. Вы можете делать полную интеграцию телефонии Телеум в свои личные кабинеты (личные кабинеты ваших клиентов).

Социальные сети, Маркет плейсы, Доски объявлений, Игровые порталы и любые другие проекты, где можно задействовать механику виртуальной телефонии.

Например некоторые доски объявлений позволяют маскировать реальные телефоны своих клиентов, от посетителей досок объявлений, с целью защиты клиентов от смс или голосового спама, так как на номерах Телеум можно управлять черными списками переадресациями и тдтп налету прямо из API, и не позволять злоумышленникам беспокоить ваших клиентов.

URL: http://bill.tech.teleum.com/api/v3/


Метод login
входные параметры:
cmd=login
email – email пользователя
paswd - пароль
Например: http://bill.tech.teleum.com/api/v3/?cmd=login&email=test@email.addr&paswd=989864
ответ:
account – номер договора
token – текущий токен авторизации, передается обязательным параметром для использования остальных методов
vivaid – id пользователя

{"account":"00000001", "token":"f3765d40fecd44ee0a03480ba0043bb2", "vivaid":1}

(ЕСЛИ ПРИ ВЫЗОВЕ МЕТОДОВ ВОЗРАЩАЕТСЯ ОШИБКА 401 (С ОПИСАНИЕМ “SESSION ENDED”), ЗНАЧИТ СЕССИЯ ЗАВЕРШИЛАСЬ И ТРЕБУЕТСЯ ПОЛУЧИТЬ НОВЫЙ ТОКЕН. ДЛИТЕЛЬНОСТЬ БЕЗДЕЙСТВИЯ СЕССИИ  - 15 МИНУТ)

ОШИБКИ ВОЗВРАЩАЮТСЯ В ПЕРЕМЕННЫХ:
err – флаг ошибки (0 | 1)
errmsg – сообщение об ошибке


Метод balance
входные параметры:
cmd=balance
token – токен авторизации (полученный в методе login)
vivaid – id пользователя (полученный в методе login)
Например: http://bill.tech.teleum.com/api/v3/?cmd=balance&vivaid=1&token=989864xcdnwicb37cvdwddwc83teg3
ответ:
account – номер договора
vivaid – id пользователя
balance – баланс пользователя

{"contract":"00000001","balance":"100.20","vivaid":"1"}


Метод reportCalls - отчёт о звонках
входные параметры:
cmd=reportCalls
token – токен авторизации
vivaid – id пользователя
y – год
m – месяц
type - фильтр по типу (строка) (ANSWERED, BUSY, FAILED, NO ANSWER)
start – постраничный вывод – стартовая запись
limit – постраничный вывод – лимит записей

ответ:
vivaid – id пользователя
counts – кол-во записей
calls – массив записей
формат массива calls
{"src":"78123232323" - откуда
"dst":"78123343232" - куда
"billsec":"01:45" - длительность
"disposition" - статус звонка (отвеченный, неотвеченный, сбой, занято и т.п.)
"calldate":"2015-07-17 12:12:35" - время вызова
"calldatef":"17.07.2015 12:12:35" - см выше, только форматированное
billsecu":"105" - длительность в секундах
"rdr" - описание звонка (переадресация и т.п.), например, Переадресация на: 78129232182
}


Метод getRecordsList – список файлов записей
входные параметры:
cmd=getRecordsList
token – токен авторизации
vivaid – id пользователя
y – год
m – месяц

ответ:
vivaid – id пользователя
records – массив записей
формат массива calls
{"id":"29343264892364.232" – id звонка
"src":"78123232323" - откуда
"dst":"78123343232" - куда
"billsec":"01:45" - длительность
"disposition" - статус звонка (отвеченный, неотвеченный, сбой, занято и т.п.)
"calldate":"2015-07-17 12:12:35" - время вызова
"calldatef":"17.07.2015 12:12:35" - см выше, только форматированное
billsecu":"105" - длительность в секундах
}

Метод getRecordLink – получить ссылку на файл записи
входные параметры:
cmd=getRecordLink
token – токен авторизации
vivaid – id пользователя
fileid – id файла (полученный в getRecordsList)

ответ:
vivaid – id пользователя
link – ссылка для скачивания файла
error – 0 или 1
errormsg – если error==1, то сообщение об ошибке, иначе отсутствует
link – ссылка для скачивания файла

Метод getConnectedNumbers - подключённые номера
входные параметры:
cmd=getConnectedNumbers
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
numbers – массив номеров
формат массива numbers
number – Е164 номер телефона
numberform – отформатированный номер телефона
{" number ":"78123232323"," numberform ":"+7 (812) 323-2323","vivaid":"1"}






Метод getRCIDs - возвращает список возможных АОНов
входные параметры:
cmd=getRCIDs
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
rcids – массив АОНов
формат массива rcids
id – id номера, передающегося в качестве АОНа
numberform – отформатированный номер телефона




Метод getForwardsTypes- возвращает список возможных типов переадресаций
входные параметры:
cmd= getForwardsTypes
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
forwardTypes – массив типов
формат массива forwardTypes
id – id типа
name – наименование типа



Метод getForwards – список переадресация на номере
входные параметры:
cmd=getForwards
token – токен авторизации
vivaid – id пользователя
numberid – id номера

ответ:
vivaid – id пользователя
number – id номера
forwards – массив переадресаций
формат массива forwards
id - id переадресации
rtype - тип (id)
rnum - номер, куда переадресовывается (строка - может быть сип, тел. номер, емейл)
rtime - таймаут переадресации в сек.
rcid - id типа выставляемого АОНа (может быть трех типов - вызывающего абонента, групповой, и свой /свой указывается id-шником номера в rcnid)
direction - номер по порядку - порядок выполнения переадресаций
rec - флаг записи (0 | 1)
deleted - флаг удаленной передаресации (0 | 1)
vpbx - флаг принадлежности переадреасации к номеру АТС (а не к телефонному) (0 | 1)
dowjs2 - расписание передаресации в json-строке "[{"ttsh":"0","ttsm":"0","ttfh":"23","ttfm":"59","dts":"1","dtf":"7"}]" 
      ttsh - час начала
      ttsm - минуты начала
      ttfh - час окончания
      ttfm - минуты окончания
      dts - день недели начала
      dtf - день  недели окончания
rcnid - если rcid="свой", то id телефонного номера для АОНа
moh - флаг "Music on hold"
rtname - наименование типа переадресации, например "SIP" или "Автоответчик"
cname - наименование типа АОНа, например, "вызывающего"  или "свой"
times - время работы переадресации в human-виде, например "Понедельник-Воскресенье 00:00-23:59"
}




Метод getForwardTimes – список времени переадресации
входные параметры:
cmd= getForwardTimes
token – токен авторизации
vivaid – id пользователя
id – id переадресации

ответ:
vivaid – id пользователя
id – id переадресации
forwardTimes – массив переадресаций
формат массива forwardTimes
id - id временной метки
startTime – время начала
finishTime –время окончания
startDayOfWeek – день недели начала
finishDayOfWeek – день недели окончания
startDayOfWeekWord – день недели начала (наименование)
finishDayOfWeekWord – день недели окончания (наименование)



Метод editForward – создание/редактирование переадресации
входные параметры:
cmd=editForward
token – токен авторизации
vivaid – id пользователя
id – id переадресации, 0 для создания новой
rtype - тип переадресации (список доступных типов получаем getForwardsTypes)
nid – номер, к которому привязана переадресация
timeout - таймаут пепреадресации (от 5 до 30 сек)
rcid - тип АОНа (список получаем getForwardsRCIDs)
rcnid - когда rcid=3, то это id телефонного номера, который будет АОНом (список номеров получаем getRCIDs)
isolated - имеет смысл только при типе переадресации SIP (означает изоляцию переадресация на СИП только в пределах этого аккаунта)
rec - 0 | 1 - флаг записи 
vpbx - 0 | 1 - флаг принадлежности переадресации к короткому номеру виртуальной АТС
moh - 0 | 1 - флаг включения на переадресации Music On Hold
rnum - номер, куда переадресовывать, варианты различны для разных типов:
  SIP - номер СИП-лини (выбор из списка getSIPs)
  телефон - номер телефона 
  автоответчик и факс - е-мейл
}

ответ:
vivaid – id пользователя
id – id переадресации



Метод deleteForward – удаление переадресации
входные параметры:
cmd=deleteForward
token – токен авторизации
vivaid – id пользователя
id – id переадресации

ответ:
vivaid – id пользователя
id – id переадресации




Метод moveForward – перемещение переадресации
входные параметры:
cmd= moveForward
token – токен авторизации
vivaid – id пользователя
id – id переадресации
dir – направление ( up | down )

ответ:
vivaid – id пользователя
id – id переадресации




Метод getForwardsRCIDs – список типов АОНов
входные параметры:
cmd=getForwardsRCIDs
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
number – id номера
forwardRCIDs– массив типов
формат массива forwardRCIDs
id - id типа
name – наименование типа (вызывающего, свой, групповой)



Метод getSIPs – список SIP-линий
входные параметры:
cmd=getSIPs
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
id – id SIP-линии
spis – массив SIP-линий
формат массива sips
id - id SIP-линии
num - номер SIP-линии
email – адрес, привязанный к SIP-линии
def - флаг линии по умолчанию
rcid - АОН
descr - описание
uagent - если онлайн, то user_agent
status - онлайн/оффлайн




Метод getNextSIP – номер следующей свободной SIP-линии
входные параметры:
cmd= getNextSIP
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
num – номер следующей свободной SIP-линии





Метод editSIP – создание/изменение SIP-линии
входные параметры:
cmd=editSIP
token – токен авторизации
vivaid – id пользователя
id – id SIP-линии, если 0 – создание новой
email – адрес, привязанный к SIP-линии
descr – описание
rcid – АОН
paswd – пароль на линию

ответ:
vivaid – id пользователя
id – id SIP-линии
num – номер SIP-линии




Метод deleteSIP – удаление SIP-линии
входные параметры:
cmd=deleteSIP
token – токен авторизации
vivaid – id пользователя
id – id SIP-линии

ответ:
vivaid – id пользователя
id – id SIP-линии





Метод getTariffGroups – группы тарифов
входные параметры:
cmd=getTariffGroups
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
tariffGroups – массив групп тарифов
формат массива tariffGroups
id – id группы
name - наименование группы






Метод getTariffs – список доступных тарифов
входные параметры:
cmd=getTariffGroups
token – токен авторизации
vivaid – id пользователя
tg – группа тарифов

ответ:
vivaid – id пользователя
tariffs – массив тарифов
формат массива tariffs
id – id тарифа
name = наименование  тарифа
name_lng - наменование на разных языках (массив, может быть пустой)
numreq - если не 0, то тариф требует подключение номера
numreg - если numreq не 0, и numreg не 0, то содержит регион требуемого номера
numreg_name - имя требуемого региона номера (например, "федеральный 7-800")
numtype - см. numreg, содержит тип требуемого номера (как правило 0)
numtype_name - имя требуемого типа номера (например, "золотой")
textf - описание, может быть пустое
connectPrice – цена подключения
aboPrice – абонентская плата
}





Метод getConnectedTariffs– список подключенных тарифов
входные параметры:
cmd= getConnectedTariffs
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
connected – массив тарифов
формат массива connected
id – id тарифа
cost – цена тарифа
pcost – тип платежа по тарифу (абонентка, повременка и т.п.)
nid – id прикрепленного к тарифу номера
numf – номер прикрепленный к тарифу
link_date – дата подключения
name – наименование тарифа




Метод connectTariff – подключение тарифа
входные параметры:
cmd= connectTariff
token – токен авторизации
vivaid – id пользователя
tarid – id подключаемого тарифа (из getTariffs)
numid – id подключаемого номера (из getFreeNumbers), если требуется	

ответ:
vivaid – id пользователя
numid – id номера





Метод getNumbersTypes – список типов номеров
входные параметры:
cmd= getNumbersTypes
token – токен авторизации
vivaid – id пользователя

ответ:
vivaid – id пользователя
numberTypes – массив типов номеров
формат массива numberTypes
id – id типа номера
name – наименование типа номера (простой, серебряный и т.п.)




Метод getFreeNumbers– список свободных номеров номеров
входные параметры:
cmd= getFreeNumbers
token – токен авторизации
vivaid – id пользователя
nr – id региона номера (из getTariffs)
nt –  id типа номера (из getTariffs)
start – постраничный вывод – стартовая запись
limit – постраничный вывод – лимит записей
serie – серия номера

ответ:
vivaid – id пользователя
numbersCount – кол-во номеров
numbersSeries – массив серий номеров
формат массива numbersSeries
serie – серия номера (7812323)
serie_form – форматированная серия номера (+7 (812) 323-хххх )

freeNumbers  – массив номеров
формат массива freeNumbers  
id – id номера
number – E164 номер
numberform – форматированный номер
ntype – id типа номера
nregion – id региона номера
cost – цена номера




Пример работы с API:
1.	Получаем токен (login)
2.	Информативные функции:
- проверяем баланс (balance)
- получаем подключенные номера (getConnectedNumbers)
- получаем подключенные  тарифы (getConnectedTariffs)
- получаем детализацию звонков (reportCalls)
- получаем список SIP-линий (getSIPs)
      3. Функции для работы с тарифами и номерами
	- получаем список тарифных группа (getTariffGroups)
	- получаем список тарифов в группе (getTariffs)
	- использую информацию из getTariffs получаем список свободных номеров для данного тарифа (getFreeNumbers)
	- подключить тариф (connectTariff), используя информацию из getTariffs и getFreeNumbers
4. Функции для работы с переадресациями:
	- получаем список переадресаций для конкретного подключенного номера (getForwards)
	- создание новой или редактирование существующей переадресации (editForward)
	- удаление переадресации (deleteForward)
	- изменение порядка передаресаций для номера (moveForward)
     5. Функции для работы с SIP-линиями:
	- получаем список SIP-линий (getSIPs)
	- создание, редактирование SIP-линии (editSIP)
	- удаление SIP-линии (deleteSIP)
	- получение номера следующей свободной SIP-линии (getNextSIP)