BotobotAPI

Текущая версия BotobotAPI позволяет синхронизировать информацию о заказах и их статусах со сторонними сервисами: сайт, CRM и т.д.

Обзор

Возможности API:

  • отправка HTTP-запросов о новых заказах;
  • updateOrderStatus — изменение статуса заказа;
  • paidOrder — изменение статуса оплаты заказа.

Получение токена для работы с BotobotAPI осуществляется из Личного кабинета.

Интеграции

Вы можете настроить отправку HTTP-запросов в адрес сайта или CRM, для получения информации о новых заказах.

Предварительно укажите в Личном кабинете адрес для отправки запросов (CRM url) и метод отправки: GET или POST.

При появлении нового заказа по указанному адресу отправляется HTTP-запрос со следующими параметрами:

  • id integer
    Идентификатор заказа в сервисе Botobot.
  • user_chat_id string
    Идентификатор пользователя в Telegram.
  • cost_total float
    Полная стоимость заказа.
  • cost_cart float
    Стоимость товаров в корзине.
  • cost_discount float
    Сумма всех скидок.
  • cost_delivery float
    Стоимость доставки.
  • delivery string
    Вариант доставки: "pickup" — самовывоз, "shipping" — доставка до двери.
  • time string
    Время доставки/самовывоза.
  • recipient string
    Имя получателя заказа.
  • address string
    Адрес доставки.
  • mobile string
    Номер мобильного телефона получателя.
  • goods array
    Список позиций из корзины. Каждая позиция представляет собой массив со следующими полями:
    • id integer
      Идентификатор товара в каталоге магазина. Значение берется из файла с импортом.
    • article string
      Артикул товара в каталоге магазина. Значение берется из файла с импортом.
    • title string
      Наименование товара.
    • count integer
      Количество товара в корзине.
    • price float
      Цена единицы товара.
    • discount float
      Скидка за единицу товара.
    • total float
      Общая стоимость товарной позиции в корзине.

Отправка запросов

Для отправки запросов предварительно укажите в Личном кабинете токен для работы с BotobotAPI.

Адрес для отправки запросов — https://www.botobot.ru/api/v1/<method>/<token>, где

  • <token>
    Токен для работы с BotobotAPI.
  • <method>
    Доступный метод BotobotAPI.

Метод отправки запросов — POST.

Формат ответа — JSON:

  • status string
    Статус выполнения запроса: "success" или "fail".
  • message string (optional)
    Описание ошибки, в случае статуса "fail".
  • data array (optional)
    Данные, возвращаемые конкретным методом.

Метод updateOrderStatus

Обновление статуса заказа.

Параметры метода:

  • id integer
    Идентификатор заказа в сервисе Botobot.
  • status integer
    Новый статус заказа. Допустимые значения:

    0 — создан
    10 — ожидает обработки
    20 — подтврежден
    30 — отменен
    40 — оплачен
    50 — оформлен возврат
    60 — сформирован для отправки
    70 — отправлен получателю
    80 — доставлен
    90 — выдан

    Важно! Нельзя понижать статус заказа.

Метод paidOrder

Установка статуса оплаты заказа в значение true (оплачено).

Параметры метода:

  • id integer
    Идентификатор заказа в сервисе Botobot.

Метод addTask

Добавление команды бота в планировщик задач. Планировщик не гарантирует выполнение задачи точно в момент времени timestamp. Задачи выполняются в порядке очереди, после прохождения отметки timestamp.

Входные данные:

  • user_id integer
    Идентификатор пользователя в сервисе Botobot (поле bot_user_id при авторизации).
  • command string
    Команда или сообщение, которое будет выполнено.
  • timestamp integer
    UNIX-метка времени, после которго будет выполнена команда.

Выходные данные:

  • id integer
    Идентификатор вновь созданной задачи.

Метод removeTask

Удаление задачи из планировщика задач. Задача будет удалена только в том случае, если еще не наступило время её выполнения.

Входные данные:

  • id integer
    Идентификатор задачи.

Метод getTask

Получение информации по конкретной задаче.

Входные данные:

  • id integer
    Идентификатор задачи.

Выходные данные:

  • status integer
    Код статуса задачи.
  • status_text string
    Описание статуса задачи.
  • done_at integer
    UNIX-метка времени, когда была выполнена задача, если задача еще не выполнена — значение 0.

Расширение API

Если Вашем бизнесу требуются дополнительные возможности BotobotAPI, то напишите нам на support@botobot.ru. Мы свяжемся с Вами и обсудим, как оперативно решить поставленную задачу.