본문으로 건너뛰기
버전: 0.67.0

게스트 등록 프로세스 가이드

이 문서는 게스트 사용자 등록 전체 프로세스를 설명합니다. 게스트 등록은 정식 회원가입보다 간소화된 절차로, 약관 동의만으로 임시 계정을 발급받아 서비스를 체험할 수 있습니다.

개요​

게스트 등록 프로세스는 다음과 같은 주요 단계로 구성됩니다:

  1. 앱 보안 인증: 모든 API 호출 전에 클라이언트 앱의 유효성을 검증합니다. (앱 인증 가이드)
  2. 약관 목록 조회: 사용자에게 제시될 약관 목록을 가져옵니다. (약관 동의 API 레퍼런스)
  3. 게스트 등록: 약관 동의 정보와 디바이스 정보를 포함하여 게스트 계정을 생성합니다. (게스트 등록 API 레퍼런스)
  4. 게스트 로그인: 등록 완료 후 별도의 로그인 API를 호출하여 토큰을 발급받습니다. (게스트 로그인 API 레퍼런스)

중요: 게스트 등록 프로세스의 모든 단계는 사용자 로그인 전 상태에서 진행되므로, 각 API 호출 시 앱 보안 인증을 통해 발급받은 appToken을 Authorization: Bearer {appToken} 헤더에 포함하여 요청해야 합니다.

상세 흐름 (Sequence Diagram)​

등록과 로그인 분리​

게스트 등록 프로세스는 정식 회원가입과 동일한 패턴으로 등록(Register)과 로그인(Login)이 분리되어 있습니다:

단계API응답
등록POST /v1/auth/guest/register{ "success": true }
로그인POST /v1/auth/guest/login토큰, 사용자 정보, 권한 등

클라이언트 구현 예시​

// 1. 게스트 등록
const registerResponse = await fetch('/v1/auth/guest/register', {
method: 'POST',
headers: { 'Authorization': `Bearer ${appToken}` },
body: JSON.stringify({
agreements: [...],
device: { uuid: 'device-uuid' },
profile: { language: 'ko-KR', timezone: { id: 'Asia/Seoul', offsetInMinutes: 540 } }
})
});

if (registerResponse.ok) {
// 2. 등록 성공 후 로그인
const loginResponse = await fetch('/v1/auth/guest/login', {
method: 'POST',
headers: { 'Authorization': `Bearer ${appToken}` },
body: JSON.stringify({
device: { uuid: 'device-uuid' }
})
});

const { tokens, user, profile, roles, permissions } = await loginResponse.json();
// 토큰 저장 및 세션 시작
}

주요 제약 조건​

  • 약관 동의: 필수 약관 항목에 모두 동의해야 합니다.
  • 디바이스 정보: 디바이스 UUID는 필수이며, 등록과 로그인에 동일한 UUID를 사용해야 합니다.
  • 게스트 계정 제한: 게스트 계정은 제한된 신원 수준(Identity Level: GUEST)으로 일부 기능만 이용 가능합니다.

위 조건 중 하나라도 만족하지 못하면 게스트 등록 요청은 실패합니다.

정식 회원가입과의 차이점​

항목게스트 등록정식 회원가입
Access Code불필요필수
이메일 인증불필요필수
약관 동의필수필수
계정 유형임시 게스트 계정정식 사용자 계정
기능 제한일부 기능 제한모든 기능 이용 가능
Step-up 가능정식 가입으로 업그레이드 가능-
등록/로그인 분리동일 (등록 후 별도 로그인)동일 (등록 후 별도 로그인)

게스트 계정 특징​

제한 사항​

  • 게스트 계정은 **제한된 신원 수준(Identity Level: GUEST)**으로 서비스의 일부 기능만 이용할 수 있습니다.
  • 일부 개인화 기능이나 데이터 동기화 기능은 정식 가입 후에만 사용할 수 있습니다.

Step-up 인증​

  • 게스트 계정은 추후 **정식 사용자로 업그레이드(Step-up)**할 수 있습니다.
  • Step-up 시 Access Code와 이메일 인증을 통해 정식 계정으로 전환됩니다.

관련 API 문서​