Примеры реализации API интеграций

Передаем обязательные поля (см.раздел Основы)

pageОсновы

Token - Токен для взаимодействия с API (Получить можно в разделе https://watbot.ru/settings)

Дополнительные данные

bot_id - внутренний ID бота

contact_id - ID контакта в списке "Контакты"

tag - значение тега

value - значение переменной

*name - имя переменной

message_id - ID сообщения внутри платформы watbot

text - текст сообщения

phone - номер телефона

depth - глубина дерева от 1 до 10

*применяется для переменных пользователя

Получение данных списка контактов

Применяется GET-запрос

<? 
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function removegetContacts($token) {
  global $token; // доступ к глобальной переменной $token
  $apiUrl = 'https://watbot.ru/api/v1/getContacts?api_token=' . $token . '';
    // Создаем новый cURL ресурс
    $ch = curl_init();
    // Устанавливаем настройки cURL
    curl_setopt($ch, CURLOPT_URL, $apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // Выполняем запрос
    $response = curl_exec($ch);
    // Закрываем cURL ресурс
    curl_close($ch);
    // Обрабатываем ответ
    if ($response === false) {
        // В случае ошибки
        echo 'Ошибка при получении контактов.';
    } else {
        // В случае успеха
        // Преобразуем полученные данные из JSON в ассоциативный массив
        $contacts = json_decode($response, true);
        
        // Выводим данные в формате JSON
        echo json_encode($contacts);
    }
}
// Вызываем функцию removeTagFromContact
removegetContacts($token);
?> 

Добавление тега для контакта

Применяется POST-запрос

<? 
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function removeTagtoContact($token, $contact_id, $tag) {
  global $token; //доступ к глобальной переменной
  $apiUrl = 'https://watbot.ru/api/v1/attachTagToContact?api_token=' . $token . '&contact_id=' . $contact_id . '&name=' .$tag.'';
    // Создаем новый cURL ресурс
   $ch = curl_init();
    // Устанавливаем настройки cURL
    curl_setopt($ch, CURLOPT_URL, $apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // Выполняем запрос
  $response = curl_exec($ch);
    // Закрываем cURL ресурс
    curl_close($ch);
    // Обрабатываем ответ
    if ($response === false) {
        // В случае ошибки
        echo 'Ошибка при добавлении тега контакта.';
    } else {
        // В случае успеха
        // Преобразуем полученные данные из JSON в ассоциативный массив
       $contacts = json_decode($response, true);
        
        // Выводим данные в формате JSON
        echo json_encode($contacts);
    }
}
// Вызываем функцию removeTagFromContact
removeTagtoContact($token, $contact_id, $tag);
?>

Удаление тега для контакта

Применяется POST-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function removeTagFromContact($token, $contact_id, $tag) {
  global $token; // доступ к глобальной переменной
  $apiUrl = 'https://watbot.ru/api/v1/detachTagFromContact?api_token=' . $token . '&contact_id=' . $contact_id . '&name=' .$tag.'';
    // Создаем новый cURL ресурс
    $ch = curl_init();
    // Устанавливаем настройки cURL
    curl_setopt($ch, CURLOPT_URL, $apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // Выполняем запрос
    $response = curl_exec($ch);
    // Закрываем cURL ресурс
    curl_close($ch);
    // Обрабатываем ответ
    if ($response === false) {
        // В случае ошибки
        echo 'Ошибка при удалении тега контакта.';
    } else {
        // В случае успеха
        // Преобразуем полученные данные из JSON в ассоциативный массив
        $contacts = json_decode($response, true);
        
        // Выводим данные в формате JSON
        echo json_encode($contacts);
    }
}
// Вызываем функцию removeTagFromContact
removeTagFromContact($token, $contact_id, $tag);
?>

Получение списка тегов контакта

Применяется GET-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function getContactTags($token, $contact_id) {
  global $token; //доступ к глобальной переменной
  $apiUrl = 'https://watbot.ru/api/v1/getContactTags?contact_id=' . $contact_id . '&api_token=' . $token . '';
    // Создаем новый cURL ресурс
   $ch = curl_init();
    // Устанавливаем настройки cURL
    curl_setopt($ch, CURLOPT_URL, $apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // Выполняем запрос
  $response = curl_exec($ch);
    // Закрываем cURL ресурс
    curl_close($ch);
    // Обрабатываем ответ
    if ($response === false) {
        // В случае ошибки
        echo 'Ошибка при получении тегов контакта.';
    } else {
        // В случае успеха
        // Преобразуем полученные данные из JSON в ассоциативный массив
       $contact = json_decode($response, true);
        
        // Выводим данные в формате JSON
        echo json_encode($contact);
    }
}
// Вызываем функцию getContactTags
getContactTags($token, $contact_id);
?>

Получение списка переменных пользователя

Применяется GET-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function getContactVariables($contact_id) {
global $token; //доступ к глобальной переменной
  $apiUrl = "https://watbot.ru/api/v1/getContactVariables?api_token=" . $token . "&contact_id=" . $contact_id;
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $apiUrl);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  $response = curl_exec($ch);
  curl_close($ch);
  if ($response === false) {
      echo 'Ошибка при получении списка переменных пользователя.';
  } else {
      $variables = json_decode($response, true);
  }
}
//Вызываем функцию getContactVariables
getContactVariables($contact_id);
?>

Создание или обновление переменной

Применяется POST-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function setContactVariable($contact_id, $name, $value) {
global $token; //доступ к глобальной переменной
  $apiUrl = "https://watbot.ru/api/v1/setContactVariable?api_token=" . $token . "&contact_id=" . $contact_id."&name=".$name."&value=".$value;
  $data = array(
    "contact_id" => $contact_id,
    "name" => $name,
    "value" => $value);
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $apiUrl);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  $response = curl_exec($ch);
  curl_close($ch);
  if ($response === false) {
      echo 'Ошибка при обновлении или создании переменной пользователя.';
  } else {
      $result = json_decode($response, true);
  }
}
//Вызываем функцию setContactVariables 
setContactVariable($contact_id, $name, $value);
?>

Удаление переменной

Применяется POST-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function deleteContactVariable($contact_id, $name) {
global $token; //доступ к глобальной переменной
  $apiUrl = "https://watbot.ru/api/v1/deleteContactVariable?api_token=" . $token . "&contact_id=" . $contact_id . "&name=" . $name;
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $apiUrl);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "DELETE");
  $response = curl_exec($ch);
  curl_close($ch);
  if ($response === false) {
      echo 'Ошибка при удалении переменной пользователя.';
  } else {
      $result = json_decode($response, true);
  }
}
//Вызываем функцию deleteContactVariables
deleteContactVariable($contact_id, $name);
?>

Отправка текстовой рассылки

Применяется POST-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function sendMessageToQueue($token, $message_id, $text, $contact_id = null, $phone = null) {
    if ($contact_id !== null || $phone !== null) {
        $apiUrl = 'https://watbot.ru/api/v1/sendMessageToQueue?api_token=' . $token . '&message_id=' . $message_id . '&text=' . $text;
        if ($contact_id !== null) {
            $apiUrl .= '&contact_id=' . $contact_id;
        }
        if ($phone !== null) {
            $apiUrl .= '&phone=' . $phone;
        }
        // Создаем новый cURL ресурс
        $ch = curl_init();
        // Устанавливаем настройки cURL
        curl_setopt($ch, CURLOPT_URL, $apiUrl);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        // Выполняем запрос
        $response = curl_exec($ch);
        // Закрываем cURL ресурс
        curl_close($ch);
        // Обрабатываем ответ
        if ($response === false) {
            // В случае ошибки
            echo 'Error Fatal Request';
    } else {
        echo 'Необходимо указать значение для $contact_id или $phone';
    }
}
}
// Вызываем функцию sendMessageToQueue и отправляем запрос
sendMessageToQueue($token, $message_id, $text, $contact_id, $phone);
?>

Получение реферов контакта

Применяется GET-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function getReferrers($token, $contact_id, $page == null, $depth == null) {
///depth параметр не обязателен, глубина просмотра дерева от 1 до 10, стандартное состояние 1 
///page параметр не обязателен, но нужен, для палигации страниц, страница может содержать до 500 контактов, данный параметр нужен в случае если вывод контактов будет > 500, на 2 странице начинается 501 контакт, дефалтное состояние page = 1
  global $token; //доступ к глобальной переменной
  if($page == null){
  $apiUrl = 'https://watbot.ru/api/v1/getReferrers?contact_id=' . $contact_id . '&api_token=' . $token . '';
  }else{
    $apiUrl = 'https://watbot.ru/api/v1/getReferrers?contact_id=' . $contact_id . '&api_token=' . $token . '&page='.$page.'';
  }
    // Создаем новый cURL ресурс
   $ch = curl_init();
    // Устанавливаем настройки cURL
    curl_setopt($ch, CURLOPT_URL, $apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // Выполняем запрос
  $response = curl_exec($ch);
    // Закрываем cURL ресурс
    curl_close($ch);
    // Обрабатываем ответ
    if ($response === false) {
        // В случае ошибки
        echo 'Error Fatal Request.';
    } else {
        // В случае успеха
        // Преобразуем полученные данные из JSON в ассоциативный массив
       $referrers = json_decode($response, true);
        
        // Выводим данные в формате JSON
        echo json_encode($referrers);
    }
}
// Вызываем функцию getReferrers
getReferrers($token, $contact_id);
?>

Получить рефералы контакта

Применяется POST-запрос

<?
//PHP CODE
//author: Administratio constructore chatbots Watbot.ru
function getReferrals($token, $contact_id, $page == null) {
///page параметр не обязателен, но нужен, для палигации страниц, страница может содержать до 500 контактов, данный параметр нужен в случае если вывод контактов будет > 500, на 2 странице начинается 501 контакт, дефалтное состояние page = 1
  global $token; //доступ к глобальной переменной
   if($page == null){
  $apiUrl = 'https://watbot.ru/api/v1/getReferrals?contact_id=' . $contact_id . '&api_token=' . $token . '';
  }else{
    $apiUrl = 'https://watbot.ru/api/v1/getReferrals?contact_id=' . $contact_id . '&api_token=' . $token . '&page='.$page.'';
  }
    // Создаем новый cURL ресурс
   $ch = curl_init();
    // Устанавливаем настройки cURL
    curl_setopt($ch, CURLOPT_URL, $apiUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // Выполняем запрос
  $response = curl_exec($ch);
    // Закрываем cURL ресурс
    curl_close($ch);
    // Обрабатываем ответ
    if ($response === false) {
        // В случае ошибки
        echo 'Error Fatal Request.';
    } else {
        // В случае успеха
        // Преобразуем полученные данные из JSON в ассоциативный массив
       $referrals = json_decode($response, true);
        
        // Выводим данные в формате JSON
        echo json_encode($referrals);
    }
}
// Вызываем функцию getReferrals
getReferrals($token, $contact_id);
?>

Раздел будет дополняться

Last updated