Запуск через API

Описание API-метода

Endpoint: https://cascades.fstrk.io/api/v1/transactions/async/

HTTP-метод: POST

Заголовки запроса:

  • api-key: Ключ доступа для аутентификации;

  • Content-Type: Формат тела запроса.

Пример тела запроса (JSON):

{
  "phone_number": "<НОМЕР ТЕЛЕФОНА>",
  "routing": [
    "BOT",
    "WHATSAPP"
  ],
  "bot_node_id": <ID СЦЕНАРИЯ (УЗЛА)>,
  "variables": {
    "<KEY>": "<VALUE>"
  },
  "whatsapp_template_name": "<TEMPLATE NAME>",
  "whatsapp_template_variables": {
    "<KEY>": "<VALUE>"
  },
    "waiting_time_route": <КОЛ-ВО СЕКУНД>
    "validity_period_seconds": <КОЛ-ВО СЕКУНД>,
    "tag": "<TAG>",
    "context": {
      "<KEY>": "<VALUE>",
      "<KEY>": "<VALUE>"
  }
}

Параметры запроса:

  • phone_number: Номер телефона, на который будет отправлена транзакция;

  • routing: Массив опций маршрутизации;

  • bot_node_id: Идентификатор сценария (узла) чат-бота для бесплатного канала в транзакции;

  • variables: Набор переменных для сценария (узла) чат-бота;

  • whatsapp_template_name: Идентификатор WhatsApp-шаблона;

  • whatsapp_template_variables: Переменные для WhatsApp-шаблона;

  • waiting_time_route: Срок ожидания ответа по отправке до перехода к след. маршруту (сек.)

  • validity_period_seconds: Срок действия транзакции (сек.).

  • tag: Тег транзакции

  • context: Контекст транзакции

Заметка: маршруты транзакции будут выполняться в той последовательности, в которой они перечислены в массиве параметра routing.

Синхронные ответы:

КодОписание

201

Задача на отправку транзакции успешно поставлена в очередь. В ответе вернется UUID задачи на запуск транзакции.

429

Слишком много повторяющихся запросов в секунду.

Ассинхронные события:

Тип событияОписание

transaction.done

Обновление по успешно созданной транзакции

transaction.error

Ошибка в процессе обработки транзакции

Пример запроса

Пример запроса на каскад BOT → WHATSAPP → VK NOTIFY:

curl -i -X POST \
  https://cascades.fstrk.io/api/v1/transactions/async/ \
  -H 'api-key: <КЛЮЧ ДОСТУПА>' \
  -H 'Content-Type: application/json' \
  -d '{
    "phone_number": "<НОМЕР ТЕЛЕФОНА>",
    "routing": [
      "BOT",
      "WHATSAPP",
      "VK_NOTIFY"
    ],
    "bot_node_id": 00001,
    "variables": {
      "first_name": "Иван"
    },
    "whatsapp_template_name": "meet_presentation",
    "whatsapp_template_variables": {
      "v1": "Иван"
    },
    "vk_notify_template_name": "meet_presentation",
    "vk_notify_template_variables": {
      "v1": "Иван"
    },
    "waiting_time_route": 60
    "validity_period_seconds": 600,
    "tag": "nedozvon",
    "context": {
      "cascade": "nedozvon",
      "deal_id": "18547661"
    }
  }'

Документация в Swager

Описание методов API хранится в Swagger по адресу: https://cascades.fstrk.io/api/docs/

Заметка: для тестирования транзакций используйте второй метод для отправки сообщений по каскаду. Он выполняется без очереди и синхронно возвращает результат запроса на запуск транзакции.

Last updated