스레드 API¶
이 API를 사용하여 Cortex Agent와 상호 작용하는 데 사용되는 스레드를 만듭니다.
스레드 만들기¶
POST /api/v2/cortex/threads
새 스레드를 만들고 스레드 UUID를 반환합니다.
요청¶
헤더 요청¶
헤더 |
설명 |
|---|---|
|
(필수) 승인 토큰. 자세한 내용은 인증 섹션을 참조하십시오. |
|
(필수) 애플리케이션/json |
요청 본문¶
요청 본문에는 다음 필드가 포함될 수 있습니다.
필드 |
타입 |
설명 |
|---|---|---|
|
문자열 |
(선택 사항) 스레드를 생성한 애플리케이션의 이름입니다. 애플리케이션별로 스레드를 그룹화할 수 있습니다. 16바이트로 제한됩니다. |
예:
{
"origin_application": "my_app"
}
응답¶
스레드 UUID를 문자열로 반환합니다.
"1234567890"
스레드 설명¶
GET /api/v2/cortex/threads/{id}
스레드를 설명하고 page_size 및 last_message_id를 기준으로 해당 스레드의 메시지 배치를 생성 날짜 내림차순으로 반환합니다. 이 요청은 스레드 ID가 사용자에게 속하는 경우에만 성공합니다.
요청¶
경로 매개 변수¶
매개 변수 |
타입 |
설명 |
|---|---|---|
|
정수 |
(필수) 스레드의 UUID입니다. |
쿼리 매개 변수¶
매개 변수 |
타입 |
설명 |
|---|---|---|
|
정수 |
(선택 사항) 반환할 메시지 수(기본값: 20, 최대: 100)입니다. |
|
정수 |
(선택 사항) 마지막으로 수신된 메시지의 ID입니다. 다음 배치의 오프셋을 설정하는 데 사용됩니다. 메시지의 첫 번째 배치인 경우 비워 둘 수 있습니다. |
헤더 요청¶
헤더 |
설명 |
|---|---|
|
(필수) 승인 토큰. |
|
(필수) 애플리케이션/json |
응답¶
스레드 메타데이터 오브젝트와 메시지 배열을 반환합니다.
필드 |
타입 |
설명 |
|---|---|---|
오브젝트 |
이름, 스레드를 생성한 애플리케이션, 생성된 시간을 포함하는 스레드의 메타데이터입니다. |
|
|
배열 |
메시지 오브젝트의 배열입니다. |
metadata¶
필드 |
타입 |
설명 |
|---|---|---|
|
정수 |
스레드의 UUID입니다. |
|
문자열 |
스레드의 이름입니다. |
|
문자열 |
스레드를 생성한 애플리케이션의 이름입니다. |
|
정수 |
스레드가 생성된 시간(UNIX Epoch 이후, 밀리초)입니다. |
|
정수 |
스레드가 마지막으로 업데이트된 시간(UNIX Epoch 이후, 밀리초)입니다. 업데이트에는 스레드에 새 메시지를 추가하는 작업이 포함됩니다. |
메시지¶
필드 |
타입 |
설명 |
|---|---|---|
|
정수 |
메시지의 UUID입니다. |
|
정수 |
상위 메시지의 UUID입니다. |
|
정수 |
메시지가 생성된 시간(UNIX Epoch 이후, 밀리초)입니다. |
|
문자열 |
이 메시지를 생성한 역할입니다. |
|
문자열 |
메시지 페이로드입니다. |
|
문자열 |
원본 메시지의 요청 ID입니다. |
예:
{
"metadata": {
"thread_id": 1234567890,
"thread_name": "Support Chat",
"origin_application": "my_app",
"created_on": 1717000000000,
"updated_on": 1717000100000
},
"messages": [
{
"message_id": 1,
"parent_id": null,
"created_on": 1717000000000,
"role": "user",
"message_payload": "Hello, I need help.",
"request_id": "req_001"
},
{
"message_id": 2,
"parent_id": 1,
"created_on": 1717000001000,
"role": "assistant",
"message_payload": "How can I assist you?",
"request_id": "req_002"
}
]
}
스레드 업데이트¶
POST /api/v2/cortex/threads/{id}
스레드를 업데이트합니다.
요청¶
경로 매개 변수¶
매개 변수 |
타입 |
설명 |
|---|---|---|
|
정수 |
(필수) 스레드의 UUID입니다. |
헤더 요청¶
헤더 |
설명 |
|---|---|
|
(필수) 승인 토큰. |
|
(필수) 애플리케이션/json |
요청 본문¶
필드 |
타입 |
설명 |
|---|---|---|
|
문자열 |
(선택 사항) 스레드의 이름입니다. |
예:
{
"thread_name": "New Thread Name"
}
응답¶
스레드 업데이트의 상태를 반환합니다.
{"status": "Thread xxxx successfully updated."}
스레드 나열¶
GET /api/v2/cortex/threads
사용자에게 속한 모든 스레드를 나열합니다.
요청¶
쿼리 매개 변수¶
매개 변수 |
타입 |
설명 |
|---|---|---|
|
문자열 |
(선택 사항) 이 원본 애플리케이션을 기준으로 스레드 목록을 필터링합니다. 이 필드를 지정하지 않으면 모든 스레드가 반환됩니다. |
헤더 요청¶
헤더 |
설명 |
|---|---|
|
(필수) 승인 토큰. |
|
(필수) 애플리케이션/json |
응답¶
스레드 메타데이터 오브젝트의 배열을 반환합니다.
스레드 메타데이터¶
필드 |
타입 |
설명 |
|---|---|---|
|
정수 |
스레드의 UUID입니다. |
|
문자열 |
스레드의 이름입니다. |
|
문자열 |
스레드를 생성한 애플리케이션의 이름입니다. |
|
정수 |
스레드가 생성된 시간(UNIX Epoch 이후, 밀리초)입니다. |
|
정수 |
스레드가 마지막으로 업데이트된 시간(UNIX Epoch 이후, 밀리초)입니다. 업데이트에는 스레드에 새 메시지를 추가하는 작업이 포함됩니다. |
예:
[
{
"thread_id": 1234567890,
"thread_name": "Support Chat",
"origin_application": "my_app",
"created_on": 1717000000000,
"updated_on": 1717000100000
}
]
스레드 삭제¶
DELETE /api/v2/cortex/threads/{id}
스레드와 해당 스레드의 모든 메시지를 삭제합니다.
요청¶
경로 매개 변수¶
매개 변수 |
타입 |
설명 |
|---|---|---|
|
정수 |
(필수) 스레드의 UUID입니다. |
헤더 요청¶
헤더 |
설명 |
|---|---|
|
(필수) 승인 토큰. |
|
(필수) 애플리케이션/json |
응답¶
스레드가 삭제되면 성공 응답을 반환합니다.
{
"success": true
}