Центр помощи
Интеграции чат-бота

Пользовательские интеграции API

Последнее обновление:

Интеграция чат-бота с пользовательскими API

С помощью нашего редактора действий ИИ вы можете настроить любую пользовательскую интеграцию с любой внутренней системой, способной предоставлять данные через эндпоинты API. Например, вы можете настроить чат-бота так, чтобы он проверял наличие товара на складе, уточнял статус заказа в вашей ERP-системе или проверял текущий баланс на счете клиента.

Вы также можете выполнять действия для обновления внешних систем - например, вызывать эндпоинты для создания записей на прием или передавать вебхуки.

Предварительные требования

ℹ️ Перед началом работы убедитесь, что ваш тарифный план ChatLab поддерживает интеграцию с Custom API (пользовательскими API). Ознакомьтесь с информацией на странице с тарифами

Добавление Custom API в вашего чат-бота

Интеграция пользовательского API позволяет вашему чат-боту взаимодействовать с внешними сервисами - например, с вашей собственной платформой интернет-магазина, получая данные или выполняя действия от имени пользователя.

В этом руководстве описаны шаги, необходимые для настройки пользовательского API на платформе ChatLab.

Ваш API

У вас должны быть общедоступные эндпоинты API, к которым может обращаться чат-бот. Это означает, что вам необходимо предоставить доступ к данным из вашей платформы e-commerce или другой собственной системы через эндпоинты API, чтобы наш чат-бот мог вызывать их, извлекать информацию и передавать ее пользователям.

Вызов API чат-ботом

API будет вызываться чат-ботом динамически во время общения с пользователем, когда боту потребуется доступ к внешним данным или выполнение определенных действий. Важно учитывать следующее:

  • Вызов не гарантирован: API вызывается только тогда, когда логика чат-бота сочтет это необходимым. Точных гарантий относительно времени и регулярности вызовов API нет.

  • Требования к модели ИИ: Для оптимальной работы рекомендуется использовать модели ИИ более высокого уровня с поддержкой сложных вызовов функций, такие как GPT-4o или выше. Эти модели точнее определяют подходящий момент для обращения к API на основе контекста диалога и намерений пользователя.

  • Контекстные вызовы: Чат-бот будет пытаться вызвать API каждый раз, когда обнаружит в диалоге контекст, соответствующий назначению API. Однако фактический вызов зависит от множества факторов, таких как:

    • Доступность и скорость ответа внешнего API.
    • Текущее состояние беседы и запросы пользователя.
    • Внутренний уровень уверенности и алгоритмы оценки модели ИИ при принятии решения о необходимости вызова.

Шаги по настройке Custom API

Шаг 1: Перейдите в настройки Custom API

  1. Войдите в панель управления ChatLab.

  2. В меню слева в разделе Settings (Настройки) выберите Custom API (Пользовательские API).

Шаг 2: Создайте новый API

  1. Нажмите кнопку + Define API (Определить API).

  2. Введите название вашего API в поле API Name (Название API).

  3. В поле URL укажите базовый URL внешнего сервиса, к которому вы хотите подключиться.

  4. Нажмите Save (Сохранить), чтобы создать API.

Шаг 3: Добавьте операции API

  1. В строке созданного API нажмите кнопку View (Просмотр).

  2. Нажмите + Define API Operation (Определить операцию API), чтобы настроить отдельные операции (эндпоинты) для этого API.

  3. Заполните обязательные поля:

  • Operation Name (Название операции): понятное название операции.
  • Operation URI (URI операции): путь к эндпоинту операции (например, /v1/resource).

Изображение 01

Шаг 4: Настройте URI эндпоинта и параметры

  1. Конфигурация URI эндпоинта:
  • Добавьте переменные пути, необходимые для операции, нажав + Add path variable (Добавить переменную пути).
  • Введите параметры переменной и при необходимости отметьте ее как обязательную.

Изображение 02

  • Выберите источник значения:
    • Provided by user to chatbot - если значение должен предоставить пользователь в диалоге с чат-ботом.
    • Constant - если это постоянное значение, которое вы задаете на этапе настройки операции API.
  • Добавьте созданную переменную пути в определение пути между двумя знаками «@»: @myvariable@:

Изображение 03

  1. Параметры запроса (Query Parameters):
  • Добавьте параметры запроса, нажав + Add query parameter (Добавить параметр запроса).
  • Укажите имя параметра, тип данных и источник (например, предоставляется пользователем или чат-ботом).

Изображение 04

Шаг 5: Задайте метод запроса и тело запроса

  1. Выберите HTTP-метод для операции (например, GET, POST).

  2. Если выбран метод POST, настройте тело запроса (body):

  • Выберите тип содержимого (например, application/json).
  • Добавьте параметры тела, указав имя, тип данных и источник.

Изображение 05

  • Добавьте переменные в структуру тела - обычно это JSON, куда подставляются определенные вами переменные.

Шаг 6: Задайте заголовки операции

Добавьте заголовки - например, Authorization или другие, требуемые вашим API. На скриншоте ниже показан пример настройки постоянного токена в заголовке Authorization:

Изображение 06

Шаг 7: Сохраните операцию

  1. Проверьте конфигурацию и убедитесь, что все данные указаны верно.

  2. Нажмите Save changes (Сохранить изменения), чтобы сохранить операцию API.

Шаг 8: Протестируйте интеграцию API

  1. Воспользуйтесь функцией Test API (Тестировать API), чтобы отправить тестовый запрос и проверить корректность работы интеграции.

  2. Следите за логами на предмет ошибок или сбоев и при необходимости скорректируйте параметры.

Шаг 9: Привяжите операции API к чат-боту

После того как API Operations (Операции API) настроены, их необходимо назначить чат-боту. Выберите нужного чат-бота в основном списке, нажмите Integrations (Интеграции) и в меню слева выберите AI API Actions (Действия API ИИ).

Изображение 07

Нажмите Attach (Прикрепить) напротив нужной операции API.

Шаг 10: Добавьте ролевые инструкции для чат-бота

Выберите вашего чат-бота в основном списке, нажмите Settings, затем в меню слева выберите Role (Роль).

Изображение 08

Нажмите на Provide custom role instructions (Указать пользовательские инструкции роли).

Изображение 09

Добавьте инструкции по использованию новой операции API. Например, можно задать следующее правило:

- When user asks for store inventory always call getItems function and render the result of the function with following rules…..

Советы по успешной интеграции

  • Убедитесь, что базовый URL и эндпоинты указаны корректно и доступны извне.

  • Проверьте правильность настройки параметров аутентификации (таких как API-ключи или токены).

  • Тщательно протестируйте каждую операцию, чтобы убедиться, что она возвращает ожидаемые ответы.

Следуя этим инструкциям, вы сможете без проблем подключить пользовательские API к чат-боту ChatLab, расширив его возможности и предоставив клиентам более качественный сервис.

Безопасность интеграции с Custom API

Чтобы защитить ваш пользовательский API от несанкционированного доступа, рекомендуем следовать приведенным ниже рекомендациям:

Используйте постоянные токены

Постоянные токены API: настройте постоянный токен (или ключ) API, который будет требоваться для всех запросов. Этот токен должен быть уникальным и сгенерированным безопасным способом.

  • Способ реализации: передавайте токен в заголовке запроса или в качестве параметра URL при каждом вызове API.

  • Где хранить: безопасно сохраните токен в настройках ChatLab в качестве постоянного параметра операции.

Используйте эндпоинт авторизации для временных токенов

Добавьте в API дополнительную операцию, возвращающую временный токен безопасности - то есть эндпоинт входа (login) в вашу систему.

При настройке этой операции API вам потребуется указать учетные данные для входа в систему в качестве постоянных параметров. Чтобы чат-бот мог использовать полученный таким образом токен, добавьте переменную токена безопасности в параметры других операций API, а также пропишите четкие инструкции в промптах как для операции авторизации, так и для остальных операций API (например: «Always use the security token obtained from the Login operation as the security_token parameter for operation getOrder»).

Контроль конфиденциальной информации в ChatLab

Чтобы чат-бот не отображал конфиденциальные сведения, пользователи ChatLab могут предпринять следующие шаги:

Используйте инжиниринг промптов для управления поведением ИИ

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

    • Пример промпта: «Не отображай персональные, финансовые или конфиденциальные данные, полученные в результате вызова API».
    • Использование системных сообщений: добавьте системное сообщение в начало диалога, чтобы закрепить важность конфиденциальности данных (например: «Убедись, что все ответы исключают любую конфиденциальную информацию»).
  • Регулярно обновляйте промпты: корректируйте промпты на основе отзывов пользователей или изменений в требованиях к защите данных. Это гарантирует, что ИИ будет строго следовать актуальным правилам работы с конфиденциальной информацией.

Проектируйте эндпоинты API со встроенной логикой проверки

  • Требуйте подтверждения личности для доступа к конфиденциальным данным: настройте эндпоинты API так, чтобы перед возвратом чувствительных данных выполнялась проверка. Например:

    • Параметры проверки: требуйте от пользователей указания определенных сведений (таких как адрес электронной почты, номер заказа или ответ на секретный вопрос), прежде чем API вернет связанные с ними данные.
    • Многофакторная проверка: используйте дополнительные параметры (например, дату заказа, адрес доставки или секретный код), чтобы подтвердить личность пользователя и убедиться в наличии прав на доступ к данным.
  • Настройте безопасные сообщения об ошибках: запрограммируйте логику API так, чтобы в случае отсутствия подтверждения или несовпадения данных возвращались нейтральные сообщения или стандартные ошибки:

    • Пример: «Не удалось получить информацию о заказе. Пожалуйста, проверьте адрес электронной почты и номер заказа».

Ограничивайте объем данных в ответах API

  • Минимизируйте объем передаваемых данных: настройте ответы API таким образом, чтобы они содержали только те сведения, которые необходимы для выполнения задачи чат-бота. Это снизит риск случайного отображения конфиденциальной информации.
    • Пример: вместо передачи полного профиля пользователя возвращайте только отдельные поля, нужные для текущего сценария (например, статус заказа или подтверждение оплаты).