Procurize.AI REST API-ის მითითება#

პროგრამულად მიიღეთ თქვენი ცოდნის ბაზა – დოკუმენტები, კითხვარი, RAG და ანგარიშები – თქვენი API ტოკენით.

გამოყენება: Procurize.AI API v1
აუტენტიფიკაცია: API გასაღები X-API-Key ჰედერში (იხილეთ API Token-ები token-ების მართვისთვის)
ძირითადი 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"

💡 ტოკენები დაკავშირებულია თქვენს ორგანიზაციას – მოთხოვნაში ორგანიზაციის ID-ს მითითება არ არის საჭირო.

ძირითადი 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#

შეჯამება: მთავარი გვერდის შეჯამება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
projმოთხოვნაstring (uuid)არაპროექტის ID.

პასუხი (200):

{
  "active": 5
}

GET /questionnaire/rag/articles/total#

შეჯამება: სტატიის რაოდენობა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
qმოთხოვნაstringარაფილტრი სტატიის სახელზე ან კოდზე.
stateმოთხოვნაarrayარაფილტრი მდგომარეობებზე.
projectმოთხოვნაarrayარაფილტრი პროექტებზე.
typeმოთხოვნაarrayარაფილტრი დოკუმენტის ტიპებზე.

პასუხი (200):

42

GET /questionnaire/rag/articles/list#

შეჯამება: სტატიის სია

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
qმოთხოვნაstringარაფილტრი სტატიის სახელზე ან კოდზე.
stateმოთხოვნაarrayარაფილტრი მდგომარეობებზე.
projectმოთხოვნაarrayარაფილტრი პროექტებზე.
typeმოთხოვნაarrayარაფილტრი დოკუმენტის ტიპებზე.
sმოთხოვნაstringარასორტირების ველი.
ascმოთხოვნაbooleanარაზრდის მიხედვით სორტირება.
psმოთხოვნაinteger (int32)არაგვერდის ზომა.
pმოთხოვნაinteger (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#

შეჯამება: სტატიის არსებობის შემოწმება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.

პასუხი (200):

true

GET /questionnaire/rag/article-info#

შეჯამება: სტატიის ინფორმაციის მიღება კოდის მიხედვით

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.

პასუხი (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#

შეჯამება: სტატიის შინაარსის მიღება კოდის მიხედვით

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.
formatმოთხოვნაstringარათუ true, აბრუნებს HTML‑ს პასუხის სხეულში. სხვა შემთხვევაში აბრუნებს შინაარსს Markdown ფორმატში.
splitმოთხოვნაbooleanარათუ true, აბრუნებს შინაარსს RAG ელემენტებით დაყოფილი.
cssმოთხოვნაbooleanარათუ 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#

შეჯამება: სტატიის წაშლა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.

GET /questionnaire/rag/article/pdf#

შეჯამება: სტატიის მიღება PDF‑ის სახით კოდის მიხედვით

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.

პასუხი (200):

(pdf binary)

GET /questionnaire/rag/article/content#

შეჯამება: სტატიის შინაარსის მიღება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.

პასუხი (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#

შეჯამება: ნამუსის მრავლობითის მიღება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
nounმოთხოვნაstringარანამუსი, რომლის მრავლობითიც გსურთ.

პასუხი (200):

{
  "plural": "Articles"
}

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

შეჯამება: სტატიის AI‑ით ანალიზი და ტიპების დაბრუნება

მოთხოვნის სხეული (multipart/form-data):

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

პასუხი (200):

[
  {
    "plural": "Types"
  }
]

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

შეჯამება: სტატიის შინაარსის ფორმატირება 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#

შეჯამება: სტატიის ნაწილების სია

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
idმოთხოვნაarrayდიახსტატიის ნაწილების ID‑ები.

პასუხი (200):

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

GET /questionnaire/rag/article/revisions#

შეჯამება: სტატიის რევიზიების სია

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.

პასუხი (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)დიახრევიზიის ID.

პასუხი (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)დიახრევიზიის ID.

პასუხი (200):

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

GET /questionnaire/rag/article/analyze#

შეჯამება: სტატიის შინაარსის AI‑ით ანალიზი

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახსტატიის კოდი.
revმოთხოვნაinteger (int32)არარევიზიის ნომერი.
forceმოთხოვნაbooleanარაახალი ანალიზის შექმნა ძალით, წინა არასრულყოფილი შედეგის წაშლა, თუ არსებობს.

პასუხი (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)დიახანალიზის ID.

პასუხი (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#

შეჯამება: ყველა შეტყობინების სია

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
idმოთხოვნაstring (uuid)დიახRAG კოლექციის ID.
itemმოთხოვნაstring (uuid)არაRAG ელემენტის ID.
messageმოთხოვნაstring (uuid)არაშეტყობინების ID.
ascმოთხოვნაbooleanარაზრდის მიხედვით სორტირება.
psმოთხოვნაinteger (int32)არაგვერდის ზომა.
pმოთხოვნაinteger (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#

შეჯამება: ახალი შეტყობინების დამატება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
idმოთხოვნაstring (uuid)დიახRAG კოლექციის ID.
itemმოთხოვნაstring (uuid)არაRAG ელემენტის ID.
messageმოთხოვნაstring (uuid)არაპასუხის შეტყობინების ID.

მოთხოვნის სხეული:

{
  "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#

შეჯამება: არსებული შეტყობინების განახლება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
cმოთხოვნაstring (uuid)დიახRAG კოლექციის ID.
idმოთხოვნაstring (uuid)დიახშეტყობინების ID.

მოთხოვნის სხეული:

{
  "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#

შეჯამება: არსებული შეტყობინების წაშლა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
idმოთხოვნაstring (uuid)დიახშეტყობინების ID.

პასუხი (200):

{}

RagFaq#

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

შეჯამება: მთავარი გვერდის შეჯამება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
projმოთხოვნაstring (uuid)არაპროექტის ID.

პასუხი (200):

{
  "active": 3
}

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

შეჯამება: FAQ კოლექციების რაოდენობა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
qმოთხოვნაstringარაკოლექციის სახელის ან კოდის ფილტრი.
stateმოთხოვნაarrayარამდგომარეობის ფილტრი.
projectმოთხოვნაarrayარაპროექტის ფილტრი.

პასუხი (200):

3

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

შეჯამება: FAQ კოლექციების სია

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
qმოთხოვნაstringარაკოლექციის სახელის ან კოდის ფილტრი.
stateმოთხოვნაarrayარამდგომარეობის ფილტრი.
projectმოთხოვნაarrayარაპროექტის ფილტრი.
sმოთხოვნაstringარასორტირების ველი.
ascმოთხოვნაbooleanარაზრდის მიხედვით სორტირება.
psმოთხოვნაinteger (int32)არაგვერდის ზომა.
pმოთხოვნაinteger (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 ელემენტების ძიება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
qმოთხოვნაstringდიახკითხვაზე ფილტრი.
projectმოთხოვნაstring (uuid)არაპროექტის ფილტრი.
psმოთხოვნაinteger (int32)არაგვერდის ზომა.
pმოთხოვნაinteger (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 კოლექციის წაშლა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.

GET /questionnaire/rag/faq-collection#

შეჯამება: FAQ კოლექციის მიღება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.

პასუხი (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 კოლექციის არსებობის შემოწმება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.

პასუხი (200):

true

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

შეჯამება: FAQ ელემენტების რაოდენობა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.
qმოთხოვნაstringარაFAQ ელემენტის შინაარსის ფილტრი.

მოთხოვნის სხეული:

["Active", "Default"]

პასუხი (200):

5

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

შეჯამება: FAQ ელემენტების სია

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.
qმოთხოვნაstringარაFAQ ელემენტის შინაარსის ფილტრი.
stateმოთხოვნაarrayარამდგომარეობის ფილტრი.
sმოთხოვნაstringარასორტირების ველი.
ascმოთხოვნაbooleanარაზრდის მიხედვით სორტირება.
psმოთხოვნაinteger (int32)არაგვერდის ზომა.
pმოთხოვნაinteger (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 ელემენტის მიღება

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.
indexმოთხოვნაinteger (int32)დიახელემენტის ნულოვანი ინდექსი კოლექციაში.

პასუხი (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 ელემენტის წაშლა

პარამეტრები:

სახელისადტიპისაჭიროააღწერა
codeმოთხოვნაstringდიახკოლექციის კოდი.
indexმოთხოვნაinteger (int32)დიახელემენტის ნულოვანი ინდექსი კოლექციაში.

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
    }
  ]
}

დაკავშირებული სტატია#

ზემოთ
აირჩიეთ ენა