카카오톡 API로 메시지 주고받기 웹페이지 만들기

카카오톡 API를 활용해 웹페이지에서 메시지를 주고받는 기능을 구현하려면, 카카오의 공식 메시지 API와 인증 절차를 이해하고 따라야 합니다. 아래에 주요 흐름과 구현 방법을 정리합니다.
<현재는 불가능하여, 개인적인 용도로 사용은 https://cpro95.tistory.com/50 참고>
1. 카카오 개발자 등록 및 앱 생성
- 카카오 개발자 사이트에 가입 후, 내 애플리케이션에서 새 앱을 생성합니다.
- 웹 플랫폼을 등록하고, JavaScript 키와 REST API 키를 확인합니다[1].
2. 카카오 로그인 및 권한 동의 설정
- 카카오톡 메시지 전송을 위해서는 사용자의 카카오 로그인과 메시지 전송(talk_message), 친구 목록(friends) 권한 동의가 필요합니다.
- 앱 설정 > 카카오 로그인 > 동의항목에서 해당 권한을 필수로 설정합니다[2][3].
3. 메시지 API 사용 방식 선택
- 메시지 API는 크게 두 가지 방식이 있습니다:
4. 메시지 전송 흐름
나에게 메시지 보내기
- REST API 엔드포인트:
POST https://kapi.kakao.com/v2/api/talk/memo/default/send
- 헤더에 액세스 토큰, 본문에 메시지 템플릿(JSON)을 담아 전송[2:2].
친구에게 메시지 보내기
- 친구 목록 API로 친구의 uuid를 받아와야 하며, 한 번에 최대 5명에게 메시지 전송 가능[2:3][4][3:2].
- REST API 엔드포인트:
POST https://kapi.kakao.com/v1/api/talk/friends/message/default/send
- 파라미터:
receiver_uuids
: 친구 uuid 배열template_object
: 메시지 내용(JSON)[3:3]
예시 (Python)
import requests
headers = {
'Authorization': 'Bearer {ACCESS_TOKEN}',
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8'
}
data = [
('receiver_uuids', '["abcdefg0001","abcdefg0002"]'),
('template_object', '''{
"object_type": "text",
"text": "안녕하세요! 카카오톡 메시지 API 테스트입니다.",
"link": {
"web_url": "https://developers.kakao.com",
"mobile_web_url": "https://developers.kakao.com"
},
"button_title": "바로 확인"
}''')
]
response = requests.post(
'https://kapi.kakao.com/v1/api/talk/friends/message/default/send',
headers=headers,
data=data
)
print(response.json())
5. 웹페이지 연동 (JavaScript SDK 예시)
- 카카오 JavaScript SDK를 활용하면 웹페이지에서 카카오톡 메시지 전송 UI를 쉽게 구현할 수 있습니다.
- SDK 초기화 후, 로그인 및 메시지 전송 메서드를 호출[5].
Kakao.init('YOUR_JAVASCRIPT_KEY');
Kakao.Auth.login({
scope: 'friends,talk_message',
success: function(authObj) {
Kakao.API.request({
url: '/v1/api/talk/friends/message/default/send',
data: {
receiver_uuids: ['친구의 UUID'],
template_object: {
object_type: 'text',
text: '웹에서 보내는 카카오톡 메시지!',
link: {
web_url: 'https://yourwebsite.com',
mobile_web_url: 'https://yourwebsite.com'
},
button_title: '확인'
}
}
}).then(function(response) {
console.log(response);
}).catch(function(error) {
console.error(error);
});
}
});
6. 주의사항 및 제한
- 친구에게 메시지 보내기는 테스트 단계에서는 팀원(개발자 콘솔에서 초대한 계정)에게만 전송할 수 있습니다.
- 메시지 전송은 일일/월별 쿼터 제한이 있습니다.
- 카카오톡 공유(카카오링크)와 메시지 API는 다르며, 메시지 API는 REST API 방식, 카카오링크는 JS SDK 방식만 지원합니다[2:4].
요약
- 카카오 개발자 사이트에서 앱 생성 및 권한 설정
- 카카오 로그인 및 액세스 토큰 발급
- 친구 목록 API로 uuid 조회
- REST API 또는 JavaScript SDK로 메시지 전송 구현
- 테스트는 팀원 계정에 한정됨
카카오 공식 문서와 샘플 코드를 참고해 단계별로 구현하면, 웹페이지에서 카카오톡 메시지 주고받기 기능을 만들 수 있습니다[2:5][5:1][3:4].
⁂
- https://t1.kakaocdn.net/kakao_biz_common/public/docs/카카오싱크 개발가이드_Ver1.1_20190411.pdf ↩︎
- https://developers.kakao.com/docs/latest/ko/kakaotalk-message/rest-api ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
- https://foss4g.tistory.com/1636 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎
- https://blog.naver.com/alsehfdl0316/223053932924 ↩︎
- https://developers.kakao.com/docs/latest/ko/kakaotalk-message/js ↩︎ ↩︎