에이전트 상태 API 엔드포인트는 에이전트 상태 객체에 대한 액세스를 제공합니다. 고객센터 AI Platform (CCAI Platform)에서 구성되고 에이전트 권한이 포함된 역할이 있는 각 사용자에 대해 에이전트 객체가 생성됩니다.
다음은 에이전트 상태 API 엔드포인트입니다.
상담사 상태 엔드포인트를 사용하면 상담사의 상태를 수정할 수 있습니다. 사용 가능에서 맞춤 상태로 변경할 수 있습니다. 통화 중과 같은 시스템 정의 상태로 전환하거나 이러한 상태에서 전환하면 오류가 트리거됩니다. 또한 이러한 엔드포인트는 일괄 업데이트를 지원하므로 전체 팀 또는 선택한 상담사 그룹의 상태를 동시에 수정할 수 있습니다.
상담사 상태 업데이트
이 엔드포인트를 사용하면 상담사의 상태를 업데이트할 수 있습니다. 다음 표에는 JSON 본문의 속성이 표시되어 있습니다.
| 속성 | 필수 | 데이터 유형 | 정의 |
|---|---|---|---|
| 상태 | TRUE | 문자열 | 상담사를 설정할 상태입니다(예: available). |
| agent_ids | TRUE | 배열 정수 | 에이전트 ID의 배열입니다. |
| team_ids | TRUE | 배열 정수 | 팀 ID의 배열입니다. |
엔드포인트:
Method: POST
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses
헤더:
| 키 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json |
본문:
{
"status": "Available",
"agent_ids": [
11,
12
],
"team_ids": []
}
요청 및 응답 예시
다음 섹션에서는 엔드포인트에 대한 요청의 예를 제공합니다.
상담사 상태를 변경합니다.
다음 예에서는 작업이 성공한 경우 일부 상담사의 상태를 변경하는 요청과 관련 응답을 보여줍니다.
요청
헤더:
| 키 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json |
본문:
{
"status": "Available",
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
응답:
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"previous_status": "lunch",
"current_status": "Available"
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"previous_status": "In-call",
"current_status": "In-call",
"message": "Agent can't be changed from system status 'In-call'"
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"previous_status": "Offline",
"current_status": "Offline",
"message": "Agent's status can't be changed if they are offline or logged out"
}
]
상태 코드: 200
상태가 존재하지 않음
이 예시에서는 제공된 상태가 존재하지 않아 잘못된 것으로 간주되는 요청과 관련 응답을 보여줍니다.
요청
헤더:
| 키 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json |
본문:
Body
{
"status": "Napping",
"agent_ids": [
11,
12
],
"team_ids": []
}
대답: 오류: '낮잠' 상태가 존재하지 않음
{
"message": "status 'Napping' does not exist"
}
상태 코드: 400
상태가 시스템 상태로 설정됨
이 예에서는 상태가 시스템 상태(이 경우 '통화 중')로 설정된 요청과 응답을 보여줍니다. 상담사의 상태를 시스템에서 관리하는 상태로 설정할 수 없습니다.
요청
헤더:
| 키 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json |
본문:
Body
{
"status": "In-call",
"agent_ids": [
11,
12
]
}
응답: 오류: 에이전트를 시스템 상태'통화 중 '으로 변경할 수 없음
{
"message": "Agent can't be changed to system status 'In-call'"
}
상태 코드: 400
상담사 상태 가져오기
이 엔드포인트를 사용하면 에이전트의 상태를 가져올 수 있습니다. 다음 표에는 JSON 본문의 속성이 표시되어 있습니다.
| 속성 | 필수 | 데이터 유형 | 정의 |
|---|---|---|---|
| 상태 | TRUE | 문자열 | 상담사를 설정할 상태입니다(예: available). |
| agent_ids | FALSE | 배열 정수 | 에이전트 ID의 배열입니다. |
| team_ids | FALSE | 배열 정수 | 팀 ID의 배열입니다. |
엔드포인트:
Method: GET
Type: RAW
URL: https://{subdomain}.{domain}/apps/api/v1/agent_statuses
헤더:
| 키 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json |
본문:
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
요청 및 응답 예시
다음 섹션에서는 엔드포인트에 대한 요청의 예를 제공합니다.
특정 상담사 및 팀의 상태 가져오기
이 예시에서는 ID가 11과 12인 상담사와 ID가 1인 팀의 상담사의 상태를 가져오는 방법을 보여줍니다.
요청
헤더:
| 키 | 값 | 설명 |
|---|---|---|
| Content-Type | application/json |
본문:
{
"agent_ids": [
11,
12
],
"team_ids": [
1
]
}
응답: 요청된 에이전트의 상태
[
{
"agent_id": 11,
"name": "Darth Vader",
"email": "notanakinskywalker@empire.com",
"agent_number": "Agent No.111",
"status": "lunch",
"ip_addrs": [
"34.211.11.101"
]
},
{
"agent_id": 12,
"name": "Craig T",
"email": "craigT@nelson.com",
"agent_number": "Agent No.112",
"status": "In-call",
"ip_addrs": [
"34.211.11.102"
]
},
{
"agent_id": 13,
"name": "Raymond D",
"email": "rayd@nelson.com",
"agent_number": "Agent No.113",
"status": "Offline",
"ip_addrs": [
"34.211.11.103"
]
}
]
상태 코드: 200