Посилання на REST API Procurize.AI#

Програмний доступ до вашої бази знань – документи, опитувальники, RAG та звіти – за допомогою вашого токену API.

Застосовується до: Procurize.AI API v1
Автентифікація: API‑ключ у заголовку X-API-Key (див. Токени API для керування токенами)
Базовий URL: https://api.procurize.com

Огляд#

Procurize.AI REST API забезпечує програмний доступ до ключових функцій платформи. Це дозволяє інтегрувати Procurize.AI з вашими внутрішніми системами, автоматизувати керування базою знань та створювати власні робочі процеси.

Підтримувані модулі (автентифікація токеном):

  • RagArticle – керування документами
  • RagFaq – керування записами FAQ
  • RagQuery – виконання RAG‑запитів

Автентифікація#

Усі автентифіковані кінцеві точки вимагають токен API, переданого у заголовку запиту.

ЗаголовокЗначення
X-API-Key<YOUR_API_TOKEN>

Приклад:

curl -X GET "https://api.procurize.com/v1/..." \
  -H "X-API-Key: your-api-token-here"

💡 Токени прив’язані до вашої організації – у запиті не потрібно вказувати ідентифікатор організації.

Базовий URL#

Усі кінцеві точки REST API розміщені за адресою:

https://api.procurize.com

Обробка помилок#

API використовує стандартні коди статусу HTTP.

КодЗначення
200 OKЗапит успішний
201 CreatedРесурс успішно створено
204 No ContentЗапит успішний, тіло відповіді відсутнє
400 Bad RequestНеправильні параметри або некоректний запит
401 UnauthorizedВідсутній або недійсний токен API
403 ForbiddenТокен не має прав для цієї дії
404 Not FoundРесурс не існує
500 Internal Server ErrorНеочікувана помилка сервера

Відповіді про помилки містять машинно‑читабельний код помилки та зрозуміле повідомлення.

Опис модулів#

RagArticle#

GET /questionnaire/rag/articles/summary#

Короткий опис: Короткий опис для головної сторінки

Параметри:

Ім’яУТипОбов’язковоОпис
projquerystring (uuid)НіІдентифікатор проєкту.

Відповідь (200):

{
  "active": 5
}

GET /questionnaire/rag/articles/total#

Короткий опис: Кількість статей

Параметри:

Ім’яУТипОбов’язковоОпис
qquerystringНіФільтр за назвою або кодом статті.
statequeryarrayНіФільтр за станами.
projectqueryarrayНіФільтр за проєктами.
typequeryarrayНіФільтр за типами документів.

Відповідь (200):

42

GET /questionnaire/rag/articles/list#

Короткий опис: Отримати список статей

Параметри:

Ім’яУТипОбов’язковоОпис
qquerystringНіФільтр за назвою або кодом статті.
statequeryarrayНіФільтр за станами.
projectqueryarrayНіФільтр за проєктами.
typequeryarrayНіФільтр за типами документів.
squerystringНіПоле сортування.
ascquerybooleanНіСортування за зростанням.
psqueryinteger (int32)НіРозмір сторінки.
pqueryinteger (int32)НіНомер сторінки (починаючи з 1).

Відповідь (200):

{
  "paging": {
    "pageNumber": 1,
    "pageSize": 10,
    "total": 42,
    "totalPages": 5
  },
  "items": [
    {
      "code": "ART-001",
      "org": "00000000-0000-0000-0000-000000000000",
      "id": "00000000-0000-0000-0000-000000000000",
      "name": "Article Title",
      "description": "Article description",
      "documentTypes": [
        {
          "id": "00000000-0000-0000-0000-000000000000",
          "name": "Type Name",
          "plural": "Type Names",
          "count": 5
        }
      ],
      "size": 150,
      "revision": {
        "id": "00000000-0000-0000-0000-000000000000",
        "collectionId": "00000000-0000-0000-0000-000000000000",
        "rev": 3,
        "date": "2025-01-15T10:30:00Z",
        "author": {
          "id": "user123",
          "name": "John Doe",
          "email": "john.doe@example.com",
          "login": "johndoe",
          "ra": true
        },
        "authorName": "John Doe",
        "analysisSummary": {
          "id": "00000000-0000-0000-0000-000000000000",
          "initiator": {
            "id": "user123",
            "name": "John Doe",
            "email": "john.doe@example.com",
            "login": "johndoe",
            "ra": true
          },
          "created": "2025-01-15T10:30:00Z",
          "state": "Completed",
          "stateDate": "2025-01-15T10:35:00Z",
          "stateDetails": "Analysis completed successfully",
          "operationId": "op-12345"
        }
      },
      "type": "Article",
      "state": "Active",
      "projects": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "items": [
        "00000000-0000-0000-0000-000000000000"
      ],
      "isShared": false
    }
  ]
}

POST /questionnaire/rag/file-to-md#

Короткий опис: Повертає вміст Markdown з файлу

Тіло запиту (multipart/form-data):

{
  "url": "https://example.com/file.pdf",
  "file": "binary"
}

Відповідь (200):

"Markdown content from file"

POST /questionnaire/rag/article/create#

Короткий опис: Створити статтю

Тіло запиту (multipart/form-data):

{
  "code": "ART-001",
  "name": "Article Title",
  "description": "Article description",
  "content": "# Article Content\n\nThis is the article content.",
  "url": "https://example.com/file.pdf",
  "file": "binary"
}

Відповідь (200):

{
  "code": "ART-001",
  "org": "00000000-0000-0000-0000-000000000000",
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "Article Title",
  "description": "Article description",
  "documentTypes": null,
  "size": 150,
  "revision": null,
  "type": "Article",
  "state": "Active",
  "projects": null,
  "items": null,
  "isShared": false
}

GET /questionnaire/rag/article/check#

Короткий опис: Перевірити існування статті.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.

Відповідь (200):

true

GET /questionnaire/rag/article-info#

Короткий опис: Отримати інформацію про статтю за кодом.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.

Відповідь (200):

{
  "code": "ART-001",
  "org": "00000000-0000-0000-0000-000000000000",
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "Article Title",
  "description": "Article description",
  "documentTypes": null,
  "size": 150,
  "revision": null,
  "type": "Article",
  "state": "Active",
  "projects": null,
  "items": null,
  "isShared": false
}

GET /questionnaire/rag/article#

Короткий опис: Отримати вміст статті за кодом

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.
formatquerystringНіЯкщо true, повертає HTML‑вміст у тілі відповіді. Інакше – вміст статті у форматі Markdown.
splitquerybooleanНіЯкщо true, повертає вміст, розділений на RAG‑елементи.
cssquerybooleanНіЯкщо true, повертає HTML/PDF‑вміст з CSS.

Відповідь (200):

"# Article Title\n\nThis is the article content in Markdown format."

POST /questionnaire/rag/article#

Короткий опис: Оновити метадані статті

Тіло запиту:

{
  "code": "ART-001",
  "name": "Updated Article Title",
  "description": "Updated description",
  "projects": [
    "00000000-0000-0000-0000-000000000000"
  ],
  "documentTypes": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "name": "Type Name",
      "plural": "Type Names"
    }
  ],
  "isShared": true,
  "state": "Active"
}

Відповідь (200):

{}

DELETE /questionnaire/rag/article#

Короткий опис: Видалити статтю

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.

GET /questionnaire/rag/article/pdf#

Короткий опис: Отримати статтю у форматі PDF за кодом

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.

Відповідь (200):

(pdf binary)

GET /questionnaire/rag/article/content#

Короткий опис: Отримати вміст статті

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.

Відповідь (200):

{
  "content": "# Article Title\n\nContent here."
}

POST /questionnaire/rag/article/content#

Короткий опис: Оновити вміст статті

Тіло запиту (multipart/form-data):

{
  "code": "ART-001",
  "content": "# Updated Content",
  "file": "binary"
}

POST /questionnaire/rag/plural#

Короткий опис: Отримати множину іменника

Параметри:

Ім’яУТипОбов’язковоОпис
nounquerystringНіІменник для множини.

Відповідь (200):

{
  "plural": "Articles"
}

POST /questionnaire/rag/article/find-types#

Короткий опис: Проаналізувати статтю за допомогою ШІ та повернути їх типи

Тіло запиту (multipart/form-data):

{
  "code": "ART-001",
  "content": "# Article Content"
}

Відповідь (200):

[
  {
    "plural": "Types"
  }
]

POST /questionnaire/rag/article/format-with-ai#

Короткий опис: Форматувати вміст статті за допомогою ШІ

Тіло запиту (multipart/form-data):

{
  "code": "ART-001",
  "content": "# Article Content"
}

Відповідь (200):

{
  "formattedContent": "# Formatted Article Content"
}

POST /questionnaire/rag/article/improve-on-suggestions#

Короткий опис: Покращити документ на основі пропозицій

Тіло запиту (multipart/form-data):

{
  "suggestions": [
    {
      "sectionTitle": "Introduction",
      "suggestion": "Add more details here."
    }
  ],
  "code": "ART-001",
  "content": "# Article Content"
}

Відповідь (200):

{
  "improvedContent": "# Improved Content"
}

GET /questionnaire/rag/article/parts#

Короткий опис: Повертає список частин статті

Параметри:

Ім’яУТипОбов’язковоОпис
idqueryarrayТакСписок частин статті.

Відповідь (200):

[
  {
    "id": "00000000-0000-0000-0000-000000000000",
    "code": "part-1",
    "title": "Introduction",
    "orderNumber": 1,
    "content": "Introduction content."
  }
]

GET /questionnaire/rag/article/revisions#

Короткий опис: Повертає список ревізій статті

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.

Відповідь (200):

[
  {
    "id": "00000000-0000-0000-0000-000000000000",
    "collectionId": "00000000-0000-0000-0000-000000000000",
    "rev": 1,
    "date": "2025-01-15T10:30:00Z",
    "author": {
      "id": "user123",
      "name": "John Doe",
      "email": "john.doe@example.com",
      "login": "johndoe",
      "ra": true
    },
    "authorName": "John Doe",
    "analysisSummary": {
      "id": "00000000-0000-0000-0000-000000000000",
      "initiator": {
        "id": "user123",
        "name": "John Doe",
        "email": "john.doe@example.com",
        "login": "johndoe",
        "ra": true
      },
      "created": "2025-01-15T10:30:00Z",
      "state": "Completed",
      "stateDate": "2025-01-15T10:35:00Z",
      "stateDetails": "Analysis completed",
      "operationId": "op-12345"
    }
  }
]

GET /questionnaire/rag/article/revisions/info/{id}#

Короткий опис: Отримати інформацію про ревізію статті

Параметри:

Ім’яУТипОбов’язковоОпис
idpathstring (uuid)ТакІдентифікатор ревізії.

Відповідь (200):

{
  "id": "00000000-0000-0000-0000-000000000000",
  "collectionId": "00000000-0000-0000-0000-000000000000",
  "rev": 1,
  "date": "2025-01-15T10:30:00Z",
  "author": {
    "id": "user123",
    "name": "John Doe",
    "email": "john.doe@example.com",
    "login": "johndoe",
    "ra": true
  },
  "authorName": "John Doe",
  "analysisSummary": {
    "id": "00000000-0000-0000-0000-000000000000",
    "initiator": {
      "id": "user123",
      "name": "John Doe",
      "email": "john.doe@example.com",
      "login": "johndoe",
      "ra": true
    },
    "created": "2025-01-15T10:30:00Z",
    "state": "Completed",
    "stateDate": "2025-01-15T10:35:00Z",
    "stateDetails": "Analysis completed",
    "operationId": "op-12345"
  }
}

GET /questionnaire/rag/article/revisions/{id}#

Короткий опис: Отримати вміст ревізії статті

Параметри:

Ім’яУТипОбов’язковоОпис
idpathstring (uuid)ТакІдентифікатор ревізії.

Відповідь (200):

"# Article Revision Content\n\nPrevious version."

GET /questionnaire/rag/article/analyze#

Короткий опис: Проаналізувати вміст статті за допомогою ШІ

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод статті.
revqueryinteger (int32)НіНомер ревізії.
forcequerybooleanНіПримусово створити новий аналіз і видалити попередній неповний результат, якщо він існує.

Відповідь (200):

{
  "id": "00000000-0000-0000-0000-000000000000",
  "initiator": {
    "id": "user123",
    "name": "John Doe",
    "email": "john.doe@example.com",
    "login": "johndoe",
    "ra": true
  },
  "created": "2025-01-15T10:30:00Z",
  "state": "Completed",
  "stateDate": "2025-01-15T10:35:00Z",
  "stateDetails": "Analysis completed",
  "operationId": "op-12345"
}

GET /questionnaire/rag/article/analyze/{id}#

Короткий опис: Отримати результат аналізу статті

**Параметри::

Ім’яУТипОбов’язковоОпис
idpathstring (uuid)ТакІдентифікатор аналізу.

Відповідь (200):

{
  "id": "00000000-0000-0000-0000-000000000000",
  "initiator": {
    "id": "user123",
    "name": "John Doe",
    "email": "john.doe@example.com",
    "login": "johndoe",
    "ra": true
  },
  "created": "2025-01-15T10:30:00Z",
  "state": "Completed",
  "stateDate": "2025-01-15T10:35:00Z",
  "stateDetails": "Analysis completed",
  "operationId": "op-12345",
  "fragments": [
    "fragment-1",
    "fragment-2"
  ],
  "ownInconcies": "Own inconsistencies found",
  "ragInconcies": "RAG inconsistencies found",
  "proposals": "Improvement proposals"
}

GET /questionnaire/rag/messages/list#

Короткий опис: Список усіх повідомлень

Параметри:

Ім’яУТипОбов’язковоОпис
idquerystring (uuid)ТакІдентифікатор колекції RAG.
itemquerystring (uuid)НіІдентифікатор елементу RAG.
messagequerystring (uuid)НіІдентифікатор повідомлення.
ascquerybooleanНіСортування за зростанням.
psqueryinteger (int32)НіРозмір сторінки.
pqueryinteger (int32)НіНомер сторінки (починаючи з 1).

Відповідь (200):

{
  "paging": {
    "pageNumber": 1,
    "pageSize": 10,
    "total": 5,
    "totalPages": 1
  },
  "items": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "replyTo": null,
      "questionnaire": null,
      "section": null,
      "question": null,
      "ragCollection": "00000000-0000-0000-0000-000000000000",
      "ragItem": "00000000-0000-0000-0000-000000000000",
      "targetId": "00000000-0000-0000-0000-000000000000",
      "targetType": "Question",
      "targetNum": 1,
      "author": {
        "id": "user123",
        "name": "John Doe",
        "email": "john.doe@example.com",
        "login": "johndoe",
        "ra": true
      },
      "text": "Message content",
      "created": "2025-01-15T10:30:00Z",
      "updated": "2025-01-15T10:30:00Z",
      "replies": 0
    }
  ]
}

POST /questionnaire/rag/messages/add#

Короткий опис: Додати нове повідомлення

Параметри:

Ім’яУТипОбов’язковоОпис
idquerystring (uuid)ТакІдентифікатор колекції RAG.
itemquerystring (uuid)НіІдентифікатор елементу RAG.
messagequerystring (uuid)НіІдентифікатор повідомлення для відповіді.

Тіло запиту:

{
  "text": "New message content"
}

Відповідь (200):

{
  "id": "00000000-0000-0000-0000-000000000000",
  "replyTo": null,
  "questionnaire": null,
  "section": null,
  "question": null,
  "ragCollection": "00000000-0000-0000-0000-000000000000",
  "ragItem": "00000000-0000-0000-0000-000000000000",
  "targetId": "00000000-0000-0000-0000-000000000000",
  "targetType": "Question",
  "targetNum": 1,
  "author": {
    "id": "user123",
    "name": "John Doe",
    "email": "john.doe@example.com",
    "login": "johndoe",
    "ra": true
  },
  "text": "New message content",
  "created": "2025-01-15T10:30:00Z",
  "updated": "2025-01-15T10:30:00Z",
  "replies": 0
}

POST /questionnaire/rag/message#

Короткий опис: Оновити існуюче повідомлення

Параметри:

Ім’яУТипОбов’язковоОпис
cquerystring (uuid)ТакІдентифікатор колекції RAG.
idquerystring (uuid)ТакІдентифікатор повідомлення.

Тіло запиту:

{
  "text": "Updated message content"
}

Відповідь (200):

{
  "id": "00000000-0000-0000-0000-000000000000",
  "replyTo": null,
  "questionnaire": null,
  "section": null,
  "question": null,
  "ragCollection": "00000000-0000-0000-0000-000000000000",
  "ragItem": "00000000-0000-0000-0000-000000000000",
  "targetId": "00000000-0000-0000-0000-000000000000",
  "targetType": "Question",
  "targetNum": 1,
  "author": {
    "id": "user123",
    "name": "John Doe",
    "email": "john.doe@example.com",
    "login": "johndoe",
    "ra": true
  },
  "text": "Updated message content",
  "created": "2025-01-15T10:30:00Z",
  "updated": "2025-01-15T10:45:00Z",
  "replies": 0
}

DELETE /questionnaire/rag/message#

Короткий опис: Видалити існуюче повідомлення

Параметри:

Ім’яУТипОбов’язковоОпис
idquerystring (uuid)ТакІдентифікатор повідомлення.

Відповідь (200):

{}

RagFaq#

GET /questionnaire/rag/faq-collections/summary#

Короткий опис: Короткий опис для головної сторінки

Параметри:

Ім’яУТипОбов’язковоОпис
projquerystring (uuid)НіІдентифікатор проєкту.

Відповідь (200):

{
  "active": 3
}

GET /questionnaire/rag/faq-collections/total#

Короткий опис: Кількість колекцій FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
qquerystringНіФільтр за назвою або кодом колекції.
statequeryarrayНіФільтр за станами.
projectqueryarrayНіФільтр за проєктами.

Відповідь (200):

3

GET /questionnaire/rag/faq-collections/list#

Короткий опис: Отримати список колекцій FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
qquerystringНіФільтр за назвою або кодом колекції.
statequeryarrayНіФільтр за станами.
projectqueryarrayНіФільтр за проєктами.
squerystringНіПоле сортування.
ascquerybooleanНіСортування за зростанням.
psqueryinteger (int32)НіРозмір сторінки.
pqueryinteger (int32)НіНомер сторінки (починаючи з 1).

Відповідь (200):

{
  "paging": {
    "pageNumber": 1,
    "pageSize": 10,
    "total": 3,
    "totalPages": 1
  },
  "items": [
    {
      "code": "FAQ-001",
      "org": "00000000-0000-0000-0000-000000000000",
      "id": "00000000-0000-0000-0000-000000000000",
      "name": "FAQ Collection",
      "description": "FAQ collection description",
      "documentTypes": null,
      "size": 5,
      "revision": null,
      "type": "Faq",
      "state": "Active",
      "projects": null,
      "items": null,
      "isShared": false
    }
  ]
}

GET /questionnaire/rag/faq-collections/find-items#

Короткий опис: Знайти елементи FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
qquerystringТакФільтр за питанням.
projectquerystring (uuid)НіФільтр за проєктом.
psqueryinteger (int32)НіРозмір сторінки.
pqueryinteger (int32)НіНомер сторінки (починаючи з 1).

Відповідь (200):

{
  "paging": {
    "pageNumber": 1,
    "pageSize": 10,
    "total": 5,
    "totalPages": 1
  },
  "items": [
    {
      "index": 0,
      "question": "What is this product?",
      "answer": "This is a great product.",
      "comment": "Product FAQ",
      "state": "Active"
    }
  ]
}

POST /questionnaire/rag/faq-collection/create#

Короткий опис: Створити нову колекцію FAQ.

Тіло запиту (multipart/form-data):

{
  "code": "FAQ-001",
  "name": "FAQ Collection",
  "description": "FAQ collection description",
  "content": "Content here",
  "file": "binary"
}

Відповідь (200):

{
  "code": "FAQ-001",
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "FAQ Collection",
  "description": "FAQ collection description",
  "documentTypes": null,
  "size": 5,
  "revision": null,
  "type": "Faq",
  "state": "Active",
  "projects": null,
  "items": null,
  "isShared": false
}

POST /questionnaire/rag/faq-collection#

Короткий опис: Оновити метадані колекції FAQ.

Тіло запиту:

{
  "code": "FAQ-001",
  "name": "Updated FAQ Collection",
  "description": "Updated description",
  "projects": null,
  "documentTypes": null,
  "isShared": false,
  "state": "Active"
}

DELETE /questionnaire/rag/faq-collection#

Короткий опис: Видалити колекцію FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.

GET /questionnaire/rag/faq-collection#

Короткий опис: Отримати колекцію FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.

Відповідь (200):

{
  "code": "FAQ-001",
  "org": "00000000-0000-0000-0000-000000000000",
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "FAQ Collection",
  "description": "FAQ collection description",
  "documentTypes": null,
  "size": 5,
  "revision": null,
  "type": "Faq",
  "state": "Active",
  "projects": null,
  "items": null,
  "isShared": false
}

GET /questionnaire/rag/faq-collection/check#

Короткий опис: Перевірити існування колекції FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.

Відповідь (200):

true

GET /questionnaire/rag/faq-collection/items-total#

Короткий опис: Кількість елементів FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.
qquerystringНіФільтр за вмістом елементу FAQ.

Тіло запиту:

["Active", "Default"]

Відповідь (200):

5

GET /questionnaire/rag/faq-collection/items#

Короткий опис: Отримати список елементів FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.
qquerystringНіФільтр за вмістом елементу FAQ.
statequeryarrayНіФільтр за станами.
squerystringНіПоле сортування.
ascquerybooleanНіСортування за зростанням.
psqueryinteger (int32)НіРозмір сторінки.
pqueryinteger (int32)НіНомер сторінки (починаючи з 1).

Відповідь (200):

{
  "paging": {
    "pageNumber": 1,
    "pageSize": 10,
    "total": 5,
    "totalPages": 1
  },
  "items": [
    {
      "index": 0,
      "question": "What is this product?",
      "answer": "This is a great product.",
      "comment": "Product FAQ",
      "state": "Active"
    }
  ]
}

POST /questionnaire/rag/faq-collection/item/create#

Короткий опис: Створити новий елемент FAQ.

Тіло запиту:

{
  "code": "FAQ-001",
  "index": 0,
  "question": "What is this product?",
  "answer": "This is a great product.",
  "comment": "Product FAQ",
  "state": "Active"
}

Відповідь (200):

{
  "index": 0,
  "question": "What is this product?",
  "answer": "This is a great product.",
  "comment": "Product FAQ",
  "state": "Active"
}

GET /questionnaire/rag/faq-collection/item#

Короткий опис: Отримати елемент FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.
indexqueryinteger (int32)ТакІндекс (нульовий) елементу FAQ у колекції.

Відповідь (200):

{
  "index": 0,
  "question": "What is this product?",
  "answer": "This is a great product.",
  "comment": "Product FAQ",
  "state": "Active"
}

POST /questionnaire/rag/faq-collection/item#

Короткий опис: Оновити елемент FAQ.

Тіло запиту:

{
  "code": "FAQ-001",
  "index": 0,
  "newIndex": 1,
  "question": "Updated question?",
  "answer": "Updated answer.",
  "comment": "Updated comment",
  "state": "Active"
}

DELETE /questionnaire/rag/faq-collection/item#

Короткий опис: Видалити елемент FAQ.

Параметри:

Ім’яУТипОбов’язковоОпис
codequerystringТакКод колекції.
indexqueryinteger (int32)ТакІндекс (нульовий) елементу FAQ у колекції.

RagQuery#

POST /questionnaire/rag/query#

Короткий опис: Виконати запит у RAG‑базі знань

Тіло запиту:

{
  "project": "00000000-0000-0000-0000-000000000000",
  "excludeCollections": [
    "00000000-0000-0000-0000-000000000000"
  ],
  "question": "What is this product?",
  "yourCompanyName": "Acme Corp",
  "yourCompanyAlias": "Acme",
  "customerName": "John Doe",
  "options": [
    "option1",
    "option2"
  ],
  "multiselect": false,
  "nArticles": 5,
  "nFaqs": 3,
  "threshold": 0.5,
  "debug": false,
  "withJustification": true,
  "withConfidenceLevel": true,
  "withFragments": true,
  "nAttempts": 3
}

Відповідь (200):

{
  "attempt": 1,
  "preparedQuery": {
    "original": "What is this product?",
    "enhanced": "What is this product and its features?"
  },
  "ragItems": [
    {
      "id": "00000000-0000-0000-0000-000000000000",
      "distance": 0.25
    }
  ],
  "question": "What is this product?",
  "generalInstructions": "Based on the knowledge base, here is the answer:",
  "text": "This product is a great solution for your needs.",
  "explanation": "The answer was found in multiple sources with high confidence."
}

POST /questionnaire/rag/query-stream#

Короткий опис: Виконати запит у RAG‑базі знань (стрім)

Тіло запиту:

{
  "project": "00000000-0000-0000-0000-000000000000",
  "excludeCollections": [
    "00000000-0000-0000-0000-000000000000"
  ],
  "question": "What is this product?",
  "yourCompanyName": "Acme Corp",
  "yourCompanyAlias": "Acme",
  "customerName": "John Doe",
  "options": [
    "option1",
    "option2"
  ],
  "multiselect": false,
  "nArticles": 5,
  "nFaqs": 3,
  "threshold": 0.5,
  "debug": false,
  "withJustification": true,
  "withConfidenceLevel": true,
  "withFragments": true,
  "nAttempts": 3
}

Відповідь (200):

[
  {
    "text": "This product is a great solution",
    "fragments": [
      {
        "id": "00000000-0000-0000-0000-000000000000",
        "part": 1,
        "distance": 0.25,
        "type": "Article",
        "code": "ART-001",
        "title": "Product Title",
        "fragment": "Product content fragment"
      }
    ]
  },
  {
    "text": " for your needs.",
    "fragments": []
  }
]

POST /questionnaire/rag/query-fragments#

Короткий опис: Виконати запит у RAG‑базі знань (фрагменти)

Тіло запиту:

{
  "project": "00000000-0000-0000-0000-000000000000",
  "exclude_documents": [
    "00000000-0000-0000-0000-000000000000"
  ],
  "query": "What is this product?",
  "top_k": 5,
  "similarity_threshold": 0.5,
  "prepare_query": true
}

Відповідь (200):

{
  "results": [
    {
      "document_id": "00000000-0000-0000-0000-000000000000",
      "document_code": "ART-001",
      "document_title": "Product Title",
      "revision": 3,
      "chunk_index": 0,
      "content": "Product content fragment",
      "metadata": {
        "author": "John Doe",
        "created_at": "2025-01-15T10:30:00Z",
        "last_updated_at": "2025-01-15T10:35:00Z",
        "doc_categories": [
          "Product",
          "Information"
        ]
      },
      "similarity_score": 0.85
    }
  ]
}

Пов’язані статті#

на верх
Виберіть мову