[[부록14_카카오톡_나에게_보내기_연동_가이드|부록 14]]. 카카오톡 "나에게 보내기" 연동 가이드
[!abstract] 카카오 개발자 앱 생성, OAuth2 Credential 등록, "나에게 보내기" API 연동까지 안내합니다. 이 가이드를 따라하면 n8n 워크플로에서 카카오톡으로 메시지를 자동 전송할 수 있게 되거든요.
n8n에서 카카오톡 "나에게 보내기" 기능을 사용하려면 카카오 개발자 앱을 만들고, n8n에 OAuth2 Credential을 등록해야 합니다. 이 가이드를 따라하면 n8n 워크플로에서 카카오톡으로 메시지를 자동 전송할 수 있습니다.
이 부록은 다음 내용을 다룹니다.
- 카카오톡 "나에게 보내기" API란?
- 카카오 개발자 앱 생성
- 카카오 로그인 설정 (Redirect URI, Client Secret, 동의항목)
- n8n에서 Generic OAuth2 API Credential 등록
- OAuth2 인증 (카카오 계정 연동)
- "나에게 보내기" API 호출 형식
[!tip] 7.1.2 AI 트렌드 리서치 자동화 실습에서 오셨나요? 7.1.2 섹션의 카카오톡 전송 STEP을 위해 이 가이드를 보고 계신다면, 아래 항목을 순서대로 모두 완료한 뒤 돌아가세요.
순서 완료할 항목 비고 1 카카오 개발자 앱 생성 kakao 계정으로 로그인 2 카카오 로그인 설정 Redirect URI + Client Secret + 동의항목 3 n8n Credential 등록 Generic OAuth2 API 4 OAuth2 인증 카카오 계정 연동 5 테스트 메시지 전송 "나에게 보내기" 동작 확인 5단계까지 완료하고 카카오톡에 테스트 메시지가 도착하면 준비 끝입니다. [[Day28_07.1.2_Firecrawl_Search로_AI_트렌드_리서치_자동화|7.1.2 섹션]]으로 돌아가세요.
카카오톡 "나에게 보내기" API란?
카카오톡 "나에게 보내기"는 카카오톡 나와의 채팅 방에 메시지를 전송하는 API입니다. 자동화 워크플로에서 알림이나 리포트를 내 카카오톡으로 바로 받아볼 수 있어, 별도의 채널 설정 없이도 간편하게 활용할 수 있습니다.
| 항목 | 내용 |
|---|---|
| API 엔드포인트 | POST https://kapi.kakao.com/v2/api/talk/memo/default/send |
| 인증 방식 | OAuth2 (Authorization Code Grant) |
| 비용 | 무료 (일 1,000건 제한) |
| 메시지 유형 | text, feed, list, location, commerce |
| text 타입 제한 | 본문 최대 200자 |
💡 왜 HTTP Request 노드를 사용할까요? n8n에는 카카오톡 전용 노드가 없습니다. 하지만 HTTP Request 노드와 Generic OAuth2 API Credential을 조합하면, 전용 노드 없이도 카카오톡 API를 호출할 수 있습니다. 이 패턴은 전용 노드가 없는 다른 서비스를 연동할 때도 동일하게 적용됩니다.
STEP 1. 카카오 개발자 앱 생성
- 카카오 개발자에 접속하여 카카오 계정으로 로그인합니다.
- 상단 메뉴에서 내 애플리케이션을 클릭합니다.
![[그림부록15-1b.png]]
[그림부록15-1b] 카카오 개발자 콘솔 — 내 애플리케이션 메뉴
- 애플리케이션 추가하기 버튼을 클릭합니다.
![[그림부록15-1.png]]
[그림부록15-1] 카카오 개발자 콘솔 — 애플리케이션 추가하기
- 앱 정보를 입력하고 저장 버튼을 클릭합니다. 앱 이름, 회사명, 카테고리 3개는 필수 항목이며, 앱 로고와 앱 대표 도메인은 선택 사항입니다.
| 항목 | 필수 | 입력 값 |
|---|---|---|
| 앱 아이콘 | (생략 가능) | |
| 앱 이름 | ✅ | n8n 자동화 알림 (자유롭게 입력) |
| 회사명 | ✅ | (개인 이름 또는 회사명) |
| 카테고리 | ✅ | 드롭다운에서 선택 (예: 유틸리티) |
| 앱 대표 도메인 | (생략 가능) |
하단의 "서비스 이용이 제한되는 카테고리, 금지된 내용, 금지된 행동 관련 운영정책을 위반하지 않는 앱입니다." 체크박스를 반드시 체크한 뒤 저장을 클릭합니다.
![[그림부록15-1c.png]]
[그림부록15-1c] 앱 추가 — 앱 이름과 사업자명 입력
- 앱이 생성되면 앱 설정 > 플랫폼 키 페이지에서 REST API 키를 확인합니다. 이 키가 OAuth2의 Client ID입니다.
![[그림부록15-2.png]]
[그림부록15-2] 플랫폼 키 — REST API 키가 OAuth2 Client ID
📌 핵심: REST API 키를 복사해 두세요. 이후 n8n Credential 등록 시 Client ID로 사용합니다.
- 같은 화면에서 Default Rest API Key 카드를 클릭하면 REST API 키 수정 페이지로 이동합니다.
- 카카오 로그인 리다이렉트 URI 섹션에서 n8n의 OAuth2 콜백 URL을 입력합니다.
https://{여러분의-n8n-도메인}/rest/oauth2-credential/callback
예를 들어 n8n 도메인이 n8n.example.com이면:
https://n8n.example.com/rest/oauth2-credential/callback
로컬 환경이라면:
http://localhost:5678/rest/oauth2-credential/callback
⚠️ 주의: Redirect URI는 정확히 일치해야 합니다. 끝에
/가 있으면 안 되고,http와https도 구분됩니다. n8n의 실제 접속 주소와 동일한 프로토콜을 사용하세요.
- 같은 페이지 아래쪽의 클라이언트 시크릿 섹션에서 카카오 로그인 항목을 확인합니다. 코드 재발급 버튼으로 시크릿 코드를 발급하고, 활성화 토글을 ON으로 변경합니다.
- 발급된 시크릿 코드를 복사해 둡니다. 이 코드가 OAuth2의 Client Secret입니다.
- 페이지 하단의 저장 버튼을 클릭합니다.
![[그림부록15-2b.png]]
[그림부록15-2b] REST API 키 수정 — 리다이렉트 URI 입력과 클라이언트 시크릿 코드 확인
STEP 2. 카카오 로그인 활성화
카카오톡 메시지 전송에는 카카오 로그인 기능이 필요합니다. 이 단계에서 로그인을 활성화하고, OAuth2 인증에 필요한 설정을 진행합니다.
2-1. 카카오 로그인 ON
- 좌측 메뉴에서 제품 설정 > 카카오 로그인을 클릭합니다.
- 사용 설정 토글을 ON으로 변경합니다.
![[그림부록15-3.png]]
[그림부록15-3] 카카오 로그인 활성화 — 토글을 ON으로 변경
2-2. 동의항목 설정
카카오톡 메시지를 보내려면 사용자 동의가 필요합니다.
- 좌측 메뉴에서 제품 설정 > 카카오 로그인 > 동의항목을 클릭합니다.
- 목록에서 카카오톡 메시지 전송 (
talk_message) 항목을 찾습니다. - 설정 버튼을 클릭하고 동의 단계를 선택 동의로 변경합니다.
- 동의 목적 입력필드에는 "나에게 메세지 전송 자동화"라고 입력합니다.
- 저장 버튼을 클릭합니다.
![[그림부록15-6.png]]
[그림부록15-6] 동의항목 설정 — 카카오톡 메시지 전송(talk_message)을 "선택 동의"로 설정
💡 팁:
talk_message만 설정하면 "나에게 보내기"가 가능합니다. 친구에게 메시지를 보내려면 추가로friends동의항목이 필요하지만, 이번 실습에서는 필요하지 않습니다.
STEP 3. n8n에서 OAuth2 Credential 등록
카카오 개발자 앱 설정이 완료되었으니, n8n에서 Credential을 등록합니다. Credential은 HTTP Request 노드 설정 과정에서 바로 생성할 수 있습니다.
- n8n에서 새 워크플로를 하나 만들고, HTTP Request 노드를 추가합니다.
- 노드 설정 팝업에서 Authentication 필드를 클릭하고, 드롭다운에서 Generic Credential Type을 선택합니다.
![[그림부록15-7.png]]
[그림부록15-7] HTTP Request 노드 — Authentication에서 "Generic Credential Type" 선택
- Generic Auth Type 입력 필드가 활성화되면, 드롭다운에서 OAuth2 API를 선택합니다.
![[그림부록15-7b.png]]
[그림부록15-7b] Generic Auth Type — 드롭다운에서 "OAuth2 API" 선택
- OAuth2 필드 옆의 Create New Credential 링크를 클릭하면 Credential 설정 화면이 열립니다. 다음과 같이 설정합니다.
| 설정 항목 | 값 |
|---|---|
| Credential 이름 | KakaoTalk OAuth2 (자유롭게 입력) |
| Grant Type | Authorization Code |
| Authorization URL | https://kauth.kakao.com/oauth/authorize |
| Access Token URL | https://kauth.kakao.com/oauth/token |
| Client ID | (STEP 1에서 복사한 REST API 키) |
| Client Secret | (STEP 1에서 복사한 클라이언트 시크릿 코드) |
| Scope | talk_message |
| Auth URI Query Parameters | (비워두기) |
| Authentication | Body |
![[그림부록15-8a.png]]
[그림부록15-8a] OAuth2 Credential 설정 (상단) — Grant Type, Authorization URL, Access Token URL, Client ID
![[그림부록15-8b.png]]
[그림부록15-8b] OAuth2 Credential 설정 (하단) — Client Secret, Scope, Authentication을 Body로 설정
📌 핵심: Authentication 항목을 반드시 Body로 설정하세요. 기본값인 "Header"로 두면 카카오 인증이 실패합니다. 카카오 OAuth2는 Client ID와 Secret을 요청 본문(Body)에 포함하는 방식을 사용합니다.
STEP 4. OAuth2 인증 (카카오 계정 연동)
-
Credential 설정 화면 하단의 Connect to the service you're connection to 버튼 을 클릭합니다.
-
카카오 로그인 팝업이 나타나면 카카오 계정으로 로그인합니다. ![[그림부록15-9.png]] [그림부록15-9] 카카오 OAuth2 인증 — 카카오 로그인 팝업
-
동의 항목을 확인하고 동의하고 계속하기 버튼을 클릭합니다.
-
n8n 화면으로 돌아오면 "Connected" 표시가 나타납니다.
-
Save 버튼을 클릭하여 Credential을 저장합니다.
![[그림부록15-10.png]]
[그림부록15-10] OAuth2 인증 완료 — "Connected" 표시 확인 후 저장
⚠️ 주의: OAuth2 인증 팝업이 차단될 수 있습니다. 브라우저의 팝업 차단 설정을 확인하세요. Chrome의 경우 주소창 오른쪽에 팝업 차단 아이콘이 나타나면 클릭하여 허용하세요.
"나에게 보내기" API 호출 형식
n8n의 HTTP Request 노드로 카카오톡 "나에게 보내기" API를 호출할 때 사용하는 설정 형식입니다.
기본 설정
| 설정 항목 | 값 |
|---|---|
| Method | POST |
| URL | https://kapi.kakao.com/v2/api/talk/memo/default/send |
| Authentication | Generic Credential Type |
| Generic Auth Type | OAuth2 API |
| Credential | STEP 3에서 생성한 KakaoTalk OAuth2 |
| Send Headers | ON |
| Send Body | ON |
| Content Type | Form Urlencoded |
Header Parameters
| Name | Value |
|---|---|
Content-Type | application/x-www-form-urlencoded;charset=utf-8 |
Body Parameters
| Name | Value 예시 |
|---|---|
template_object | {"object_type":"text","text":"n8n에서 보낸 메시지","link":{"web_url":"https://developers.kakao.com"},"button_title":"확인하기"} |
호출이 성공하면 응답으로
{"result_code":0}이 반환되고, 카카오톡 **"나와의 채팅"**에 메시지가 도착합니다.
메시지 유형 참고
카카오톡 "나에게 보내기"는 text 외에도 다양한 메시지 유형을 지원합니다.
| 유형 | object_type | 설명 | 주요 필드 |
|---|---|---|---|
| 텍스트 | text | 텍스트 + 링크 버튼 | text (200자), link, button_title |
| 피드 | feed | 이미지 + 제목 + 설명 + 버튼 | content.title, content.image_url, buttons |
| 리스트 | list | 헤더 + 여러 아이템 목록 | header_title, contents[] |
| 위치 | location | 지도 + 주소 정보 | address, content |
| 커머스 | commerce | 상품 정보 + 가격 | content, commerce.regular_price |
💡 팁: 이번 실습에서는 가장 간단한 text 타입을 사용합니다. 이미지와 함께 보내고 싶다면 feed 타입을 사용하세요. 자세한 메시지 구조는 카카오 공식 문서를 참고하세요.
정리하며
이 부록의 핵심을 정리하면 다음과 같습니다.
- 전용 노드 없이 HTTP Request + Generic OAuth2: n8n에 카카오톡 전용 노드는 없지만, HTTP Request 노드 + Generic OAuth2 API Credential 조합으로 충분히 호출할 수 있습니다. 다른 미지원 서비스 연동에도 동일한 패턴을 적용할 수 있습니다.
- Authentication은 반드시 Body: 카카오 OAuth2는 Client ID/Secret을 요청 본문(Body)에 담는 방식을 사용합니다. 기본값인 Header로 두면 인증이 실패합니다.
- Redirect URI는 한 글자도 다르면 안 됨: 카카오 콘솔에 등록한 URI와 n8n의 실제 콜백 URL이 정확히 일치해야 합니다(
http/https, 끝 슬래시, 포트 번호 모두). - Client Secret은 발급 후 활성화 필수: 코드 발급만으로 끝이 아니며, 활성화 토글을 사용함으로 켜야 합니다.
- 동의항목
talk_message등록 필수: 이것이 빠지면 인증 시 동의 화면에 "카카오톡 메시지 전송" 항목이 표시되지 않습니다.
설정 체크리스트
- 카카오 개발자 앱이 생성되었고, REST API 키를 확인했다
- 카카오 로그인이 ON으로 활성화되어 있다
- Redirect URI에 n8n 콜백 URL이 등록되어 있다
- Client Secret이 발급되고 **활성화 상태가 "사용함"**이다
- 동의항목에서
talk_message가 **"선택 동의"**로 설정되어 있다 - n8n Generic OAuth2 API Credential이 생성되고 Connected 상태이다
자주 하는 실수와 해결법
| 증상 | 원인 | 해결법 |
|---|---|---|
401 Unauthorized | OAuth2 토큰 만료 | n8n Credentials에서 해당 Credential을 열고 Reconnect 클릭 |
-2 에러 | template_object가 올바른 JSON 아님 | JSON 문법 확인 (따옴표, 쉼표, 중괄호 짝 맞추기) |
KOE101 에러 | Client ID(REST API 키)가 잘못됨 | 카카오 개발자 콘솔에서 REST API 키 재확인 |
KOE010 에러 | Client Secret 미활성화 | 보안 설정에서 활성화 상태가 "사용함"인지 확인 |
| 동의 화면에 "카카오톡 메시지 전송"이 없음 | 동의항목 미설정 | 동의항목에서 talk_message를 "선택 동의"로 설정 |
| 팝업이 열리지 않음 | 브라우저 팝업 차단 | Chrome 주소창 팝업 차단 아이콘 클릭 → 허용 |
KOE006 에러 | Redirect URI 불일치 | 카카오 콘솔의 Redirect URI와 n8n URL 정확히 일치하는지 확인 |
💡 다음 단계: 본문 실습 중 자주 마주치는 오류와 해결법을 한 곳에 모아둔 통합 가이드가 있습니다. 막힐 때마다 펼쳐보면 빠르게 해결책을 찾을 수 있죠. 다음으로 [[부록15_자주_하는_실수와_해결법_통합_가이드|부록 15. 자주 하는 실수와 해결법 통합 가이드]]를 참고하세요.
