개발일지

📲 앱 실행 시 꼭 필요한 한 번의 호출 – check-in API 설계 이야기

makeviibe 2025. 7. 15. 16:09

안녕하세요 makeviibe 입니다.

앱을 켜자마자 가장 먼저 호출되는 API가 있다면,

그건 단순한 기능이 아니라 서비스 운영의 기반이 됩니다.

오늘은 makeviibe 팀이 설계한 check-in API에 대해 소개합니다.

이 API는 앱 실행 시 단 한 번만 호출되며,

사용자의 디바이스, 로그인 상태, FCM 정보 등을 수집하여

푸시 알림 유지, 통계 집계, 장치 식별 등 다양한 기반 역할을 수행합니다.


✅ check-in API는 어떤 역할을 하나요?

check-in은 말 그대로 사용자가 앱을 실행하며 “도착했다”는 신호를 서버에 보내는 API입니다.

이 한 번의 요청으로 다음과 같은 목적을 달성합니다:


📦 요청 파라미터 정리


🔁 호출 방식 예시


🧠 서버에서 처리하는 주요 로직

  • device_id가 없는 경우 → 신규 생성 후 응답에 포함
  • fcm_key는 항상 최신값으로 업데이트
  • user_id가 있다면 → 해당 유저의 활동 로그 기록
  • 접속 기록은 MAU/DAU 집계용 로그 테이블에 저장

🧩 왜 이런 구조인가요?

  • 앱을 켜는 순간이 가장 정확한 DAU 포인트이기 때문입니다.
  • FCM 푸시는 fcm_key가 최신이 아닐 경우 무용지물이 됩니다.
  • device_id는 로그인 여부와 상관없이 유저를 식별할 수 있게 해줍니다.
  • 예: 비회원 유저의 행동 로그, 추후 로그인 시 연결 가능

🛠️ 클라이언트 개발 시 주의할 점

  1. 앱이 실행될 때 단 한 번 호출되도록 구성
  2. device_id는 앱 내에 저장하고, 이후 재사용 필수
  3. fcm_key는 앱이 새로 실행될 때마다 최신 값으로 갱신
  4. user_id는 로그인 상태일 때만 포함

✍️ 마무리하며

단순해 보이는 check-in API는

서비스 운영의 근간이 되는 데이터 흐름의 출발점입니다.

makeviibe 팀은 작은 호출 하나도 서비스 성장에 기여할 수 있도록

데이터 구조와 확장성을 고려하여 설계합니다.