# Mrcs

MRC related APIs

## 문서 검색 유저 피드백

> 문서 검색 결과에 유저 피드백 제공.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"mrcs","description":"MRC related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/mrc/user_feedback":{"post":{"tags":["mrcs"],"operationId":"registerMrcUserFeedback","summary":"문서 검색 유저 피드백","description":"문서 검색 결과에 유저 피드백 제공.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["answerHash","answer","id","query"],"properties":{"answerHash":{"type":"string","description":"쿼리에 대해 피드백을 주거나 취소하려는 문서 검색 결과의 ID입니다. 이는 문서 검색이 발생할 때마다 생성되며 쿼리와 답변 쌍에 바인딩됩니다. 위의 문서 API를 사용하여 검색할 수 있습니다."},"answer":{"type":"string","description":"이 문서로부터 당신의 질문에 받은 답변."},"id":{"type":"string","description":"답변이 추출된 문서의 ID입니다."},"positive":{"type":"boolean","nullable":true,"description":"값이 true일 때는 추출된 답변에 대해 긍정적인 피드백을 줍니다. 값이 false일 때는 부정적인 피드백을 줍니다. 값이 null일 때는 피드백을 취소합니다."},"query":{"type":"string","description":"추출된 검색 결과에 대해 피드백을 주거나 취소하려는 쿼리."}}}}}},"responses":{"200":{"description":"피드백이 성공적으로 제출되었습니다.","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"userFeedback":{"type":"object","properties":{"positiveCount":{"type":"integer","description":"요청이 처리된 후 긍정적인 피드백의 총 수."},"negativeCount":{"type":"integer","description":"요청 처리 후 부정적인 피드백의 총 수."}}}}}}}}}}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```

## 문서 피드백

> 이 API는 각 검색 쿼리에 대해 문서 검색 결과(업로드된 문서에서 AI가 추출한 답변)에 제공된 피드백 목록을 얻을 수 있게 해줍니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"mrcs","description":"MRC related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/mrc_feedbacks":{"get":{"tags":["mrcs"],"operationId":"mrcFeedbacks","summary":"문서 피드백","description":"이 API는 각 검색 쿼리에 대해 문서 검색 결과(업로드된 문서에서 AI가 추출한 답변)에 제공된 피드백 목록을 얻을 수 있게 해줍니다.","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer"},"description":"offset allows you to specify the ranking number of the first item on the page."},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"},"description":"limit allows you to set the number of objects returned on one page. The maximum value is 100."}],"responses":{"200":{"description":"MRC 피드백이 성공적으로 검색되었습니다","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"array","items":{"type":"object","properties":{"query":{"type":"string","description":"추출된 답변에 대한 검색 쿼리."},"feedbacks":{"type":"array","items":{"type":"object","properties":{"document_id":{"type":"string","description":"답변이 추출된 문서의 ID."},"answer":{"type":"string","description":"질문에 대한 문서에서 추출된 답변 부분."},"answer_hash":{"type":"string","description":"쿼리에 대한 문서에서 추출된 답변 부분의 ID입니다. 문서 검색이 발생할 때마다 생성되며, 쿼리와 답변 쌍에 바인딩됩니다. 이는 위의 POST Documents API의 값과 동일합니다."},"positive":{"type":"boolean","description":"True 또는 False. True은 추출된 답변이 검색 시 긍정적인 피드백을 받았음을 나타내고, False은 부정적인 피드백을 나타냅니다."}}}}}}},"count":{"type":"integer","description":"나열된 피드백의 총 수."}}}}}}}}}}}
```

## 문서 검색 피드백

> 이 API는 검색 쿼리에 대한 문서 검색 결과에 제공된 피드백을 제공하거나 취소할 수 있습니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"mrcs","description":"MRC related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/mrc_feedback":{"post":{"tags":["mrcs"],"operationId":"mrcFeedback","summary":"문서 검색 피드백","description":"이 API는 검색 쿼리에 대한 문서 검색 결과에 제공된 피드백을 제공하거나 취소할 수 있습니다.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["query","id","answerHash"],"properties":{"query":{"type":"string","description":"추출된 검색 결과에 대한 피드백을 주거나 취소하려는 쿼리입니다."},"id":{"type":"string","description":"답변이 추출된 문서의 ID입니다."},"answerHash":{"type":"string","description":"쿼리에 대해 피드백을 주거나 취소하려는 문서 검색 결과의 ID입니다. 이는 문서 검색이 발생할 때마다 생성되며, 쿼리와 답변 쌍에 매칭됩니다. 위의 문서 API를 사용하여 가져올 수 있습니다."},"isPositive":{"type":"boolean","nullable":true,"description":"값이 true일 때, 쿼리에 대한 추출된 답변에 긍정적인 피드백이 제공됩니다. false일 때는 부정적인 피드백이 제공됩니다. null일 때는 피드백이 취소됩니다."}}}}}},"responses":{"200":{"description":"피드백이 성공적으로 제출되었습니다.","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"mrcFeedbackSearchResult":{"type":"object","properties":{"agentFeedback":{"type":"object","properties":{"positiveCount":{"type":"integer","description":"요청이 처리된 후 긍정적인 피드백의 총 수."},"negativeCount":{"type":"integer","description":"요청이 처리된 후의 총 부정적인 피드백 수."}}}}}}},"errors":{"type":"object","nullable":true}}}}}}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```

## 문서 쿼리 기록

> REST API와 Alli 대시보드를 통해 수행된 과거 문서 검색 결과를 반환합니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"mrcs","description":"MRC related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/mrc_histories":{"get":{"tags":["mrcs"],"operationId":"mrcHistories","summary":"문서 쿼리 기록","description":"REST API와 Alli 대시보드를 통해 수행된 과거 문서 검색 결과를 반환합니다.","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"name":"searchTerm","in":"query","required":false,"schema":{"type":"string"},"description":"역사를 얻고자 하는 가장 초기 날짜 (날짜는 YYYY-MM-DD 형식이어야 합니다)"},{"name":"order","in":"query","required":false,"schema":{"type":"string"},"description":"표시할 결과 수에 대한 제한 (페이지 네비게이션에 사용됨)"},{"name":"endDate","in":"query","required":false,"schema":{"type":"string"},"description":"모든 결과 목록에서 결과를 나열하기 시작할 인덱스(페이지 나누기에 사용)"},{"name":"startDate","in":"query","required":false,"schema":{"type":"string"},"description":"The earliest date from which you want to get history (dates should be in the form YYYY-MM-DD)"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer"},"description":"A limit on the number of results to show (used for pagination)"},{"name":"offset","in":"query","required":false,"schema":{"type":"integer"},"description":"In the list of all results, the index from which to start listing results (used for pagination)"}],"responses":{"200":{"description":"성공적인 대응","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"histories":{"type":"array","items":{"type":"object","properties":{"agent":{"type":"object","properties":{"id":{"type":"string","description":"요청을 한 에이전트의 ID"}}},"question":{"type":"string","description":"실제로 묻는 질문"},"answers":{"type":"array","items":{"type":"object","properties":{"knowledgeBase":{"type":"object","properties":{"id":{"type":"string","description":"답변의 출처로 사용된 지식베이스의 ID"},"fileName":{"type":"string","description":"답변의 출처로 사용된 지식베이스의 파일 이름"}}},"answer":{"type":"string","description":"실제 답변 내용, answerFormat에 따라 형식화됨"},"answerHash":{"type":"string","description":"True조용 답변의 해시"},"answerFormat":{"type":"string","description":"답변의 형식 (예: DRAFTJS)"},"hashtags":{"type":"array","items":{"type":"string"},"description":"지식베이스과 관련된 해시태그"},"feedbackAvailable":{"type":"boolean","description":"이 답변에 대한 피드백을 제공할 수 있는지 여부"},"columnFilterValues":{"type":"array","items":{"type":"string"},"description":"답변과 관련된 모든 열 필터 값"}}}}}}},"count":{"type":"integer","description":"반환된 쿼리 기록의 총 수"}}},"errors":{"type":"object","nullable":true,"description":"요청 실패 시 오류 정보"}}}}}}}}}}}
```
