[친구 목록 / 메시지] 팀멤버 테스트 환경에서 /v1/api/talk/friends 403 지속 발생 문의

문의 시, 디벨로퍼스 앱ID를 알려주세요.

  • 비즈니스 정보 심사는 운영하시는 서비스와 디벨로퍼스앱이 일치하는지, 운영정책을 준수하는 신뢰할 수 있는 서비스인지 확인하는 절차입니다.
  • 개인정보 항목 심사는 운영하시는 서비스 일반회원가입에서 입력 받는 항목을 기준으로 제공됩니다.

앱 권한 신청이 반려되었습니다. FAQ


앱ID는 1386019입니다.
안녕하세요, 카카오톡 친구 목록 / 메시지 API 사용을 준비 중인 개발자입니다.
가이드 문서와 체크리스트를 참고하여 구현·설정을 진행했는데, 팀멤버 테스트 환경에서도 403 Forbidden이 계속 발생하여 문의드립니다.

아래는 현재 구현/설정 및 재현 절차입니다.
앱 이름: WhereHere

  • 플랫폼: Web

  • 서비스 도메인: https://wherehere-seven.vercel.app


2. 구현한 플로우 (카카오 체크리스트 4단계 기준)

  1. 카카오 로그인

    • Supabase Kakao OAuth를 사용하여 웹에서 카카오 로그인 구현 완료

    • 실제 서비스 화면: https://wherehere-seven.vercel.app 로그인

  2. 카카오톡 서비스 내 친구목록 / 메시지 동의

    • 별도의 추가 동의 엔드포인트에서 OAuth2 Authorize 호출:

      • GET https://wherehere-seven.vercel.app/api/auth/kakao-consent?return=kakao-api-test

      • scope=friends talk_message, prompt=consent

    • 콜백:

      • GET https://wherehere-seven.vercel.app/api/auth/kakao-friends-callback?code=...

      • 여기에서 https://kauth.kakao.com/oauth/token 으로 authorization_code 그랜트 요청 후, access_token을 발급 받아 앱으로 리다이렉트하고 있습니다.

    • 이 과정에서 별도 오류 없이 토큰까지 정상 발급되고, 앱 내에서 kakao_friends_token 으로 저장됩니다.

  3. 친구 목록 가져오기

    • 화면: 설정 → 카카오 API 테스트(심사 제출용) 내의 “③ 친구 목록 불러오기” 버튼

    • 이 버튼 클릭 시, 백엔드 서버에서 다음 요청 수행:

      • POST https://wherehere-seven.vercel.app/api/v1/social/kakao-friends

      • 바디: { "access_token": "<위에서 받은 kakao_friends_token>" }

    • 백엔드 내부에서:

      • GET https://kapi.kakao.com/v1/api/talk/friends

      • 헤더: Authorization: Bearer <access_token>

    • 이 호출에서 항상 403 Forbidden 이 발생하고 있습니다.

  4. 친구에게 메시지 전송

    • ③이 403으로 막혀 친구 목록을 받지 못해, ④ 단계(특정 친구 UUID 선택 후 v1/api/talk/friends/message/default/send 호출)는 아직 정상 테스트를 하지 못한 상태입니다.

3. 설정 상태

  1. Kakao Developers 설정

    • Web 플랫폼 → Redirect URI:

      • https://wherehere-seven.vercel.app/api/auth/kakao-friends-callback

      • https://[프로젝트ID].supabase.co/auth/v1/callback

    • 카카오 로그인 → 동의 항목:

      • 카카오톡 서비스 내 친구목록 (friends)이용 중 동의

      • 카카오톡 메시지 전송 (talk_message)선택 동의 (또는 이용 중 동의로 설정 가능)

    • 앱 설정 → 팀 멤버:

      • 테스트에 사용하는 두 개의 카카오 계정을 팀 멤버로 모두 등록한 상태입니다.
  2. 환경 변수 (서버)

    • KAKAO_REST_API_KEY = (해당 앱 REST API 키)

    • KAKAO_CLIENT_SECRET = (해당 앱 Client Secret)

    • 위 값을 이용하여 oauth/authorizeoauth/token 요청을 수행하고 있습니다.


4. 테스트 계정 조건

  • 계정 A (본 계정)

    • WhereHere 웹에서 카카오 로그인 완료

    • 위 추가 동의 플로우(/api/auth/kakao-consent)를 통해 친구목록 + 메시지 scope 동의

  • 계정 B (팀 멤버 계정)

    • Kakao Developers → 해당 앱 → 팀 멤버에 등록

    • 동일한 웹 서비스에서 카카오 로그인 및 친구목록/메시지 동의까지 완료

  • A와 B는 카카오톡에서 실제 친구 관계입니다.


5. 실제 오류 현상

  • 계정 A로 로그인 후, 설정 → “카카오 API 테스트(심사 제출용)” 화면에서:

    1. ① 카카오 로그인: “완료” 표시

    2. ② 동의: /api/auth/kakao-consent 호출 후 앱으로 정상 복귀

    3. 친구 목록 불러오기 클릭 시마다, 백엔드에서 https://kapi.kakao.com/v1/api/talk/friends 호출이 항상 403 Forbidden 으로 응답

  • 응답 바디 예시(일부 마스킹):

HTTP/1.1 403 Forbidden

{

“msg”: “insufficient scopes.”,

“code”: -402

}

(※ 실제로 확인된 에러 메시지가 다를 경우, 해당 JSON을 그대로 첨부 예정입니다.)


6. 문의 드리고 싶은 점

  1. 위와 같이 두 계정 모두 팀 멤버로 등록 + 로그인 + friends/talk_message 동의 완료 상태에서도
    v1/api/talk/friends 에서 403이 발생하는 것이 정상 동작인지,
    아니면 추가로 어떤 조건(예: 권한 승인 전에는 특정 범위까지만 허용 등)이 더 필요한지 확인 부탁드립니다.

  2. “카카오톡 친구 목록 / 메시지” 권한 신청은 이미 한 번 반려된 상태인데,

    • 위 테스트 화면(카카오 로그인 / 동의 / 친구 목록 API 호출 / 메시지 전송 테스트)을 이용해
      어떤 식으로 테스트 이력을 증빙하는 것이 가장 적절한지도 조언 부탁드립니다.
  3. 현재 상태에서 테스트 앱을 별도로 만들어야 하는지,
    아니면 지금 운영 앱 상태에서도 팀 멤버 기준으로 403 없이 테스트가 가능해야 하는지 기준을 알고 싶습니다.


긴 글 읽어주셔서 감사합니다.

친구 정보 제공 조건
1. 친구가 앱과 연결된 상태일 것
2. 친구가 앱 연결 시 [카카오 서비스 내 친구 목록 제공] 동의 항목에 동의한 상태일 것
3. 친구가 숨김 또는 차단 친구가 아닐 것
4. 친구의 프로필 공개 설정이 공개 상태일 것
5. (친구 API 사용 권한이 없는 경우) 앱의 팀원일 것
메시지 발송자는 아래 조건 추가 필요
1. 발송자는 [카카오톡 메시지 전송] 동의 항목 동의한 상태일 것

안녕하세요.

친구/메시지 API는 이용자의 실제 카카오톡 친구 여부조건 외 회원님 앱과 연결된 사용자이며 필요한 동의 과정이 메시지 수발신 쌍방 모두에게 동의 완료된 상황에서만 사용할 수 있는 기능입니다.

현재와 같이 권한이 없는 상황에서는 팀 멤버 조건까지 만족해야 하나 회원님 앱에 팀 멤버는 소유자 1명으로 실제
조회 가능한 친구가 없기에 테스트가 불가능한 상황이라 403 오류가 전달되었습니다.

실제 이용 조건인 위 조건을 모두 만족한 상태로 테스트 진행 부탁드립니다.