kakao api integration 1

카카오 API 2026, 발급부터 활용까지 정리한 입문 가이드

최종 수정일: 2026년 07월 08일

처음 온라인 서비스를 만들다 보면 이런 생각이 듭니다. “지도에서 찾은 장소를 카톡으로 바로 공유하는 건 대체 어떻게 되는 거지?” 같은 질문 말입니다.

그 중심에 있는 게 API(Application Programming Interface)입니다. 쉽게 말해 서로 다른 프로그램이 정보를 주고받기 위한 약속입니다. 국내에서는 카카오라는 플랫폼이 워낙 크다 보니, 카카오 API를 붙이는 순간 서비스가 할 수 있는 일이 확 늘어납니다.

이 글에서는 카카오 API를 처음 시작할 때 필요한 API 키 발급부터, 카카오톡·알림톡·로그인·카카오맵 같은 주요 기능을 실제로 어떻게 활용하는지 흐름대로 정리해보겠습니다.

카카오 API 시작하기

카카오 API

카카오 API 키 발급

카카오 API를 쓰려면 첫 단계가 ‘API 키’ 발급입니다. 이 키는 카카오 플랫폼이 “이 요청이 어느 앱에서 왔는지”를 구분하는 디지털 신분증 같은 역할을 합니다. 키가 없으면 카카오 서비스에 접근 자체가 어렵습니다.

발급은 developers.kakao.com에서 내 애플리케이션을 등록하면 자동으로 나옵니다. 카카오 개발자 플랫폼에 등록된 앱이 100만 개를 넘고, 하루 API 호출이 수십억 건 수준이라는 점만 봐도 실제 서비스에서 얼마나 많이 쓰이는지 감이 오실 겁니다.

카카오 API 키는 환경과 목적에 따라 4가지로 제공됩니다.

  • JavaScript 키 웹 브라우저에서 카카오맵, 카카오 공유하기 같은 기능에 사용
  • REST API 키 서버와 카카오 서버가 통신할 때 쓰는 핵심
  • Native App 키 iOS·Android 앱 환경에서 사용
  • Admin 키 관리자 권한 작업에 쓰이며 노출되면 특히 위험

처음 시작하신다면, 이 4가지 키의 용도를 구분하는 것부터 익숙해지시는 게 좋습니다. 나중에 연동이 꼬이는 이유가 “키를 잘못 썼다”인 경우가 생각보다 많습니다.

발급 절차는 단순합니다. 카카오 계정으로 개발자 사이트에 로그인한 뒤 ‘내 애플리케이션’에서 ‘애플리케이션 추가하기’를 누르고 앱 이름과 사업자명을 입력하면 바로 생성됩니다. 이후 설정 화면의 ‘앱 키’ 메뉴에서 4종 키를 확인할 수 있습니다.

여기서 가장 중요한 건 보안입니다. 특히 REST API 키와 Admin 키는 외부 노출이 되면 안 됩니다. 웹사이트 소스나 앱 내부에 그대로 들어가 있으면, 누군가가 내 앱을 사칭해서 API를 호출할 수 있습니다. 이런 키는 환경 변수(Environment Variables) 같은 안전한 방식으로 관리해야 합니다.

그리고 카카오 API는 무제한이 아닙니다. 키마다 일일 호출 한도(Quota)가 있고, 무료 플랜 기준으로 API별로 일일 호출 한도가 정해져 있고, 대략 수만 회 수준까지는 테스트·소규모 서비스에서 무리 없이 쓸 수 있습니다. 정확한 한도는 카카오 개발자 문서에서 API별로 확인하시는 게 안전합니다.

추가로, 등록 후 1년이 지나고 90일 이상 사용되지 않은 앱은 키가 자동 비활성화될 수 있습니다. 잘 되던 기능이 갑자기 멈추면, 개발자 콘솔에서 키 상태부터 확인하시는 게 빠릅니다.

카카오 api 키

카카오 REST API 키 발급

REST API 키는 서버에서 카카오 기능을 호출할 때 쓰는 핵심 인증 수단입니다. REST는 요즘 웹 서비스들이 통신할 때 가장 흔하게 쓰는 방식이라고 이해하시면 됩니다.

REST API 키는 32자리 문자열이고, 서버가 카카오 서버에 “정식 등록된 앱이니 요청을 처리해달라”고 증명하는 역할을 합니다. 개발 초기에 급해서 키를 코드에 박아 넣었다가, 나중에 보안 이슈로 전부 갈아엎는 경우도 흔합니다. 처음부터 습관을 잡는 게 낫습니다.

호출 시에는 보통 HTTP 헤더에 아래처럼 넣습니다.

Authorization: KakaoAK {REST_API_KEY}

KakaoAK는 “뒤에 오는 값이 카카오 REST API 키다”라는 약속된 표기입니다. 카카오 로그인 사용자 정보 조회, 카카오톡 메시지 전송 등 서버에서 카카오와 직접 통신하는 대부분의 기능이 이 키를 기본으로 씁니다.

키가 유출되면 호출량을 소진시키는 수준에서 끝나지 않습니다. 앱을 사칭해 스팸 메시지를 보내는 식으로 더 큰 사고로 이어질 수 있습니다. 카카오 문서에서도 공개 저장소(GitHub 등)에 올리지 말라고 강하게 안내합니다.

실무에서는 서버의 .env에 넣거나, AWS Secrets Manager 같은 비밀 관리 서비스를 쓰는 방식이 안전합니다.

추가 보안 장치도 있습니다. 개발자 콘솔에서 IP 화이트리스트를 등록하면, 등록된 서버 IP에서만 호출되도록 제한할 수 있습니다. 키가 새어 나가도 공격자가 다른 서버에서 호출하는 걸 막는 데 도움이 됩니다.

또한 API마다 호출 속도 제한(Rate Limiting)이 걸려 있습니다. 예를 들어 1초에 10회 같은 제한이 있을 수 있으니, 트래픽이 몰리는 서비스라면 캐싱이나 큐 처리까지 같이 설계해야 안정적으로 운영됩니다.

카카오톡 API 활용

카카오톡 API

카카오톡 API

카카오톡은 국내에서 사실상 기본 인프라에 가깝습니다. 2024년 기준 MAU가 약 4,700만 명 수준이라, “대부분의 사용자가 이미 깔려 있는 앱”을 기반으로 기능을 확장할 수 있다는 게 가장 큰 장점입니다.

카카오톡 API는 메시지 전송, 친구 목록 조회, 프로필 정보 접근 같은 기능을 외부 서비스에서 쓸 수 있게 해줍니다.

기능은 크게 네 가지로 나뉩니다.

  1. 카카오톡 메시지 API 나에게 보내기, 친구에게 보내기 등 개인화 메시지 전송
  2. 카카오톡 채널 API 카카오톡 채널을 통한 고객 소통
  3. 카카오톡 소셜 API 동의 기반으로 친구 목록·프로필 정보 조회
  4. 비즈니스 메시지 API 알림톡·친구톡 등 대량 메시지 발송

카카오톡 API에서 반드시 짚고 넘어가야 하는 게 ‘사용자 동의’입니다. 친구 목록을 보거나 메시지를 보내려면 권한 요청과 동의가 필요하고, 동의가 완료되면 액세스 토큰(Access Token)을 받아 API 호출 때마다 함께 전송합니다. 개인정보 보호를 위한 기본 구조입니다.

메시지 템플릿도 다양합니다. 피드형, 리스트형, 커머스형 등 템플릿을 JSON으로 구성해 이미지·텍스트·버튼·링크를 조합할 수 있습니다. 커머스형은 상품 이미지와 가격, 구매 버튼까지 넣을 수 있어 전환 유도에 특히 유리합니다.

다만 정책 위반(개인정보, 스팸성 발송 등)이 있으면 카카오가 이용을 제한할 수 있으니, 운영 정책과 법규는 반드시 같이 보셔야 합니다.

카카오톡 api 활용

카카오 알림톡 API

알림톡은 기업이 고객에게 정보성 메시지를 카카오톡으로 보내는 기능입니다. 주문 완료, 배송 안내, 예약 확인 같은 메시지가 대표적입니다. SMS보다 확인이 빠른 경우가 많아 도달률과 확인율이 높게 나옵니다.

알림톡은 템플릿 기반입니다. 아무 문구나 보내는 게 아니라, 카카오 검수를 통과한 템플릿만 사용합니다. 템플릿에는 #{고객명}, #{주문번호} 같은 변수를 넣고 실제 발송 시 값으로 치환합니다.

기술적으로는 서버에서 알림톡 발송 주소로 HTTP POST 요청을 보내는 방식입니다. 채널 정보, 템플릿 코드, 수신자 전화번호, 변수 값 등을 JSON으로 구성해 전송합니다. 보통은 발송 대행사가 라이브러리 형태로 제공해서 연동 난이도는 낮은 편입니다.

2024년 기준 알림톡 단가는 건당 한 자릿수 원대(예: 약 8원대)로 알려져 있습니다. 실제 단가는 대행사·계약 조건에 따라 달라질 수 있으니 최신 요금표를 반드시 확인하셔야 합니다. 다만 알림톡은 정보성만 가능하고, 쿠폰·이벤트 같은 광고성 메시지는 보낼 수 없습니다. 이 부분은 실무에서 자주 실수합니다.

카카오 알림톡 api

카카오톡 채널 메시지 발송 API

채널 메시지 발송 API는 카카오톡 채널을 친구 추가한 사용자에게 메시지를 보내는 기능입니다. 알림톡이 정보성이라면, 채널 메시지는 프로모션·신상품·쿠폰 같은 마케팅 목적에 더 많이 씁니다.

종류는 크게 두 가지입니다.

  • 친구톡 광고성 메시지 발송용이다. 사전 광고 수신 동의 필요, 080 수신거부 번호 표기 의무
  • 채널 메시지 채널 친구 전체 대상 정보성 메시지 (목적 제한을 가볍게 보면 사고 납니다)

구현은 REST 방식으로 서버에서 요청을 보내면 됩니다. 채널 정보, 메시지 종류, 수신자 목록, 메시지 내용을 JSON으로 담아 전송합니다. 발송 전에는 친구 목록 조회 API로 타겟을 정하는 과정이 들어가고, 이게 무분별한 발송을 줄여줍니다.

텍스트는 최대 1,000자, 이미지는 최대 500KB 같은 제약이 있고 발송량도 정책에 따라 제한됩니다. 채널 규모에 따라 달라질 수 있으니 운영 단계에서는 쿼터와 정책을 같이 보셔야 합니다.

카카오톡 채널 메시지 발송 api

카카오톡 공유하기 API

공유하기 API는 웹/앱 콘텐츠를 카카오톡으로 쉽게 공유하게 만드는 기능입니다. 쇼핑몰 상품 페이지의 ‘카톡 공유’ 버튼이 대표 사례입니다. 클릭 한 번으로 링크, 이미지, 설명이 포함된 메시지를 보낼 수 있어 바이럴에 강합니다.

공유 메시지는 보통 content(제목·설명·이미지), buttons(버튼 텍스트·링크), link(이동 URL) 같은 속성으로 구성됩니다. 버튼은 최대 3개까지 넣을 수 있습니다.

기본 템플릿이 아쉬우면 개발자 콘솔에서 커스텀 템플릿을 만들어 재사용할 수도 있습니다. 유지보수 측면에서는 이 방식이 편할 때가 많습니다.

모바일 SDK(iOS/Android)도 지원하고, 딥링크(Deep Link)를 잘 잡으면 공유 받은 사용자가 앱의 특정 화면으로 바로 이동하게 만들 수 있습니다. 공유 통계도 제공되니, 공유 횟수와 클릭 수를 보면서 개선 포인트를 잡는 데 도움이 됩니다.

카카오톡 공유하기 api

카카오톡 오픈채팅 봇 API

오픈채팅 봇 API는 오픈채팅방에서 자동 응답이나 관리 기능을 수행하는 챗봇을 만들 때 씁니다. 2024년 1분기 기준 오픈채팅 일 활성 사용자가 1,000만 명을 넘었다고 하니, 활용처가 꽤 많습니다.

작동 방식은 웹훅(Webhook)입니다. 사용자가 메시지를 보내면 카카오 서버가 개발자가 지정한 Webhook URL로 HTTP POST 요청을 보내고, 서버는 이를 분석해 응답을 돌려줍니다. 카카오 서버가 그 응답을 봇 메시지로 채팅방에 표시합니다.

처리 가능한 이벤트도 다양합니다. 메시지 수신뿐 아니라 입장/퇴장, 봇 초대/퇴장 같은 이벤트도 감지할 수 있습니다. 보통 “/”나 “!”로 시작하는 명령어를 쓰는 이유는 일반 대화와 명령을 구분하기 위해서입니다.

중요한 제약이 하나 있습니다. 3초 응답 제한입니다. 이걸 놓치면 봇이 간헐적으로 멈추는 문제가 생기고, 원인 찾는 데 시간을 많이 씁니다. 오래 걸리는 작업은 비동기 처리나 캐싱으로 분리하는 게 안전합니다.

카카오톡 오픈채팅 봇 api

주요 카카오 서비스별 API

카카오 서비스별 API

카카오 로그인 API

카카오 로그인 API는 소셜 로그인 기능입니다. OAuth 2.0 기반으로 설계되어 있고, 사용자는 ‘카카오로 로그인하기’ 버튼만 누르면 아이디·비밀번호 입력 없이 로그인할 수 있습니다. 가입 전환율이 올라가는 이유가 여기 있습니다.

인증 흐름은 아래 순서로 진행됩니다.

  1. 사용자 요청 로그인 버튼 클릭
  2. 카카오 인증 페이지 이동 카카오 로그인 화면으로 이동
  3. 개인정보 제공 동의 제공 항목 확인 후 동의
  4. 인가 코드 발급 임시 코드가 서비스 서버로 전달
  5. 액세스 토큰 요청 인가 코드로 토큰 발급 요청
  6. 사용자 정보 획득 및 로그인 완료 토큰으로 사용자 정보 조회 후 로그인 처리

토큰은 두 종류가 있습니다.

  • 액세스 토큰 실제 API 호출 권한이다. 유효기간이 짧다(약 6시간)
  • 리프레시 토큰 액세스 토큰 재발급용이다. 유효기간이 길다(약 2개월)

가져올 수 있는 정보는 동의 범위에 따라 달라집니다. 닉네임, 프로필 이미지, 이메일, 연령대 같은 항목은 사용자가 명시적으로 동의해야 접근 가능합니다. 웹·iOS·Android 모두 지원합니다.

카카오 로그인 api

카카오맵 API

카카오맵 API는 지도 데이터를 외부 서비스에 붙일 수 있게 해주는 API입니다. 부동산 매물 지도, 배달앱 위치 표시 같은 기능이 대표적입니다. 2024년 4월 기준 카카오맵 MAU가 약 1,171만 명 수준으로 알려져 있습니다.

카카오맵 API는 목적에 따라 네 가지로 나뉩니다.

  1. Web API 웹 페이지에 동적 지도 표시
  2. Local API 장소 검색, 주소-좌표 변환
  3. Mobility API 길찾기 특화
  4. Static Map API 지도 이미지를 생성

웹에서 지도 표시 자체는 직관적입니다. kakao.maps.Map 객체를 만들고, 지도가 들어갈 영역과 중심 좌표, 확대 수준만 지정하면 됩니다. 타일 방식이라 로딩도 빠른 편입니다.

커스터마이즈도 강점입니다. 마커 이미지를 바꾸거나 도형을 그릴 수 있고, 마커가 많다면 클러스터링 기능을 고려하시는 게 좋습니다. 화면이 훨씬 깔끔해집니다.

다만 무료 API는 월간 총 호출 300,000회 제한이 있습니다. 사용량이 늘면 유료 플랜이나 제휴 계약을 검토해야 합니다.

FAQ

Q1: 카카오 알림톡과 친구톡의 가장 큰 차이점은 무엇인가요?

A1: 목적과 규제가 다릅니다. 알림톡은 주문·예약·배송 같은 정보성 메시지만 가능하고 광고성 내용은 불가합니다. 그리고 카카오 승인 템플릿만 사용해야 합니다. 친구톡은 광고성 메시지 발송이 가능하지만, 광고 수신 동의가 필요하고 080 수신거부 번호 표기가 의무입니다.

Q2: 카카오맵 API를 사용하려면 비용을 내야 하나요?

A2: 기본은 무료지만 사용량 제한이 있습니다. 무료 플랜은 월간 총 호출 300,000회 제한입니다. 상업 서비스용 유료 플랜은 월 과금 구조로 제공되며, 기본 구간은 대략 수십만 원 수준에서 시작합니다. 정확한 금액과 조건은 카카오맵·카카오모빌리티 공식 요금 안내를 참고하는 것이 가장 확실합니다.

Q3: REST API 키를 안전하게 관리하는 것이 왜 중요한가요?

A3: REST API 키는 앱을 식별하는 열쇠입니다. 유출되면 호출량 소진으로 서비스가 멈추거나, 앱 사칭으로 스팸 발송 같은 사고가 날 수 있습니다. 공개 저장소에 올리지 말고, 서버 환경 변수나 보안 저장소에 보관해야 합니다.

Q4: 카카오톡 챗봇은 일반 1:1 채팅방에서도 만들 수 있나요?

A4: 카카오에서 공식 제공하는 챗봇 API는 오픈채팅방 전용입니다. 일반 1:1 채팅이나 그룹 채팅방에서 개인이 자유롭게 운영하는 봇 API는 제공되지 않습니다. 기업용 카카오톡 채널 챗봇은 별도 서비스로 존재합니다.

Q5: 제 서비스가 카카오 API의 일일 호출 한도(Quota)를 초과하면 어떻게 되나요?

A5: 한도를 넘으면 API가 오류를 반환하고 관련 기능이 멈춥니다. 지도 API 쿼터를 초과하면 지도가 표시되지 않는 식입니다. 다음 날 초기화될 때까지 기다리거나, 유료 플랜으로 전환해 쿼터를 올려야 합니다.

카카오 API는 이제 단순한 개발 도구라기보다, 서비스 아이디어를 빠르게 구현하고 운영까지 이어가게 해주는 인프라에 가깝습니다. 다만 키 관리, 쿼터, 정책 같은 기본을 놓치면 “갑자기 안 됩니다” 같은 문제가 생깁니다. 처음 붙일 때부터 보안과 제한 조건까지 같이 잡아두시는 게 가장 안전합니다.

Similar Posts