최초로 카카오로 로그인한 사람과 아닌 사람을 구분할 수 있을까요?

안녕하세요. 카카오로그인버튼을 통해서 카카오 계정 로그인을 하면 최초로 서비스에 가입하는 사람은 '동의 화면’을 클릭하여 유입되고, 기존에 카카오로 로그인했던 사람은 동의 화면 없이 로그인할 수 있는데, 혹시 그 둘을 구분하는 방법이 있을까요?

안녕하세요!
방법은 여러 가지가 있어요. 어떤 상황에서 구분이 필요한지 알려주시면 보다 적합한 수단을 안내드릴 수 있을 것 같아요.

안녕하세요! 사용자가 어떤 경로로든 저희 서비스 페이지의 로그인 페이지에 진입해서, ‘카카오로 로그인’ 버튼을 클릭하여 로그인한 뒤 (혹은 클릭 시) 이 사용자가 최초로 저희 페이지에 로그인한 사람인지(동의 후), 아님 기존 고객이 카카오 계정을 통해 로그인한 것인지를 파악하고 싶어서 그렇습니다!

저희가 연동한 카카오 로그인 api 는 https://developers.kakao.com/docs/js/kakaologin#예제-커스톰-로그인-버튼을-이용한-카카오-로그인 이방법을 통해서 사용중이고

https://developers.kakao.com/docs/js/demos/custom-login 이 데모페이지에서 ‘동의’ 후 받아오는 response 와 기존에 로그인 한 후 새로 받아오는 response 는 key 값이 동일하게 나와서 구분이 안되었습니다.

1개의 좋아요

JavaScript SDK를 사용하시는군요! 데모에서 출력하는 값은 로그인한 사용자의 인증 정보에요. 토큰 값이라든가요.
보다 자세한 사용자 정보는 로그인 후 사용자 정보 요청으로 받아옵니다. 이 요청의 응답 중 두 가지 값이 유용할 것 같아요.

  1. id
    사용자 정보 중 ID가 있는데요, 이 값은 카카오계정마다 고유하게 부여되므로 기존 회원 정보에 해당 id를 가진 회원이 있는지 확인해보는 것으로 신규 사용자인지 알 수 있습니다. 이 값은 식별자이기 때문에, 서비스 회원 정보에도 카카오계정의 id를 저장해두어야 해요.

  2. connected_at
    REST API 도구로 사용자 정보 요청을 테스트해보시면, 사용자 정보 중에 connected_at이라는 값이 있어요.
    이 값이 신규 사용자인지를 의미하지는 않지만, 해당 카카오계정이 서비스 앱과 연결된 시점을 알려줍니다.
    일반적으로 카카오계정과 앱이 연결된 직후 서비스 가입도 진행하니, 가입 시점을 참고하는 용도로 쓰실 수 있을 거에요.
    참고로 이 값은 탈퇴 및 연결 끊기 후 다시 가입할 때 갱신됩니다.

확인 감사합니다! 말씀주신 방법을 사용해보도록 하겠습니다!!