API для дилерів і партнерів

Завдяки API ви можете пропонувати вашим клієнтам послуги телефонії, без необхідності їх реєстрації в Zadarma. Більш того, клієнти можуть отримувати телефонію під вашим брендом (Whitelabel).

При цьому ви можете пропонувати телефонію не як окрему послугу а як частину вашої системи, з якою ви можете максимально щільно її інтегрувати.

Якщо коротко - ваші клієнти можуть дзвонити і приймати дзвінки з вашого web-інтерфейсу, використовуючи всі можливості АТС Zadarma і навіть більше.

Всі можливості і методи API Zadarma

Для роботи з описаними методами потрібно отримати доступ до кабінету дилера Zadarma. Якщо у вас ще немає доступу, створіть тікет в фінансовий відділ сервісу.

Можливості інтеграції:

  • Створення нових акаунтів користувачів Zadarma з батьківського аккаунта дилера і управління цими акаунтами
  • Переказ балансу між дилером і дочірнім аккаунтом
  • Підключення віртуальних номерів
  • Створення та налаштування віртуальної АТС
  • Отримання ключів API аккаунта користувача
  • Встановлення посилання webhook для управління вхідними дзвінками АТС
  • Створення WebRTC віджетів для аккаунтів користувача і т.і.

Послідовність дій для підключення телефонії вашому клієнтові:

1. Реєстрація користувача (Створення нового акаунту Zadarma) виконується методом POST /v1/reseller/users/registration/new/ :

Для завершення реєстрації користувача (Створення нового облікового запису Zadarma) необхідно підтвердження реєстрації методом POST /v1/reseller/users/registration/confirm/

Для отримання тестових коштів і можливості поповнити рахунок, потрібно додати і підтвердити контактний номер телефону користувача. Додавання контактного телефону проводиться методом POST /v1/reseller/users/phones/add/ .

Для підтвердження номера, відправляємо SMS c кодом /v1/reseller/users/phones/prove_by_sms, користувач вводить код на вашому сайті і ви його передаєте методом /v1/reseller/users/phones/confirm .

2. Переказ коштів з балансу дилера на баланс облікового запису користувача виконується методом GET /v1/reseller/users/topup/ .

3. Підключення віртуальних номерів докладно описано тут, просто додайте до методу параметр user_id з ідентифікатором користувача для якого виконується дія (Підключення номера, завантаження документа і т.і.).

4. Використовуючи метод POST /v1/pbx/create/ ви можете створити віртуальну АТС Zadarma для вашого користувача.

5. Створіть кожному співробітнику внутрішній номер АТС використовуючи метод POST /v1/pbx/internal/create/ .

Увімкніть запис дзвінків в хмару на внутрішньому номері АТС використовуючи метод PUT /v1/pbx/internal/recording/ .

6. Аудіофайл для голосового меню ви можете завантажити до віртуальної АТС методом POST /v1/pbx/ivr/sounds/upload з параметрами:

  • name - ім'я файла,
  • file - сам файл.

6. Для розподілу вхідних дзвінків в АТС існують голосові меню (IVR) та сценарії (пункти меню - групи внутрішніх номерів на які надходять дзвінки). Метод /v1/pbx/create/ створює АТС з мінімальною кількістю налаштувань: 1 внутрішній номер і 1 сценарій "без натискання" (на який йдуть всі дзвінки за замовчуванням). Далі ви можете створити потрібну кількість меню і сценаріїв всередині меню.

Сценарії необхідні також при динамічному управлінні голосовим меню, якщо ви хочете одночасно направити дзвінки більше ніж на один внутрішній номер. Створити новий сценарій можна за допомогою методу /v1/pbx/ivr/scenario/create/ , подивитись список /v1/pbx/ivr/scenario/ та видалити /v1/pbx/ivr/scenario/delete/. При створенні сценарію задається список внутрішніх номерів, на які дзвонити і кнопка, при натисканні якої сценарій спрацює. Якщо ви плануєте не ставити кнопку в налаштуваннях, а використовувати динамічне меню, задайте параметр push_button більше 11.

7. Аудіофайл для голосового меню ви можете завантажити в віртуальну АТС методом POST /v1/pbx/ivr/sounds/upload :

Розміри аудіофайлів для завантаження - до 5Мбайт, допустимі формати - MP3, WAV

8. Доступ до API. Користувач може також використовувати API для роботи зі своїм акаунтом або для інтеграції зі сторонніми сервісами або CRM, для цього йому необхідно згенерувати ключі. Доступ до API, користувач може самостійно згенерувати ключі в особистому кабінеті, або дилер може отримати ці ключі використовуючи метод POST /v1/reseller/users/api_key/ з параметром user_id - id користувача. У відповіді буде міститися "key" та "secret" користувача, для доступу до його API.

Також можна задати url на який будуть відправляти повідомлення про дзвінки віртуальної АТС користувача, використовуючи метод POST /v1/pbx/callinfo/url/ . Та окремо url для інших повідомлень (Актуалізація контактів, Коллтрекінг, СМС і Аналітика розмов) використовуючи метод POST /v1/pbx/webhooks/url/ . Параметри однакові для обох запитів url - посилання та user_id - id користувача.


9. Для динамічного управління голосовим меню і вхідними дзвінками клієнта, ви можете задіяти готову PHP бібліотеку доступну на нашому Github або реалізувати власне рішення, використовуючи нашу систему повідомлень про дзвінки, докладніше тут.


10. Інтеграція віртуальної АТС зі сторонньою CRM докладно описана в окремій інструкції.


11. Для здійснення дзвінків клієнта через ваш веб інтерфейс, використовуйте WebRTC віджет за інструкцією. Також ви можете запропонувати підключити будь-які програми та обладнання за протоколом SIP. Параметри їх підключення (логін-пароль) ви можете отримати через методи /v1/pbx/internal/