본문으로 건너뛰기
버전: 최신 버전

Client Flow

대화형 아바타 세션을 시작하고 관리하는 전체 흐름은 다음과 같습니다.

Prerequisites

Interactive Avatar > Avatars 에서 아바타를 생성한 후 아바타 ID를 복사합니다. 이 ID는 Start Session API에서 사용됩니다.

Core Session Flow

  1. Create Session Token: POST /api/v2/sessions/token
  • appId + userKey 전달
  • session_token 수신
  1. Start Session POST /api/v2/sessions/start
    • Bearer token으로 인증
    • session_id, livekit 정보 수신
  2. LiveKit 연결
    • livekit.url + livekit.token으로 WebRTC 연결
    • 아바타의 영상/음성 스트리밍 수신 시작
  3. Talk: POST /api/v2/sessions/{sessionId}/talk
    • 사용자 메시지 전송
    • 아바타가 메시지를 발화
    • greeting_text를 설정했으면 자동으로 첫 메시지 전송
  4. Stop Session: POST /api/v2/sessions/stop
    • STUDIO-API-KEY 헤더 사용
    • 세션 종료 및 과금 정지

Optional APIs

  • List Sessions: GET /api/v2/sessions 활성/종료된 세션 목록 조회 (대시보드용)
  • Get Session Detail: GET /api/v2/sessions/{sessionId} 특정 세션의 상세 정보 조회

Response Format

API 요청에 대한 응답코드와 데이터, 메세지의 형태를 가집니다. 성공과 에러 모두 동일한 형태를 사용합니다.

{
"code": 1000,
"data": {},
"message": "사람이 읽을 수 있는 메시지"
}
이름타입설명
codenumber애플리케이션의 상태코드
dataObject | null성공시 payload
messagestring로그/UI용 메시지

Error Codes

모든 API 응답은 성공 여부와 상관없이 HTTP 상태 코드와 응답 본문의 code 값으로 결과를 나타냅니다. 다음은 API에서 사용되는 공통 에러 코드입니다.

codeHTTP의미
4000400 / 422검증 실패 / 잘못된 입력
4010401토큰 또는 자격증명 오류
4030403권한 없음
4040404리소스 없음
4290429레이트 리밋
5000500내부/서비스 오류