통화 조회
인증된 조직의 통화 1건을 조회합니다.
Authorizations
조직 API 키를 Authorization: Bearer <token> 형식으로 보냅니다.
Path Parameters
통화 ID입니다.
Response
성공 응답
v3 단건 통화 응답. transcript 포함.
AI 원장 순수성 (Operator-Call Split §7.1): 이 응답은 AI 구간만 담는다 —
transcript/analysis에 operator 발화는 구조적으로 없다. 사람 상담 구간은
operator-control이 소유한다. takeover.operator_call_id는 그 구간의
opaque join key이며, 이 API의 조회 path가 아니다.
통화의 고유 식별자입니다.
agent_id와 agent_version으로 구성된 에이전트 매핑 객체입니다.
통화 유형. 'web'/'phone'/'inbound'/'outbound'/'api' 중 하나.
web, phone, inbound, outbound, api 통화 상태입니다. 값 의미와 전이 규칙은 CallStatusV3Enum 정의를 참고합니다.
queued, ongoing, ended, error, canceled, not_connected 서버가 귀속한 고객 UUID입니다. 아직 고객 귀속이 완료되지 않았거나 귀속 대상이 없으면 null입니다.
통화가 속한 캠페인의 정수 문자열 id. 캠페인 미소속이면 null입니다.
발신 번호. 하이픈 없는 국내 번호 (예: '01012345678'). 웹 통화 등은 null.
수신 번호. 하이픈 없는 국내 번호.
수신자에게 표시할 발신 번호. 조직이 사전 등록·승인한 번호 (telephone_presentation_numbers). 미지정 시 null.
통화 종료 사유. 진행 중이면 null.
user_hangup, agent_hangup, dial_no_answer, dial_failed, dial_busy, voicemail_reached, concurrency_limit_reached, insufficient_balance, error_voxai, max_duration_reached, inactivity, flow_error, call_transfer, orphaned_no_agent_pickup, dial_declined, daily_call_limit_reached, hourly_call_limit_reached, blocked_number, operator_hangup 통화가 시작된 시각 (unix ms). 통화가 아직 시작되지 않았으면 null.
통화가 종료된 시각 (unix ms). 통화가 아직 종료되지 않았으면 null.
녹음 파일 URL. 녹음 없거나 옵트아웃이면 null.
요청 시 전달된 정적 메타데이터를 그대로 반환합니다.
요청 시 전달된 동적 변수를 그대로 반환합니다.
통화 분석 결과입니다(요약, 감정, 사용자 정의 분석). 분석 완료 전에는 null입니다.
통화 비용입니다(KRW 원 단위, Decimal 문자열). 계산 완료 전에는 null입니다.
Traffic split variant label. Split 미사용/우회/폴백 통화는 null.
민감정보 저장 거부 여부. true면 transcript/recording/analysis null.
통화 대화록 (통합 리스트, AI 구간 전용). 항목 role 3종:
- 'agent'/'user': {role, content, start_at?, end_at?}
- 'tool_call_invocation': {role, tool_call_id, name, arguments}
- 'tool_call_result': {role, tool_call_id, content} 옵트아웃 시 null.
이어받기 블록. call_transfer와 matching operator web relation으로 파생. 사람 구간 대화/지표는 이 응답에 없다. operator_call_id는 operator-control 원장의 opaque join key이며 api-server public path가 아니다.
통화 구간 목록 (mode 'ai'|'human'). 이어받기 없는 콜은 ai 1구간. hold gap(dormancy→COMMIT)은 구간 사이 공백으로 표현.
'ai' | 'operator'. matching committed operator call 존재로 파생하며 bare call_transfer는 operator로 분류하지 않음. null이면 판정 불가(attribution 조회 일시 실패) — 정본은 operator call 리소스이므로 재조회로 복원 가능.