본문 바로가기메인 메뉴 바로가기사이드 메뉴 바로가기

kakao developers

관련사이트

사이드 메뉴

카카오맵

검색

카카오톡 채널

이 문서는 기존 버전의 카카오톡 채널 REST API 사용 방법을 안내합니다.

카카오톡 채널 관계 조회

기본 정보
메서드URL인증 방식
GEThttps://kapi.kakao.com/v1/api/talk/channels액세스 토큰
서비스 앱 어드민 키

현재 로그인한 사용자와 앱에 연결된 카카오톡 채널의 친구 관계를 확인합니다.

카카오톡 채널 웹훅

사용자가 서비스와 연결된 카카오톡 채널을 추가 또는 차단했을 때 알림을 받으려면 카카오톡 채널 웹훅을 사용합니다.

사용자 액세스 토큰(Access Token)을 헤더에 담아 GET으로 요청합니다. 서비스 서버에서 관리자가 요청할 경우, 앱별 어드민 키(Admin Key)로 특정 사용자의 카카오톡 채널 관계를 확인할 수 있습니다. 어드민 키는 보안에 유의해야 하므로 서버에서의 호출 시에만 사용해야 합니다.

특정 카카오톡 채널의 정보만 받아보려면 channel_public_ids 파라미터로 해당 카카오톡 채널의 프로필 ID를 지정하여 요청합니다.

응답은 JSON 형식이며 사용자가 추가 또는 차단한 카카오톡 채널 중, 서비스 앱과 연결된 카카오톡 채널에 한해 정보를 제공합니다. 응답의 각 카카오톡 채널 정보는 사용자와 카카오톡 채널의 현재 추가 상태, 변경 시점과 같은 자세한 정보를 포함합니다.

사용자가 [카카오톡 채널 추가 상태 및 내역] 동의항목에 동의하지 않아 에러 응답을 받았을 경우, 동의항목 추가 동의 요청 기능을 사용해 사용자에게 다시 동의를 요청할 수 있습니다.

요청: 액세스 토큰 방식

헤더
이름설명필수
AuthorizationAuthorization: Bearer ${ACCESS_TOKEN}
인증 방식, 액세스 토큰으로 인증 요청
O
쿼리 파라미터
이름타입설명필수
channel_public_idsString[]사용자와의 친구 관계를 확인할 카카오톡 채널의 프로필 ID 목록

참고: 카카오톡 채널 프로필 ID 확인 방법
X

요청: 서비스 앱 어드민 키 방식

헤더
이름설명필수
AuthorizationAuthorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}
인증 방식, 서비스 앱 어드민 키로 인증 요청
O
Content-TypeContent-Type: application/x-www-form-urlencoded;charset=utf-8
요청 데이터 타입
O
쿼리 파라미터
이름타입설명필수
target_id_typeString사용자 ID 타입, user_id로 고정O
target_idString회원번호O
channel_public_idsString[]사용자와의 친구 관계를 확인할 카카오톡 채널의 프로필 ID 목록
(기본값: 앱과 연결된 모든 카카오톡 채널의 프로필 ID 목록)

참고: 카카오톡 채널 프로필 ID 확인 방법
X

응답

본문
이름타입설명필수
user_idLong회원번호O
channelsChannels[]카카오톡 채널 정보X
Channels
이름타입설명필수
channel_uuidString카카오톡 채널의 검색용 IDO
channel_public_idString카카오톡 채널 프로필 IDO
relationString카카오톡 채널과 사용자 관계
ADDED: 카카오톡 채널이 추가된 상태
BLOCKED: 카카오톡 채널이 차단된 상태
NONE: 카카오톡 채널이 추가되거나 차단된 적 없는 상태
O
created_atDatetime카카오톡 채널 추가 시간, UTC*
카카오톡 채널이 추가(ADDED) 상태인 경우만 포함
X
updated_atDatetime카카오톡 채널 상태 변경 시간, UTC*
카카오톡 채널이 추가(ADDED) 또는 차단(BLOCKED)된 상태일 경우만 포함
X
* UTC: 한국 시간(KST)과 9시간 차이, RFC3339: Date and Time on the Internet 참고

예제

요청: 액세스 토큰 방식
curl -v -G GET "https://kapi.kakao.com/v1/api/talk/channels" \
-H "Authorization: Bearer ${ACCESS_TOKEN}" \
--data-urlencode 'channel_public_ids=["_frxjem","_xnrxjem","_Brxjem"]'
요청: 서비스 앱 어드민 키 방식
curl -v -G GET "https://kapi.kakao.com/v1/api/talk/channels" \
-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \
-d "target_id_type=user_id" \
-d "target_id=${USER_ID}" \
--data-urlencode 'channel_public_ids=["_frxjem","_xnrxjem","_Brxjem"]'
응답: 성공
HTTP/1.1 200 OK
{
"user_id": 1111111,
"channels": [
{
"channel_uuid": "@테스트",
"channel_public_id": "_ZeUTxl",
"relation": "ADDED", // ADDED, BLOCKED, NONE 중 하나
"created_at": "2020-04-18T03:17:05Z", // ADDED 상태일 때만 존재
"updated_at": "2021-05-17T05:25:01Z" // ADDED, BLOCKED 상태일 때만 존재
},
...
]
}
응답: 실패, 카카오톡 미사용자를 대상으로 요청한 경우
HTTP/1.1 400 Bad Request
{
"msg": "given account is not connected to any talk user.",
"code": -501
}

도움이 되었나요?