🎉 vox.ai 디스코드 커뮤니티가 새로 열렸어요! 참여하기 →
아웃바운드 통화를 생성합니다. 발신 번호에 활성 traffic split 정책이 없을 때만 agent를 직접 지정할 수 있습니다.
curl --request POST \
--url https://client-api.tryvox.co/v3/calls \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"from_number": "07011112222",
"to_number": "01012345678",
"agent": {
"agent_id": "7f3e9c12-4a8b-4d5e-9f1a-2b3c4d5e6f7a",
"agent_version": "current"
},
"dynamic_variables": {
"customer_name": "홍길동",
"appointment_at": "2026-05-10 14:00"
},
"metadata": {
"crm_lead_id": "lead_a1b2c3"
}
}
'{
"id": "<string>",
"agent": {
"agent_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"agent_version": "current"
},
"call_type": "web",
"status": "queued",
"from_number": "<string>",
"to_number": "<string>",
"presentation_number": "<string>",
"disconnection_reason": "user_hangup",
"start_at": 123,
"end_at": 123,
"recording_url": "<string>",
"metadata": {},
"dynamic_variables": {},
"call_analysis": {
"summary": "<string>",
"user_sentiment": "positive",
"custom_analysis_data": [
{}
]
},
"call_cost": {
"total_cost": "<string>"
},
"variant_label": "<string>",
"opt_out_sensitive_data_storage": false,
"transcript": [
{}
]
}Documentation Index
Fetch the complete documentation index at: https://docs.tryvox.co/llms.txt
Use this file to discover all available pages before exploring further.
조직 API 키를 Authorization: Bearer <token> 형식으로 보냅니다.
아웃바운드 통화 생성 요청입니다. 에이전트를 직접 지정하려면 agent를 보냅니다. 발신 번호에 활성 traffic split 정책이 있으면 agent를 생략합니다.
v3 아웃바운드 통화 생성 요청.
발신 번호. 하이픈 없는 국내 번호 (예: '01012345678'). libphonenumber 검증.
수신 번호. 하이픈 없는 국내 번호 (예: '01098765432').
agent_id와 agent_version으로 구성된 에이전트 매핑 객체입니다.
Show child attributes
자유 형식 메타데이터입니다. 응답에서 그대로 반환합니다.
에이전트 프롬프트에 주입할 동적 변수. {{변수명}} 치환.
수신자에게 표시할 번호. 조직 승인 번호만 허용. 미지정은 null.
성공 응답
v3 단건 통화 응답. transcript 포함.
통화의 고유 식별자입니다.
agent_id와 agent_version으로 구성된 에이전트 매핑 객체입니다.
Show child attributes
통화 유형. 'web'/'phone'/'inbound'/'outbound'/'api' 중 하나.
web, phone, inbound, outbound, api 통화 상태입니다. 값 의미와 전이 규칙은 CallStatusV3Enum 정의를 참고합니다.
queued, ongoing, ended, error, canceled, not_connected 발신 번호. 하이픈 없는 국내 번호 (예: '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 통화가 시작된 시각 (unix ms). 통화가 아직 시작되지 않았으면 null.
통화가 종료된 시각 (unix ms). 통화가 아직 종료되지 않았으면 null.
녹음 파일 URL. 녹음 없거나 옵트아웃이면 null.
요청 시 전달된 정적 메타데이터를 그대로 반환합니다.
요청 시 전달된 동적 변수를 그대로 반환합니다.
통화 분석 결과입니다(요약, 감정, 사용자 정의 분석). 분석 완료 전에는 null입니다.
Show child attributes
통화 비용입니다(KRW 원 단위, Decimal 문자열). 계산 완료 전에는 null입니다.
Show child attributes
Traffic split variant label. Split 미사용/우회/폴백 통화는 null.
민감정보 저장 거부 여부. true면 transcript/recording/analysis null.
통화 대화록 (통합 리스트). 항목 role 3종:
Was this page helpful?
curl --request POST \
--url https://client-api.tryvox.co/v3/calls \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"from_number": "07011112222",
"to_number": "01012345678",
"agent": {
"agent_id": "7f3e9c12-4a8b-4d5e-9f1a-2b3c4d5e6f7a",
"agent_version": "current"
},
"dynamic_variables": {
"customer_name": "홍길동",
"appointment_at": "2026-05-10 14:00"
},
"metadata": {
"crm_lead_id": "lead_a1b2c3"
}
}
'{
"id": "<string>",
"agent": {
"agent_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"agent_version": "current"
},
"call_type": "web",
"status": "queued",
"from_number": "<string>",
"to_number": "<string>",
"presentation_number": "<string>",
"disconnection_reason": "user_hangup",
"start_at": 123,
"end_at": 123,
"recording_url": "<string>",
"metadata": {},
"dynamic_variables": {},
"call_analysis": {
"summary": "<string>",
"user_sentiment": "positive",
"custom_analysis_data": [
{}
]
},
"call_cost": {
"total_cost": "<string>"
},
"variant_label": "<string>",
"opt_out_sensitive_data_storage": false,
"transcript": [
{}
]
}