Перейти к основному содержимому

Обновить сценарий

PATCH /api/v1/bots/{uniqueId}/scenarios/{scenarioUniqueId}​

URL​

https://app.helpfy.ai/api/v1/bots/{uniqueId}/scenarios/{scenarioUniqueId}

Адрес своей установки подставьте вместо https://app.helpfy.ai. Идентификаторы в фигурных скобках замените значениями из ответов API.

Заголовки​

ЗаголовокЗначение
AuthorizationBasic <base64(email:api_key)>
Acceptapplication/json

Для JSON-тела передайте Content-Type: application/json.

Подробнее — авторизация API.

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

Параметры пути​

ПараметрТипОбязательныйОписание
uniqueIdстрокаДаИдентификатор бота.
scenarioUniqueIdстрокаДаИдентификатор сценария.

Тело запроса (application/json)​

ПолеТипОбязательноОписание
titleстрокаНетНазвание сценария.
clarification_labelстрокаНетКороткое название темы, которое клиент увидит при уточнении.
descriptionстрокаНетПонятное описание назначения.
trigger_descriptionстрокаНетКраткое описание ситуации клиента, при которой нужно запустить сценарий.
examplesмассив: строкаНетПримеры обращений, при которых нужно запускать сценарий.
exclusionsмассив: строкаНетПримеры обращений, при которых сценарий запускаться не должен.
min_confidenceчислоНетМинимальная оценка соответствия обращения для запуска сценария. Чем выше значение, тем строже выбор. (минимум: 50; максимум: 100; по умолчанию: 78)
priorityчислоНетПриоритет выбора сценария среди подходящих. (по умолчанию: 100)
allow_repeat_in_dialogueлогическое значениеНетРазрешить повторный запуск сценария в одном диалоге. (по умолчанию: false)
exit_messageстрока или nullНетОтвет при явном выходе клиента из сценария. Пустое значение или null возвращает стандартный ответ. (максимум символов: 2000)
definitionобъектНетСхема блоков сценария и переходов между ними.
layoutобъектНетРасположение блоков в конструкторе сценария.

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

curl --request PATCH 'https://app.helpfy.ai/api/v1/bots/11111111-1111-4111-8111-111111111111/scenarios/11111111-1111-4111-8111-111111111111' \
--user 'user@example.com:api_key' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data-binary @- <<'JSON'
{
"title": "Возврат заказа",
"clarification_label": "Жду возврат денег"
}
JSON

Ответы​

HTTPОписание
200Успешный ответ
400Неверные настройки сценария.
401Требуется авторизация.
403Нет доступа к боту.
404Бот или сценарий не найден.
Пример ответа — HTTP 200

Сокращённый пример; показаны клиентские поля. Значения условные.

{
"unique_id": "17396bcc-6b29-4b2e-b7fd-63c8eb8b6cc8",
"title": "Статус доставки",
"trigger_description": "Клиент спрашивает о текущем статусе доставки своего заказа",
"min_confidence": 78,
"priority": 100,
"is_active": false,
"allow_repeat_in_dialogue": false,
"versions": [
{
"unique_id": "17396bcc-6b29-4b2e-b7fd-63c8eb8b6cc8",
"version": 2,
"status": "DRAFT",
"definition": {
"start_node_id": "answer",
"nodes": [
{
"id": "answer",
"type": "FIXED_REPLY",
"title": "Ответить клиенту",
"text": "Адрес доставки можно изменить до передачи заказа в доставку."
},
{
"id": "end",
"type": "END",
"title": "Завершить сценарий"
}
],
"edges": [
{
"id": "answer-end",
"source": "answer",
"target": "end",
"priority": 100,
"condition": {
"type": "ALWAYS"
}
}
]
},
"created_at": "2026-10-16T09:00:00.000Z"
}
],
"_count": {
"runs": 12
},
"created_at": "2026-10-16T09:00:00.000Z",
"updated_at": "2026-10-16T09:00:00.000Z"
}
Пример ошибки — HTTP 400

Пример структуры ошибки. Код и сообщение зависят от причины ошибки.

{
"statusCode": 400,
"error": "Bad Request",
"code": "BAD_REQUEST",
"message": "Bad Request"
}