사이드 메뉴
커뮤니케이션
API 제공
어드민 API
REST API
이 문서는 카카오 또는 공동체 서비스용 카카오톡 오픈채팅 REST API 사용법을 안내합니다.
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/create/link공동체 https://kapi.kakao.com/v1/internal/talk/openchat/create/link외부 https://kapi.kakao.com/v1/api/talk/openchat/create/link | 액세스 토큰 서비스 앱 어드민 키 위임 |
방장이 될 사용자가 카카오톡 오픈채팅을 생성합니다. 한 사용자는 최대 10개의 카카오톡 오픈채팅을 생성할 수 있습니다. 생성한 카카오톡 오픈채팅의 ID는 사용자의 채팅방 입장과 퇴장, 메시지와 피드 등록 등 카카오톡 오픈채팅 API 전반에 사용됩니다.
원하는 인증 정보를 헤더에 담아 POST로 요청하고, 성공 시 카카오톡 오픈채팅 ID를 받습니다. link_type 파라미터를 사용해 카카오톡 오픈채팅의 타입을 지정할 수 있습니다. 이해하기를 참고합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_name | String | 카카오톡 오픈채팅 이름, 최대 30자 | O |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL 1125X2346 크기, JPG 포맷(Format), 400KB 이하 권장 이미지 용량 제한 참고 | X |
| link_push_alert | Boolean | 카카오톡 오픈채팅 알림 설정(기본값: true) | X |
| link_description | String | 카카오톡 오픈채팅 설명, 최대 80자 | X |
| link_type | String | 카카오톡 오픈채팅 타입 DIRECT: 1대 1 채팅방 MULTI: 그룹 채팅방 (기본값: MULTI) | X |
| nickname | String | 카카오톡 오픈채팅 생성자(방장) 닉네임, 최대 20자 | O |
| profile_image | String | 카카오톡 오픈채팅 생성자(방장)의 프로필 이미지 URL 이미지 용량 제한 참고 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 방장이 될 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_name | String | 카카오톡 오픈채팅 이름, 최대 30자 | O |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL 1125X2346 크기, JPG 포맷(Format), 400KB 이하 권장 이미지 용량 제한 참고 | X |
| link_push_alert | Boolean | 카카오톡 오픈채팅 알림 설정(기본값: true) | X |
| link_description | String | 카카오톡 오픈채팅 설명, 최대 80자 | X |
| link_type | String | 카카오톡 오픈채팅 타입 DIRECT: 1대 1 채팅방 MULTI: 그룹 채팅방 (기본값: MULTI) | X |
| nickname | String | 카카오톡 오픈채팅 생성자(방장) 닉네임, 최대 20자 | O |
| profile_image | String | 카카오톡 오픈채팅 생성자(방장)의 프로필 이미지 URL 이미지 용량 제한 참고 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| target_access_token | String | 방장이 될 사용자의 액세스 토큰 값 | O(Optional) |
| target_id | String | 방장이 될 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_name | String | 카카오톡 오픈채팅 이름, 최대 30자 | O |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL 1125X2346 크기, JPG 포맷(Format), 400KB 이하 권장 이미지 용량 제한 참고 | X |
| link_push_alert | Boolean | 카카오톡 오픈채팅 알림 설정(기본값: true) | X |
| link_description | String | 카카오톡 오픈채팅 설명, 최대 80자 | X |
| link_type | String | 카카오톡 오픈채팅 타입 DIRECT: 1대 1 채팅방 MULTI: 그룹 채팅방 (기본값: MULTI) | X |
| nickname | String | 카카오톡 오픈채팅 생성자(방장) 닉네임, 최대 20자 | O |
| profile_image | String | 카카오톡 오픈채팅 생성자(방장)의 프로필 이미지 URL 이미지 용량 제한 참고 | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| link_url | String | 해당 카카오톡 오픈채팅 채팅방에 진입 가능한 링크 URL | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/create/link" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_name=name" \-d "link_image=http://..." \-d "nickname=nickname"
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname) - 카카오톡 오픈채팅 타입(
link_type): 1:1 채팅방
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/create/link" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_name=name" \-d "link_image=http://..." \-d "nickname=nickname" \-d "link_type=DIRECT"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/create/link" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_name=name" \-d "link_image=http://..." \-d "nickname=nickname"
요청: 위임 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 서비스 앱 키(
target_app_key) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/create/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_key=${SERVICE_APP_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_name=name" \-d "link_image=http://..." \-d "nickname=nickname"
요청: 위임 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 서비스 앱 ID(
target_app_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/create/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_id=224794" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_name=name" \-d "link_image=http://..." \-d "nickname=nickname"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/create/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_access_token=${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_name=name" \-d "link_image=http://..." \-d "nickname=nickname"
응답
{"link_id": 123446575676,"link_url": "https://open.kakao.com/..."}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/update/link공동체 https://kapi.kakao.com/v1/internal/talk/openchat/update/link외부 https://kapi.kakao.com/v1/api/talk/openchat/update/link | 액세스 토큰 서비스 앱 어드민 키 위임 |
방장인 사용자가 카카오톡 오픈채팅의 기본 정보를 변경합니다.
원하는 인증 정보를 헤더에 담아 POST로 요청합니다. 변경 가능한 기본 정보는 이름, 커버 이미지 URL, 설명 세 가지이며 일부 항목만 변경할 수도 있습니다. 성공 시 응답은 변경된 카카오톡 오픈채팅의 기본 정보를 포함합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| link_name | String | 카카오톡 오픈채팅 이름, 최대 30자 | X |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL 1125X2346 크기, JPG 포맷(Format), 400KB 이하 권장 이미지 용량 제한 참고 | X |
| link_description | String | 카카오톡 오픈채팅 설명, 최대 80자 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 방장 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| link_name | String | 카카오톡 오픈채팅 이름, 최대 30자 | X |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL 1125X2346 크기, JPG 포맷(Format), 400KB 이하 권장 이미지 용량 제한 참고 | X |
| link_description | String | 카카오톡 오픈채팅 설명, 최대 80자 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| target_access_token | String | 방장인 사용자의 액세스 토큰 값 | O(Optional) |
| target_id | String | 방장인 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| link_name | String | 카카오톡 오픈채팅 이름, 최대 30자 | X |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL 1125X2346 크기, JPG 포맷(Format), 400KB 이하 권장 이미지 용량 제한 참고 | X |
| link_description | String | 카카오톡 오픈채팅 설명, 최대 80자 | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| link_url | String | 해당 카카오톡 오픈채팅 채팅방에 진입 가능한 링크 URL | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 카카오톡 오픈채팅 설명(
link_description)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/link" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=118593" \-d "link_name=test_name" \-d "link_image=http://..." \-d "link_description=test_description"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 카카오톡 오픈채팅 설명(
link_description)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/link" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=118593" \-d "link_name=test_name" \-d "link_image=http://..." \-d "link_description=test_description"
요청: 위임 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 서비스 앱 키(
target_app_key) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 카카오톡 오픈채팅 설명(
link_description)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_key=${SERVICE_APP_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=118593" \-d "link_name=test_name" \-d "link_image=http://..." \-d "link_description=test_description"
요청: 위임 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 서비스 앱 ID(
target_app_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 카카오톡 오픈채팅 설명(
link_description)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_id=224794" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=118593" \-d "link_name=test_name" \-d "link_image=http://..." \-d "link_description=test_description"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 이름(
link_name) - 카카오톡 오픈채팅 커버 이미지(
link_image) - 방장 사용자 닉네임(
nickname)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_access_token=${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=118593" \-d "link_name=test_name" \-d "link_image=http://..." \-d "link_description=test_description"
응답
{"link_id": 119685,"link_url": "https://alpha-open.kakao.com/o/gkYosi"}
| 메서드 | URL | 인증 방식 |
|---|---|---|
DELETE | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/delete/link공동체 https://kapi.kakao.com/v1/internal/talk/openchat/delete/link외부 https://kapi.kakao.com/v1/api/talk/openchat/delete/link | 액세스 토큰 서비스 앱 어드민 키 위임 |
카카오톡 오픈채팅을 삭제합니다. 방장인 사용자만 카카오톡 오픈채팅을 삭제할 수 있습니다. 카카오톡 오픈채팅 삭제 시 연결된 오픈채팅 채팅방이 멤버가 남아있는 상태로 유지되지만, 방장인 사용자가 퇴장됩니다. 카카오톡 오픈채팅 ID가 삭제되므로 더 이상 채팅방 입장 API로 사용자가 해당 오픈채팅에 입장할 수 없습니다.
원하는 인증 정보를 헤더에 담아 DELETE로 요청하고, 성공 시 삭제한 카카오톡 오픈채팅 ID를 받습니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 방장 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| target_access_token | String | 방장인 사용자의 액세스 토큰 값 | O(Optional) |
| target_id | String | 방장인 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 도메인 ID(
curl -v -G -X DELETE "http://kapi.kakao.com/v1/internal/talk/openchat/delete/link" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543&link_id=123446575676"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 방장 사용자 ID(
target_id) - 방장 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 방장 사용자 ID(
curl -v -G -X DELETE "http://kapi.kakao.com/v1/internal/talk/openchat/delete/link" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "target_id_type=user_id" \-d "target_id=787573"
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 방장 사용자 ID(
target_id) - 방장 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 서비스 앱 키(
curl -v -G -X DELETE "http://kapi.kakao.com/v1/internal/talk/openchat/delete/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "target_app_key=${SERVICE_APP_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573"
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 방장 사용자 ID(
target_id) - 방장 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 서비스 앱 ID(
curl -v -G -X DELETE "http://kapi.kakao.com/v1/internal/talk/openchat/delete/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "target_app_id=224794" \-d "target_id_type=user_id" \-d "target_id=787573"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 액세스 토큰(
curl -v -G -X DELETE "http://kapi.kakao.com/v1/internal/talk/openchat/delete/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "target_access_token=${ACCESS_TOKEN}"
응답
{"link_id": 123446575676}
| 메서드 | URL | 인증 방식 |
|---|---|---|
GET / POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/list/link공동체 https://kapi.kakao.com/v1/internal/talk/openchat/list/link외부 https://kapi.kakao.com/v1/api/talk/openchat/list/link | 액세스 토큰 서비스 앱 어드민 키 위임 |
특정 도메인 ID 하위에 생성된 오픈채팅 또는 지정한 오픈채팅 ID에 대한 정보를 조회합니다. 현재 응답은 오픈채팅 ID만 제공하며, 추후 응답 정보가 추가될 예정입니다.
헤더에 앱 어드민 키를 담아 GET 또는 POST로 요청합니다. 도메인 ID(domain_id)를 반드시 포함해야 하며, 선택 파라미터인 link_ids로 정보를 조회할 오픈채팅을 지정할 수 있습니다. 응답은 삭제되지 않은 링크만 포함하므로, 오픈채팅 ID를 지정해 요청하면 해당 오픈채팅의 삭제 여부를 확인할 수 있습니다.
오픈채팅 조회 API 요청 성공 시 도메인 ID에 해당하는 오픈채팅 정보를 배열로 받습니다. domain_id 또는 link_ids의 조회 조건을 만족하는 오픈채팅이 없는 경우 빈 배열을 받습니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_ids | Long[] | 조회할 카카오톡 오픈채팅 ID 목록 도메인 ID 하위의 오픈채팅 전체 조회가 아닌 특정 오픈채팅 ID에 대한 정보를 조회하고자 할 때 사용 조회하고자 하는 오픈채팅 ID를 배열 형식으로 전달 (예: [123446575676,325687324810]) | X |
| order | String | 결과 정렬 기준, 오픈채팅 생성 순서 기준, link_ids로 조회 대상을 지정한 경우 지원되지 않는 파라미터, 아래 중 하나
DESC) | X |
| from_id | Long | 조회 기준, link_ids로 조회 대상을 지정한 경우 지원되지 않는 파라미터from_id보다 큰 link_id의 오픈채팅 ID 정보만 응답에 포함됨from_id에 해당하는 오픈채팅 ID는 응답에 포함되지 않음 | X |
| limit | Integer | 조회할 오픈채팅 ID 수, link_ids로 조회 대상을 지정한 경우 지원되지 않는 파라미터limit을 초과하는 수의 오픈채팅이 존재할 경우, from_id를 사용해 이후 결과 조회 가능(기본값: 30, 최대값: 50) | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key - 서비스 앱 ID:
target_app_id
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_ids | Long[] | 조회할 카카오톡 오픈채팅 ID 목록 도메인 ID 하위의 오픈채팅 전체 조회가 아닌 특정 오픈채팅 ID에 대한 정보를 조회하고자 할 때 사용 조회하고자 하는 오픈채팅 ID를 배열 형식으로 전달 (예: [123446575676,325687324810]) | X |
| order | String | 결과 정렬 기준, 오픈채팅 생성 순서 기준, link_ids로 조회 대상을 지정한 경우 지원되지 않는 파라미터, 아래 중 하나
DESC) | X |
| from_id | Long | 조회 기준, link_ids로 조회 대상을 지정한 경우 지원되지 않는 파라미터from_id보다 큰 link_id의 오픈채팅 ID 정보만 응답에 포함됨from_id에 해당하는 오픈채팅 ID는 응답에 포함되지 않음 | X |
| limit | Integer | 조회할 오픈채팅 ID 수, link_ids로 조회 대상을 지정한 경우 지원되지 않는 파라미터limit을 초과하는 수의 오픈채팅이 존재할 경우, from_id를 사용해 이후 결과 조회 가능(기본값: 30, 최대값: 50) | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| - | OpenLinkInfo[] | 오픈채팅 ID 목록 삭제된 오픈채팅의 정보는 응답에 포함되지 않음 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | X |
| link_name | String | 카카오톡 오픈채팅 이름 | X |
| link_image | String | 카카오톡 오픈채팅 커버 이미지 URL | X |
| link_description | String | 카카오톡 오픈채팅 설명 | X |
| direct_link | DirectLinkInfo | link_type이 DIRECT인 1:1 채팅방일 때 제공하는 추가 정보 | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| chatroom_limit | Integer | 해당 카카오톡 오픈채팅 하위에 생성 가능한 채팅방 수 | X |
| chatroom_count | Integer | 해당 카카오톡 오픈채팅 하위에 현재 생성된 채팅방 수 | X |
요청: 서비스 앱 어드민 키 방식
- 외부 API 요청
- 파라미터
- 도메인 ID(
domain_id)
- 도메인 ID(
curl -v -G GET "https://kapi.kakao.com/v1/api/talk/openchat/list/link" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543"
요청: 서비스 앱 어드민 키 방식
- 내부 API 요청
- 파라미터
- 도메인 ID(
domain_id)
- 도메인 ID(
curl -v -G GET "http://kapi.kakao.com/v1/internal/talk/openchat/list/link" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID 목록(
link_ids)
- 도메인 ID(
curl -v -G GET "http://kapi.kakao.com/v1/internal/talk/openchat/list/link" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_ids=[123446575676]"
요청: 위임 방식
- 파라미터
- 도메인 ID(
domain_id) - 서비스 앱 ID(
target_app_id)
- 도메인 ID(
curl -v -G GET "http://kapi.kakao.com/v1/internal/talk/openchat/list/link" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_id=977073" \-d "domain_id=98789343543"
응답
[{"link_id": 119684,"link_name": "Test link 1","link_image": "http://api1-kage.kakao.com/dn/brfNVA/bAOgq4B0dwk/rcqNinS3O0HCucV50ISB51/img.jpg","link_description": "Test link","link_type": "MULTI"},{"link_id": 119682,"link_name": "Test link 2","link_type": "MULTI"}// ...]
응답: 1:1 채팅방 타입 카카오톡 오픈채팅
[{"link_id": 119686,"link_name": "Direct Test","link_type": "DIRECT","direct_link": {"chatroom_limit": 50,"chatroom_count": 0}}]
응답: 조회 기준에 맞는 오픈채팅 없음
[]
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/join/link공동체 https://kapi.kakao.com/v1/internal/talk/openchat/join/link외부 https://kapi.kakao.com/v1/api/talk/openchat/join/link | 액세스 토큰 서비스 앱 어드민 키 위임 |
사용자가 카카오톡 오픈채팅에 참여합니다. 채팅방 생성 API로 만들어진 카카오톡 오픈채팅은 연결된 서비스 이용자만 참여할 수 있도록 제한되어 있으므로 채팅방 입장 API로만 참여 가능하고, 카카오톡 클라이언트에서 입장할 수 없습니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 사용자 ID와 사용자가 참여한 카카오톡 오픈채팅 ID를 받습니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| nickname | String | 카카오톡 오픈채팅에 참여할 사용자의 프로필 이름, 최대 20자 | O |
| profile_image | String | 카카오톡 오픈채팅에 참여할 사용자의 프로필 이미지 이미지 용량 제한 참고 | X |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| ignore_kick_status | Boolean | 카카오톡 오픈채팅에 참여할 사용자가 내보내기(Kick) 당한 상태인 경우의 참여 가능 여부, 아래 중 하나
true) | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 카카오톡 오픈채팅에 참여할 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| nickname | String | 카카오톡 오픈채팅에 참여할 사용자의 프로필 이름, 최대 20자 | O |
| profile_image | String | 카카오톡 오픈채팅에 참여할 사용자의 프로필 이미지 이미지 용량 제한 참고 | X |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| ignore_kick_status | Boolean | 카카오톡 오픈채팅에 참여할 사용자가 내보내기(Kick) 당한 상태인 경우의 참여 가능 여부, 아래 중 하나
true) | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 카카오톡 오픈채팅에 참여할 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| target_access_token | String | 카카오톡 오픈채팅에 참여할 사용자의 액세스 토큰 값 | O(Optional) |
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| nickname | String | 카카오톡 오픈채팅에 참여할 사용자의 프로필 이름, 최대 20자 | O |
| profile_image | String | 카카오톡 오픈채팅에 참여할 사용자의 프로필 이미지 이미지 용량 제한 참고 | X |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| ignore_kick_status | Boolean | 카카오톡 오픈채팅에 참여할 사용자가 내보내기(Kick) 당한 상태인 경우의 참여 가능 여부, 아래 중 하나
true) | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| link_url | String | 해당 카카오톡 오픈채팅 채팅방에 진입 가능한 링크 URL | O |
| user_id | Long | 카카오톡 오픈채팅에 참여한 사용자의 회원번호 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 사용자 닉네임(
nickname)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/join/link" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=member_nickname"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 사용자 닉네임(
nickname)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/join/link?target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=member_nickname"
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 사용자 닉네임(
nickname)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/join/link?target_app_key=${SERVICE_APP_KEY}&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=member_nickname"
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 사용자 닉네임(
nickname)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/join/link?target_app_id=224794&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=member_nickname"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 사용자 닉네임(
nickname)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/join/link?target_access_token=${ACCESS_TOKEN}" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=member_nickname"
응답
{"link_id": 123446575676,"link_url": "https://open.kakao.com/...","user_id": 12345}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/leave/link공동체 https://kapi.kakao.com/v1/internal/talk/openchat/leave/link외부 https://kapi.kakao.com/v1/api/talk/openchat/leave/link | 액세스 토큰 서비스 앱 어드민 키 위임 |
사용자가 카카오톡 오픈채팅 채팅방에서 퇴장합니다. 카카오톡 오픈채팅의 방장인 사용자는 채팅방 퇴장이 불가하며, 채팅방 삭제 API로만 퇴장할 수 있습니다. 단, 방장인 사용자를 포함해 모든 사용자는 카카오톡 서비스 내의 오픈채팅 대화방에서도 채팅방 퇴장할 수 있습니다. 방장이 퇴장한 경우 채팅방 삭제 API, 방장 외 사용자가 나간 경우 채팅방 퇴장 API로 처리됩니다.
현재 이 API는 1:1 채팅방 타입인 카카오톡 오픈채팅을 지원하지 않습니다. 이해하기를 참고합니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 사용자 ID와 사용자가 나간 카카오톡 오픈채팅 ID를 받습니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 카카오톡 오픈채팅에서 나갈 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 카카오톡 오픈채팅에서 나갈 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| target_access_token | String | 카카오톡 오픈채팅에서 나갈 사용자의 액세스 토큰 값 | O(Optional) |
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| user_id | Long | 카카오톡 오픈채팅에서 나간 사용자의 회원번호 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/leave/link" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/leave/link?target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676"
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/leave/link?target_app_key=${SERVICE_APP_KEY}&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676"
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/leave/link?target_app_id=224794&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/leave/link?target_access_token=${ACCESS_TOKEN}" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676"
응답
{"link_id": 123446575676,"user_id": 12345}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/update/profile공동체 https://kapi.kakao.com/v1/internal/talk/openchat/update/profile외부 https://kapi.kakao.com/v1/api/talk/openchat/update/profile | 액세스 토큰 서비스 앱 어드민 키 위임 |
카카오톡 오픈채팅 멤버의 프로필을 변경합니다. 일반적인 오픈채팅과 달리 카카오톡 오픈채팅의 프로필 변경하기는 API 요청으로만 가능하고, 사용자가 카카오톡 클라이언트에서 프로필을 직접 변경할 수 없습니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 사용자 ID와 사용자가 참여 중인 카카오톡 오픈채팅 ID를 받습니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| nickname | String | 변경할 사용자의 닉네임, 최대 20자 | O |
| profile_image | String | 변경할 사용자의 프로필 이미지 이미지 용량 제한 참고 | X |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 프로필을 변경할 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| nickname | String | 변경할 사용자의 닉네임, 최대 20자 | O |
| profile_image | String | 변경할 사용자의 프로필 이미지 이미지 용량 제한 참고 | X |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 프로필을 변경할 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| target_access_token | String | 프로필을 변경할 사용자의 액세스 토큰 값 | O |
| target_app_key | String | 서비스 앱 키 | O |
| target_app_id | String | 서비스 앱 ID | O |
| nickname | String | 변경할 사용자의 닉네임, 최대 20자 | O |
| profile_image | String | 변경할 사용자의 프로필 이미지 이미지 용량 제한 참고 | X |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| user_id | Long | 프로필을 변경한 사용자의 회원번호 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 변경할 사용자 닉네임(
nickname)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/profile" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=nickname2"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 카카오계정 ID(account_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 변경할 사용자 닉네임(
nickname)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/profile?target_id_type=account_id&target_id=787573" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=nickname2"
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 변경할 사용자 닉네임(
nickname)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/profile?target_app_key=${SERVICE_APP_KEY}&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=nickname2"
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 변경할 사용자 닉네임(
nickname)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/profile?target_app_id=224794&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=nickname2"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 변경할 사용자 닉네임(
nickname)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/update/profile?target_access_token=${ACCESS_TOKEN}" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "nickname=nickname2"
응답
{"link_id": 123446575676,"user_id": 12345}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/reassign/host공동체 https://kapi.kakao.com/v1/internal/talk/openchat/reassign/host외부 https://kapi.kakao.com/v1/api/talk/openchat/reassign/host | 액세스 토큰 서비스 앱 어드민 키 |
카카오톡 오픈채팅의 방장을 변경합니다. 해당 카카오톡 오픈채팅의 방장이고, 오픈채팅 사용 불가 상태가 아닌 사용자만 방장 변경을 요청할 수 있습니다. 방장 변경은 하루에 한 번만 가능합니다.
원하는 인증 정보를 헤더에 담아 POST로 요청합니다. 기존 방장인 사용자의 ID 또는 액세스 토큰, 새 방장이 될 사용자의 ID를 전달해야 합니다.
요청 성공 시 응답은 기존 방장과 새 방장인 사용자의 회원번호, 카카오톡 오픈채팅 ID를 포함합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| target_id | String | 새 방장이 될 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| host_id | String | 기존 방장인 사용자의 ID | O |
| host_id_type | String | host_id 타입, 아래 중 하나
| O |
| target_id | String | 새 방장이 될 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| user_ids | String[] | 멤버 권한이 변경된 사용자 회원번호 목록 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 새 방장이 될 사용자의 ID(
target_id) - 새 방장이 될 사용자의 ID 타입(
target_id_type)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/reassign/host" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "target_id=123456" \-d "target_id_type=user_id"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 기존 방장인 사용자의 ID(
host_id) - 기존 방장인 사용자의 ID 타입(
host_id_type) - 새 방장이 될 사용자의 ID(
target_id) - 새 방장이 될 사용자의 ID 타입(
target_id_type)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/reassign/host" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "host_id=123456" \-d "host_id_type=user_id" \-d "target_id=123456" \-d "target_id_type=user_id"
응답
// HTTP/1.1 200 OK{"link_id": 298187,"user_ids": [1376016924429446392, 1376016924429446390]}
응답: 실패, 오픈채팅에 참여 중이지 않은 사용자 대상으로 요청
// HTTP/1.1 403 Forbidden{"msg": "blocked action","code": -4}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/assign_remove/admin공동체 https://kapi.kakao.com/v1/internal/talk/openchat/assign_remove/admin외부 https://kapi.kakao.com/v1/api/talk/openchat/assign_remove/admin | 액세스 토큰 서비스 앱 어드민 키 |
카카오톡 오픈채팅의 부방장을 지정하거나 해제합니다. 부방장은 방장과 마찬가지로 각 카카오톡 오픈채팅의 관리자 역할이며, 최대 5명까지 지정할 수 있습니다. 방장인 사용자는 부방장으로 지정할 수 없으므로, 방장 변경으로 방장 변경 후 부방장으로 지정해야 합니다.
원하는 인증 정보를 헤더에 담아 POST로 요청합니다. 부방장 지정, 부방장 해제 중 한 가지 동작을 지정해 요청해야 합니다. 방장인 사용자의 ID, 부방장으로 지정할 사용자의 ID를 전달해야 합니다.
요청 성공 시 응답은 부방장으로 지정 또는 해제된 사용자 ID, 카카오톡 오픈채팅 ID를 포함합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| assign | Boolean | 요청할 동작
| O |
| target_ids | String | 부방장 지정 또는 해제할 사용자 ID 목록 | O |
| target_id_type | String | target_ids 타입, 아래 중 하나
user_id) | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| assign | Boolean | 요청할 동작
| O |
| host_id | String | 방장인 사용자의 ID | O |
| host_id_type | String | host_id 타입, 아래 중 하나
| O |
| target_ids | String | 부방장 지정 또는 해제할 사용자 ID 목록 | O |
| target_id_type | String | target_ids 타입, 아래 중 하나
user_id) | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| user_ids | String[] | 멤버 권한이 변경된 사용자 회원번호 목록 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 요청할 동작(
assign): 부방장 지정(true) - 방장인 사용자의 ID(
host_id) - 방장인 사용자의 ID 타입(
host_id_type) - 부방장이 될 사용자의 ID(
target_ids) - 부방장이 될 사용자의 ID 타입(
target_id_type)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/assign_remove/admin" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "assign=true" \-d "target_ids=[123456]" \-d "target_id_type=user_id"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 요청할 동작(
assign): 부방장 해제(false) - 방장인 사용자의 ID(
host_id) - 방장인 사용자의 ID 타입(
host_id_type) - 부방장이 될 사용자의 ID(
target_ids) - 부방장이 될 사용자의 ID 타입(
target_id_type)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v1/internal/talk/openchat/assign_remove/admin" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "assign=false" \-d "host_id=123456" \-d "host_id_type=user_id" \-d "target_ids=[123456]" \-d "target_id_type=user_id"
응답
// HTTP/1.1 200 OK{"link_id": 298187,"user_ids": [1376016924429446392]}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v2/internal/talk/openchat/feed/send공동체 https://kapi.kakao.com/v2/internal/talk/openchat/feed/send외부 https://kapi.kakao.com/v2/api/talk/openchat/feed/send | 액세스 토큰 서비스 앱 어드민 키 위임 |
서비스 관리자가 오픈채팅 링크에 피드(Feed)를 보냅니다. 피드는 "203호님이 나갔습니다"와 같은 카카오톡 채팅방에 나타나는 안내 형태의 메시지입니다. 피드를 사용해 서비스 공지사항이나 안내 메시지와 같은 정보를 카카오톡 오픈채팅에 전달할 수 있습니다.
현재 이 API는 1:1 채팅방 타입인 카카오톡 오픈채팅을 지원하지 않습니다. 이해하기를 참고합니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 result_code 0을 받습니다. 실패 시 에러 코드에서 원인을 확인합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| text | String | 피드 내용(Text), 80자 미만 | O |
| icon | String | 피드의 아이콘 이미지 URL 10MB 이하, 60*60의 png 형식 권장 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key - 서비스 앱 ID:
target_app_id
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| text | String | 피드 내용(Text), 80자 미만 | O |
| icon | String | 피드의 아이콘 이미지 URL 10MB 이하, 60*60의 png 형식 권장 | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| result_code | Integer | 전송 성공 시 0 | O |
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 보낼 피드 메시지 내용(
text)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/feed/send" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "text=9시부터 필드 보스 레이드가 시작됩니다."
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 보낼 피드 메시지 내용(
text)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/feed/send?target_app_key=${SERVICE_APP_KEY}" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "text=9시부터 필드 보스 레이드가 시작됩니다."
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 보낼 피드 메시지 내용(
text)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/feed/send?target_app_id=224794" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "text=9시부터 필드 보스 레이드가 시작됩니다."
응답
{"result_code": 0}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v2/internal/talk/openchat/message/default/send공동체 https://kapi.kakao.com/v2/internal/talk/openchat/message/default/send외부 https://kapi.kakao.com/v2/api/talk/openchat/message/default/send | 액세스 토큰 서비스 앱 어드민 키 위임 |
기본 템플릿을 적용한 메시지를 카카오톡 오픈채팅에 발송합니다. 메시지를 보내는 사용자는 카카오톡 오픈채팅의 멤버여야 합니다.
기본 템플릿은 피드, 리스트, 위치, 커머스, 텍스트, 캘린더 6가지를 지원하며, 메시지 구성 방법은 기본 템플릿을 참고합니다.
현재 이 API는 1:1 채팅방 타입인 카카오톡 오픈채팅을 지원하지 않습니다. 이해하기를 참고합니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 result_code 0을 받습니다. 실패 시 에러 코드에서 원인을 확인합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| template_object | JSON | 메시지 구성 요소를 담은 객체(Object) 피드, 리스트, 위치, 커머스, 텍스트, 캘린더 중 하나 | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 메시지를 보내는 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| template_object | JSON | 메시지 구성 요소를 담은 객체(Object) 피드, 리스트, 위치, 커머스, 텍스트, 캘린더 중 하나 참고 | O |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| target_access_token | String | 메시지를 보내는 사용자의 액세스 토큰 값 | O(Optional) |
| target_id | String | 메시지를 보내는 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| template_object | JSON | 메시지 구성 요소를 담은 객체(Object) 피드, 리스트, 위치, 커머스, 텍스트, 캘린더 중 하나 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| result_code | Integer | 전송 성공 시 0 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿(
template_object)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/default/send" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d 'template_object={"object_type": "feed","content": {"title": "강화 성공!","description": "진명황의 집행검 +6 강화에 성공했습니다.","image_url": "http://api1-kage.kakao.com/dn/cerDB5/ZSb2iRugKx/M4nuZxX823tnK1Mk5yVcv0/kakaolink40_original.png","link": {"web_url": "http://www.kakao.com","mobile_web_url": "http://www.kakao.com"}},"social": {"like_count": 100,"comment_count": 200},"button_title": "바로 확인"}'
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿(
template_object)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/default/send?target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d 'template_object={"object_type": "feed","content": {"title": "강화 성공!","description": "진명황의 집행검 +6 강화에 성공했습니다.","image_url": "http://api1-kage.kakao.com/dn/cerDB5/ZSb2iRugKx/M4nuZxX823tnK1Mk5yVcv0/kakaolink40_original.png","link": {"web_url": "http://www.kakao.com","mobile_web_url": "http://www.kakao.com"}},"social": {"like_count": 100,"comment_count": 200},"button_title": "바로 확인"}'
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿(
template_object)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/default/send?target_app_key=${SERVICE_APP_KEY}&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d 'template_object={"object_type": "feed","content": {"title": "강화 성공!","description": "진명황의 집행검 +6 강화에 성공했습니다.","image_url": "http://api1-kage.kakao.com/dn/cerDB5/ZSb2iRugKx/M4nuZxX823tnK1Mk5yVcv0/kakaolink40_original.png","link": {"web_url": "http://www.kakao.com","mobile_web_url": "http://www.kakao.com"}},"social": {"like_count": 100,"comment_count": 200},"button_title": "바로 확인"}'
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 회원번호(user_id) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿(
template_object)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/default/send?target_app_id=224794&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d 'template_object={"object_type": "feed","content": {"title": "강화 성공!","description": "진명황의 집행검 +6 강화에 성공했습니다.","image_url": "http://api1-kage.kakao.com/dn/cerDB5/ZSb2iRugKx/M4nuZxX823tnK1Mk5yVcv0/kakaolink40_original.png","link": {"web_url": "http://www.kakao.com","mobile_web_url": "http://www.kakao.com"}},"social": {"like_count": 100,"comment_count": 200},"button_title": "바로 확인"}'
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿(
template_object)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/default/send?target_access_token=${ACCESS_TOKEN}" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d 'template_object={"object_type": "feed","content": {"title": "강화 성공!","description": "진명황의 집행검 +6 강화에 성공했습니다.","image_url": "http://api1-kage.kakao.com/dn/cerDB5/ZSb2iRugKx/M4nuZxX823tnK1Mk5yVcv0/kakaolink40_original.png","link": {"web_url": "http://www.kakao.com","mobile_web_url": "http://www.kakao.com"}},"social": {"like_count": 100,"comment_count": 200},"button_title": "바로 확인"}'
응답
{"result_code": 0}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v2/internal/talk/openchat/message/send공동체 https://kapi.kakao.com/v2/internal/talk/openchat/message/send외부 https://kapi.kakao.com/v2/api/talk/openchat/message/send | 액세스 토큰 서비스 앱 어드민 키 위임 |
사용자 정의 템플릿을 적용한 메시지를 오픈채팅 링크에 발송합니다. 메시지를 보내는 사용자는 카카오톡 오픈채팅의 멤버여야 합니다.
사용자 정의 템플릿 구성 방법은 사용자 정의 템플릿을 참고합니다.
현재 이 API는 1:1 채팅방 타입인 카카오톡 오픈채팅을 지원하지 않습니다. 이해하기를 참고합니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 result_code 0을 받습니다. 실패 시 에러 코드에서 원인을 확인합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| template_id | Long | [도구] > [메시지 템플릿]에서 구성한 메시지 템플릿 ID (참고: 사용자 정의 템플릿) 채팅방을 대상으로 전송하므로 연결 상태와 무관하게 전송 가능한 "Both" 타입을 사용해야 함 | O |
| template_args | Map<String,String> | template_id로 지정한 메시지 템플릿에 사용자 인자를 사용한 경우, 전달 필수 key:value 형식으로 전달 (참고: 사용자 인자)중요: 사용자 정의 템플릿에 포함된 사용자 인자를 이 파라미터에 포함하지 않은 경우, 사용자 인자로 지정된 부분이 ${KEY} 형식으로 메시지에 그대로 노출중요: URL 쿼리 파라미터에 사용자 인자 사용 시, value에 해당하는 값에 폼 URL 인코딩(application/x-www-form-urlencoded) 적용 필요 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 메시지를 보내는 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| template_id | Long | [도구] > [메시지 템플릿]에서 구성한 메시지 템플릿 ID (참고: 사용자 정의 템플릿) 채팅방을 대상으로 전송하므로 연결 상태와 무관하게 전송 가능한 "Both" 타입을 사용해야 함 | O |
| template_args | Map<String,String> | template_id로 지정한 메시지 템플릿에 사용자 인자를 사용한 경우, 전달 필수 key:value 형식으로 전달 (참고: 사용자 인자)중요: 사용자 정의 템플릿에 포함된 사용자 인자를 이 파라미터에 포함하지 않은 경우, 사용자 인자로 지정된 부분이 ${KEY} 형식으로 메시지에 그대로 노출중요: URL 쿼리 파라미터에 사용자 인자 사용 시, value에 해당하는 값에 폼 URL 인코딩(application/x-www-form-urlencoded) 적용 필요 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| target_access_token | String | 메시지를 보내는 사용자의 액세스 토큰 값 | O(Optional) |
| target_id | String | 메시지를 보내는 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| template_id | Long | [도구] > [메시지 템플릿]에서 구성한 메시지 템플릿 ID (참고: 사용자 정의 템플릿) 채팅방을 대상으로 전송하므로 연결 상태와 무관하게 전송 가능한 "Both" 타입을 사용해야 함 | O |
| template_args | Map<String,String> | template_id로 지정한 메시지 템플릿에 사용자 인자를 사용한 경우, 전달 필수 key:value 형식으로 전달 (참고: 사용자 인자)중요: 사용자 정의 템플릿에 포함된 사용자 인자를 이 파라미터에 포함하지 않은 경우, 사용자 인자로 지정된 부분이 ${KEY} 형식으로 메시지에 그대로 노출중요: URL 쿼리 파라미터에 사용자 인자 사용 시, value에 해당하는 값에 폼 URL 인코딩(application/x-www-form-urlencoded) 적용 필요 | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| result_code | Integer | 전송 성공 시 0 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/send" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "template_id=123456" \-d 'template_args={"LEVEL":"78"}'
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/send?target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "template_id=123456" \-d 'template_args={"LEVEL":"78"}'
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/send?target_app_key=${SERVICE_APP_KEY}&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "template_id=123456" \-d 'template_args={"LEVEL":"78"}'
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/send?target_app_id=224794&target_id_type=user_id&target_id=787573" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "template_id=123456" \-d 'template_args={"LEVEL":"78"}'
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/send?target_access_token=${ACCESS_TOKEN}" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "template_id=123456" \-d 'template_args={"LEVEL":"78"}'
응답
{"result_code": 0}
| 메서드 | URL | 인증 방식 |
|---|---|---|
POST | 카카오http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send공동체 https://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send외부 https://kapi.kakao.com/v2/api/talk/openchat/message/scrap/send | 액세스 토큰 서비스 앱 어드민 키 위임 |
웹 페이지 스크랩 정보가 담긴 메시지를 오픈채팅 링크에 메시지를 발송합니다. 메시지를 보내는 사용자는 오픈채팅 링크의 멤버여야 합니다.
스크랩 메시지의 작동 원리는 스크랩 메시지를 참고합니다.
현재 이 API는 1:1 채팅방 타입인 카카오톡 오픈채팅을 지원하지 않습니다. 이해하기를 참고합니다.
헤더에 원하는 인증 정보를 담아 POST로 요청하고, 성공 시 result_code 0을 받습니다. 실패 시 에러 코드에서 원인을 확인합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: Bearer ${ACCESS_TOKEN}인증 방식, 액세스 토큰으로 인증 요청 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| request_url | String | 스크랩할 웹 페이지 URL 앱 관리 페이지의 [앱] > [제품 링크 관리] > [웹 도메인]에 등록한 도메인만 사용 가능 | O |
| template_id | Long | [도구] > [메시지 템플릿]에서 구성한 메시지 템플릿 ID 서비스에서 정의한 템플릿을 기반으로 스크랩 메시지를 보낼 경우 사용 (참고: 사용자 정의 템플릿) 채팅방을 대상으로 전송하므로 연결 상태와 무관하게 전송 가능한 "Both" 타입을 사용해야 함 | X |
| template_args | Map<String,String> | template_id로 지정한 메시지 템플릿에 사용자 인자를 사용한 경우, 전달 필수 key:value 형식으로 전달 (참고: 사용자 인자)중요: 사용자 정의 템플릿에 포함된 사용자 인자를 이 파라미터에 포함하지 않은 경우, 사용자 인자로 지정된 부분이 ${KEY} 형식으로 메시지에 그대로 노출중요: URL 쿼리 파라미터에 사용자 인자 사용 시, value에 해당하는 값에 폼 URL 인코딩(application/x-www-form-urlencoded) 적용 필요 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id | String | 메시지를 보내는 사용자 ID | O |
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| request_url | String | 스크랩할 웹 페이지 URL 앱 관리 페이지의 [앱] > [제품 링크 관리] > [웹 도메인]에 등록한 도메인만 사용 가능 | O |
| template_id | Long | [도구] > [메시지 템플릿]에서 구성한 메시지 템플릿 ID 서비스에서 정의한 템플릿을 기반으로 스크랩 메시지를 보낼 경우 사용 (참고: 사용자 정의 템플릿) 채팅방을 대상으로 전송하므로 연결 상태와 무관하게 전송 가능한 "Both" 타입을 사용해야 함 | X |
| template_args | Map<String,String> | template_id로 지정한 메시지 템플릿에 사용자 인자를 사용한 경우, 전달 필수 key:value 형식으로 전달 (참고: 사용자 인자)중요: 사용자 정의 템플릿에 포함된 사용자 인자를 이 파라미터에 포함하지 않은 경우, 사용자 인자로 지정된 부분이 ${KEY} 형식으로 메시지에 그대로 노출중요: URL 쿼리 파라미터에 사용자 인자 사용 시, value에 해당하는 값에 폼 URL 인코딩(application/x-www-form-urlencoded) 적용 필요 | X |
- 내부 API 요청 시에만 사용 가능합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}인증 방식, 플랫폼 앱 어드민 키로 인증 요청 서비스 앱의 권한을 플랫폼 앱이 위임받아 요청하는 방식으로 내부 API 요청 시 사용 가능 서비스 구분을 위해 서비스 앱의 앱 ID, 앱 키, 토큰 중 하나 파라미터로 전달 필요 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
- 요청 대상 사용자를 어떤 파라미터로 지정하는지에 따라 필수 파라미터 구성이 달라집니다.
- 서비스 앱 키:
target_app_key,target_id,target_id_type - 서비스 앱 ID:
target_app_id,target_id,target_id_type - 액세스 토큰:
target_access_token
- 서비스 앱 키:
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_app_key | String | 서비스 앱 키 | O(Optional) |
| target_app_id | String | 서비스 앱 ID | O(Optional) |
| target_access_token | String | 메시지를 보내는 사용자의 액세스 토큰 값 | O(Optional) |
| target_id | String | 메시지를 보내는 사용자 ID | O(Optional) |
| target_id_type | String | target_id 타입, 아래 중 하나
| O(Optional) |
| domain_id | Long | 도메인 ID | O |
| link_id | Long | 카카오톡 오픈채팅 ID | O |
| request_url | String | 스크랩할 웹 페이지 URL 앱 관리 페이지의 [앱] > [제품 링크 관리] > [웹 도메인]에 등록한 도메인만 사용 가능 | O |
| template_id | Long | [도구] > [메시지 템플릿]에서 구성한 메시지 템플릿 ID 서비스에서 정의한 템플릿을 기반으로 스크랩 메시지를 보낼 경우 사용 (참고: 사용자 정의 템플릿) 채팅방을 대상으로 전송하므로 연결 상태와 무관하게 전송 가능한 "Both" 타입을 사용해야 함 | X |
| template_args | Map<String,String> | template_id로 지정한 메시지 템플릿에 사용자 인자를 사용한 경우, 전달 필수 key:value 형식으로 전달 (참고: 사용자 인자)중요: 사용자 정의 템플릿에 포함된 사용자 인자를 이 파라미터에 포함하지 않은 경우, 사용자 인자로 지정된 부분이 ${KEY} 형식으로 메시지에 그대로 노출중요: URL 쿼리 파라미터에 사용자 인자 사용 시, value에 해당하는 값에 폼 URL 인코딩(application/x-www-form-urlencoded) 적용 필요 | X |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| result_code | Integer | 전송 성공 시 0 | O |
요청: 액세스 토큰 방식
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com"
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com"
요청: 위임 방식
- 파라미터
- 서비스 앱 키(
target_app_key) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_key=${SERVICE_APP_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com"
요청: 위임 방식
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_id=224794" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com"
요청: 위임 방식
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_access_token=${ACCESS_TOKEN}"-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com"
요청: 액세스 토큰 방식, 사용자 정의 템플릿 사용
- 파라미터
- 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 도메인 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: Bearer ${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com" \-d "template_id=123456" \-d 'template_args={"TITLE":"겨울방학 이벤트 자세히 보기"}'
요청: 서비스 앱 어드민 키 방식, 사용자 정의 템플릿 사용
- 파라미터
- 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 사용자 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "?target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com" \-d "template_id=123456" \-d 'template_args={"TITLE":"겨울방학 이벤트 자세히 보기"}'
요청: 위임 방식, 사용자 정의 템플릿 사용
- 파라미터
- 서비스 앱 키(
target_app_key) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 서비스 앱 키(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_key=${SERVICE_APP_KEY}" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com" \-d "template_id=123456" \-d 'template_args={"TITLE":"겨울방학 이벤트 자세히 보기"}'
요청: 위임 방식, 사용자 정의 템플릿 사용
- 파라미터
- 서비스 앱 ID(
target_app_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 서비스 앱 ID(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_app_id=224794" \-d "target_id_type=user_id" \-d "target_id=787573" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com" \-d "template_id=123456" \-d 'template_args={"TITLE":"겨울방학 이벤트 자세히 보기"}'
요청: 위임 방식, 사용자 정의 템플릿 사용
- 파라미터
- 액세스 토큰(
target_access_token) - 도메인 ID(
domain_id) - 카카오톡 오픈채팅 ID(
link_id) - 스크랩할 URL(
request_url) - 메시지 템플릿 ID(
template_id) - 사용자 정의 Argument(
template_args)
- 액세스 토큰(
curl -v -X POST "http://kapi.kakao.com/v2/internal/talk/openchat/message/scrap/send" \-H "Authorization: KakaoAK ${DELEGATOR_APP_ADMIN_KEY}" \-d "target_access_token=${ACCESS_TOKEN}" \-d "domain_id=98789343543" \-d "link_id=123446575676" \-d "request_url=http://www.kakao.com" \-d "template_id=123456" \-d 'template_args={"TITLE":"겨울방학 이벤트 자세히 보기"}'
응답
{"result_code": 0}
| 메서드 | URL | 인증 방식 |
|---|---|---|
GET | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/compare/vid공동체 https://kapi.kakao.com/v1/internal/talk/openchat/compare/vid | 서비스 앱 어드민 키 |
특정 사용자의 카카오톡 오픈채팅 v_id와 카카오계정 ID(account_id)가 동일한 카카오계정에 해당하는지 검증합니다. 이 API는 아래와 같은 목적으로 사용합니다.
- 카카오톡 오픈채팅에서 송금 시 송금자 및 수신자인 사용자 검증
v_id는 카카오톡 오픈채팅의 사용자 식별자- 서비스에 사용자의
v_id와 카카오계정 ID가 모두 제공하더라도, 필요에 따라 API로 사용자 검증 가능 - 사용자가 오픈채팅방에서 나간 경우에도 검증 시 기존
v_id사용 가능
서비스 앱 어드민 키를 헤더에 담아 GET으로 요청합니다. 이 API는 내부 API만 제공하므로 카카오페이 서비스 서버에서 요청해야 합니다. 요청 시 검증 대상 사용자의 v_id와 카카오계정 ID를 필수 전달해야 합니다.
요청 성공 시 응답은 v_id와 카카오계정 ID가 동일한 카카오계정에 해당하는지 여부를 is_matched 필드 값으로 반환하며, 해당 값이 true라면 v_id와 카카오계정 ID가 동일한 카카오계정에 해당합니다. 카카오페이를 사용하지 않는 사용자인 경우, HTTP 상태 코드 400 에러를 반환합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| v_id | Long | 카카오톡 오픈채팅의 사용자 식별자 | O |
| target_id | String | 사용자의 카카오계정 ID | O |
| target_id_type | String | target_id 타입카카오계정 ID( account_id)로 고정참고: ID 종류 | O |
| 이름 | 타입 | 설명 |
|---|---|---|
| is_matched | Boolean | v_id와 카카오계정 ID가 동일한 카카오계정에 해당하는지 여부
|
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 카카오톡 오픈채팅의 사용자 식별자(
v_id) - 사용자 ID(
target_id) - 사용자 ID 타입(
target_id_type): 카카오계정 ID
- 카카오톡 오픈채팅의 사용자 식별자(
curl -v -G GET "http://kapi.kakao.com/v1/internal/talk/openchat/compare/vid" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "v_id=123456" \-d "target_id=123456" \-d "target_id_type=account_id"
응답: 동일한 카카오계정에 해당함
// HTTP/1.1 200 OK{"is_matched": true}
응답: 실패, 동일한 카카오계정에 해당하지 않음
// HTTP/1.1 200 OK{"is_matched": false}
응답: 실패, 연결되지 않은 사용자
// HTTP/1.1 400 Bad Request{"msg": "NotRegisteredUserException","code": -101}
| 메서드 | URL | 인증 방식 |
|---|---|---|
GET | 카카오http://kapi.kakao.com/v1/internal/talk/openchat/check/members공동체 https://kapi.kakao.com/v1/internal/talk/openchat/check/members | 서비스 앱 어드민 키 |
카카오톡 오픈채팅에서 카카오페이 송금 시, 송금자와 수신자가 같은 오픈채팅방에 참여 중인지 확인합니다.
서비스 앱 어드민 키를 헤더에 담아 GET으로 요청합니다. 요청 시 송금자의 ID와 수신자의 v_id를 반드시 지정해야 합니다. 요청 성공 시 응답은 송금자와 수신자가 오픈채팅에 참여 중인지 여부를 Boolean 값으로 반환합니다.
| 이름 | 설명 | 필수 |
|---|---|---|
| Authorization | Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}인증 방식, 서비스 앱 어드민 키로 인증 요청 | O |
| Content-Type | Content-Type: application/x-www-form-urlencoded;charset=utf-8요청 데이터 타입 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| target_id_type | String | target_id 타입, 아래 중 하나
| O |
| target_id | String | 송금자의 ID | O |
| v_id | Long | 수신자의 카카오톡 오픈채팅 사용자 식별자 | O |
| 이름 | 타입 | 설명 | 필수 |
|---|---|---|---|
| in_same_chat | Boolean | 송금자와 수신자가 같은 오픈채팅방에 참여 중인지 여부
|
요청: 서비스 앱 어드민 키 방식
- 파라미터
- 송금자 ID(
target_id) - 송금자 ID 타입(
target_id_type): 카카오계정 ID - 수신자의 카카오톡 오픈채팅 사용자 식별자(
v_id)
- 송금자 ID(
curl -v -G GET "http://kapi.kakao.com/v1/internal/talk/openchat/check/members" \-H "Authorization: KakaoAK ${SERVICE_APP_ADMIN_KEY}" \-d "target_id=2137162" \-d "target_id_type=account_id" \-d "v_id=8100223417362021454"
응답
// HTTP/ 1.1 200 OK{"in_same_chat": false}