Skip to content

Latest commit

 

History

History
159 lines (108 loc) · 9.03 KB

0713_카카오API조사.md

File metadata and controls

159 lines (108 loc) · 9.03 KB

기술조사_카카오API

0. 요약

  1. 친구 목록 획득 가능한 3가지 조건

    • 카카오 서비스 내 친구 목록 제공 동의 (유저가 우리 사이트 가입후 친구 목록 제공에 동의한 상태)

    • 친구인 사용자가 앱과 연결된 상태 (유저의 친구도 우리 사이트에 가입한 상태)

      • 정확한 의미에 대해선 아직 모르겠음 => 추후 확인 필요
    • 숨김 또는 차단 친구가 아닐 것 (카톡에서)

  2. 친구목록 API는 REST API 와 JS 방식 모두 가능, REST API 버전이 응답받는 데이터가 많다

  3. 카카오톡 메시지 API는 두 가지 종류가 있다.

    • 카카오톡 API : 디테일하다 (친구 목록(데이터O)부터 자체 구현, 우리 서비스에서 보내는 느낌)
    • 카카오링크 API : 쉽다 (링크를 누르면 친구 목록(데이터x)으로 이동 후 보낸다, 카톡앱으로 이동해서 보내는 느낌)
    • 둘다 메시지 구조가 같고, 메시지 템플릿 사용이 가능하다. (그중 위치가 적절해보인다)
  4. 동의에 따라 친구 API로 얻을 수 있는 개인정보

    • 프로필 정보(닉네임/프로필 사진)
    • 카카오계정(이메일)
    • 성별
    • 연령대
    • 카카오 서비스 내 친구목록
    • 생일

1. 친구목록 API

공통 가이드 : https://developers.kakao.com/docs/latest/ko/friend/common

REST API : https://developers.kakao.com/docs/latest/ko/friend/rest-api#get-friends

JS SDK : https://developers.kakao.com/docs/latest/ko/friend/js#get-friend

1-1) 요청(REST API 버전)

Parameter

Name Type Discription Required
secure_resource Boolean 이미지 URL 값 HTTPS 여부 true 설정 시 HTTPS 사용 기본 값 false X
offset Integer 친구 리스트 시작 지점 offset 기본 값 0 X
limit Integer 한 페이지에 가져올 친구 최대 수, 최대 100 기본 값 10 X
order String 친구 리스트 정렬 순서, asc(오름차순) 또는 desc(내림차순) 기본 값 asc X
friend_order String 친구 리스트 정렬 시, 즐겨찾기 친구의 우선 정렬 또는 닉네임 순서 정렬로 기준 설정 favorite(즐겨찾기 친구) 또는 nickname(카카오톡 닉네임) 기본 값 favorite X

1-2) 응답(REST API 버전)

KEY

Name Type Discription
elements Friend[] 친구 리스트
total_count Integer 카카오톡 친구 수
favorite_count Integer 친구 리스트 중 즐겨찾기 친구 수
before_url String 이전 페이지 URL 이전 페이지가 없을 경우 null
after_url String 다음 페이지 URL 다음 페이지가 없을 경우 null

elements

Name Type Discription
id Long 회원번호
profile_nickname String 사용자 프로필 닉네임
profile_thumbnail_image String 사용자 프로필 썸네일(Thumbnail) 이미지
uuid String 각 앱에서 친구마다 고유한 참고용 코드(Code) 카카오톡 메시지 전송 시 사용
favorite String 카카오톡 즐겨찾기 여부

1-3)사전 준비 사항

개발자

  1. kakao developers > 내 애플리케이션 > 카카오 로그인 > 동의 항목 설정
  2. 친구 API 사용 권한 받기

친구 목록에 친구가 뜨는 조건

  • 사용자 정보 : 본인 및 친구의 제 3자 정보 제공 동의 필요
  1. 카카오 서비스 내 친구 목록 제공 동의

  2. 친구인 사용자가 앱과 연결된 상태

  3. 숨김 또는 차단 친구가 아닐 것

개발 완료후, 사용 권한 신청하기

  1. [내 애플리케이션] > [동의항목] 메뉴에서 [개인정보 보호항목] 중 '카카오 서비스 내 친구목록' 항목을 '이용 중 동의'로 설정
  2. 친구 목록 받기 기능을 구현
  3. 앱의 팀 멤버를 대상으로 친구 목록 받기 기능이 정상 동작하는지 확인
  4. 기능 정상 동작 확인 후, 데브톡에서 '새 주제 만들기'에 '친구 API' 카테고리를 선택하고, 양식에 따라 신청
  5. 카카오 플랫폼 관리자가 신청 내용을 확인한 뒤 메시지 API 사용 권한 제공 여부를 답변

2. 메시지 API

https://developers.kakao.com/docs/latest/ko/message/common

  • 사용자가 카톡을 통해 카톡 친구에게 메시지 보내는 기능

  • 두가지 API가 존재

    • 두 가지 메세지 API의 다른 점
    • 카카오톡 API : 디테일한 기능(서비스단에서 REST API 통해 카톡 전송)
    • 카카오링크 API : 간편한 기능(카카오톡을 통해 카톡 전송)

2-1) 카카오톡 API

우리 서비스 활용 방안 : 친구에게 특정 맛집을 공유

ex) 다음번에 여기로 가자! or 오늘 점심장소는 여기

  • 사용자가 특정 상황에 서비스 클라이언트나 서버를 통해 카톡 친구에게 카톡 보내는 기능
  • 스크랩 메시지 : 웹 페이지 URL에서 scrap하여 메시지 템플릿에 반영
  • 커스텀 템플릿 : customize 통해 일부 정보를 메시지 발송 시점에 채워 넣을 수 있는 메시지
  • 메시지 탬플릿 : 피드, 목록, 위치, 커머스, 텍스트 위치가 최적절해 보임

위치 타입

​ ➊ 이미지: 최대 1장 표시, 800px * 800px이상 권장

​ ➋ 제목/설명: 최대 4줄 표시 (제목, 설명 각각 2줄)

​ ➌ 소셜: 최대 3개 표시 (순서: 좋아요 > 댓글 > 공유 > 조회 > 구독)

​ ➍ 버튼: 최대 2개 표시, 버튼명 8자 이하 권장

기능 설명 가이드
친구에게 메시지 보내기 클라이언트 또는 서버에서 메시지 내용을 구성, 친구의 카카오톡으로 전송하는 기능 JavaScript SDK
친구에게 스크랩 메시지 보내기 웹 페이지 내용을 스크랩해 메시지를 구성하거나 메시지 템플릿에 담아 친구의 카카오톡으로 전송하는 기능 JavaScript SDK
친구에게 메시지 템플릿으로 보내기 카카오 디벨로퍼스에 메시지 템플릿을 등록하고, 메시지 템플릿 기반으로 구성한 메시지를 친구의 카카오톡으로 전송하는 기능 JavaScript SDK

2-2) 카카오링크 API

  1. 보낼 메시지 내용 구성 => 메시지 템플릿
  2. [카카오링크 API 호출](카카오링크 API로 보내기)

2-3) 카카오링크 전송 성공 알림받기

https://developers.kakao.com/docs/latest/ko/message/common#kakaolink-callback

카카오링크 API활용했다면, 메시지 전송 성공 여부는 이 방식을 활용하여 자체 구현해야함

3) 동의에 따라 친구 API로 얻을 수 있는 개인정보

https://developers.kakao.com/console/app/458978/product/login/scope

항목 이름 Id 가능한 수준
프로필 정보(닉네임/프로필 사진) profile 필수 동의
카카오계정(이메일) account_email 필수 동의
성별 gender 필수 동의
연령대 age_range 필수 동의
카카오 서비스 내 친구목록 friends 선택 동의
생일 birthday 필수 동의