/
API

API

 

API для переписки и управления сервисами AutoFAQ

API позволяет:

  • от имени пользователя вести переписку с сервисом AutoFAQ, включая переписку с ботом и операторами сервиса

  • создавать рассылки пользователям

  • управлять настройками сервиса

Swagger документация API

 

KB CRUD API для управления Базами Знаний /core-api/crud/

CRUD API служит для создания Баз Знаний, наполнения их документами и публикации (design-time).

Для удобства все PUT JSON вызовы работают как REST JSON PATCH - то есть можно передать только те поля, значения которых необходимо обновить (нет нужды передавать полное состояние)

Swagger документация

Жизненный цикл БЗ:

  • Создание. БЗ имеет имя, настройки языка, режима дообучения и apikey service_token для доступа к опубликованному сервису QNA.

  • Наполнение документами. Документ - это (вопрос, ответ, опционально формулировки вопроса, файловые атачи)

  • Публикация. Опубликованная БЗ предоставляет сервис ответов на вопросы (см QNA API ниже)

  • Редактирование контента, модерация и прием рекоммендаций документов и формулировок.

  • Удаление БЗ

Аутентификация

Возможны 2 варианта аутентификации

  1. jwt cookie полученная при авторизации в UI на странице /login либо через API вызов /api/ext/v2/login

  2. user_token - строковый ключ пользователя (access token, apikey) можно узнать у администратора.

При использовании user_token может быть передан несколькими способами:

  1. Предпочтительный: Standard Basic Auth HTTP header - Authorization: Bearer {user_token}

  2. Альтернативный: Private HTTP header AUTOFAQ-User-Token: {user_token}

 

Коды ошибок

 

response http code - 400 response content type - json response json.error === 'invalid_excel' response json.message === "Неизвестный формат файла" Текст ошибки пользователю: "Некорректный XLS файл" response http code - 400 response content type - json response json.error === 'invalid_excel' response json.message === "Файл должен содержать обязательные колонки 'наименование','ответ' и 'вопрос 1'" Текст ошибки пользователю: "Файл должен содержать обязательные колонки 'наименование','ответ' и 'вопрос 1'" response http code - 400 response content type - json response json.error === 'similar_paraphrase' Текст ошибки пользователю: `Схожая формулировка "${json.similar_paraphrase}" (${json.similar_paraphrase_id}) уже существует в документе ${json.similar_document_id} БЗ ${json.similar_service_id}` response http code - 400