페이지 이동경로
  • 문서>
  • 카카오모먼트>
  • 메시지 관리

카카오모먼트

메시지 관리

이 문서는 메시지 관리 API 사용 방법을 안내합니다.

카카오TV 채널 목록 보기

기본 정보

GET /openapi/v4/messages/kakaotv/channels HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재에서 사용할 동영상이 포함되어 있는 카카오TV 채널 목록을 조회합니다.

액세스 토큰(Access token)을 헤더에 담아 GET으로 요청합니다. 요청 성공 시 응답 바디에 JSON 객체로 카카오TV 채널 목록을 받습니다. 카카오TV 채널 목록은 항상 100개 단위로 페이징(Paging)되며, page 파라미터로 다음 페이지 조회를 요청할 수 있습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
Parameter: Query
Name Type Description Required
page Integer 조회할 페이지 번호 X

Response

Name Type Description
list KakaoTvChannelInfo[] 카카오TV 채널 정보 목록
totalCount Integer 조회된 카카오TV 채널의 총 개수
hasMore Boolean 다음 페이지 존재 여부

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/kakaotv/channels" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
    "list": [
        {
            "id": 1234,
            "name": "테스트 카카오TV 채널 1",
            "description": "테스트 카카오TV 채널 1 입니다.",
            "totalClipCount": 56,
            "openClipCount": 0,
            "subscriberCount": 0,
            "visitCount": 789,
            "isOpen": true,
            "createTime": "2018-07-10 14:51:20",
            "updateTime": "2018-07-10 14:51:20",
            "clipCount": 56,
            "linkUrl": "https://xxx.kakao.com/channel/4321"
        },
        {
            "id": 1235,
            "name": "테스트 카카오TV 채널 2",
            "description": "테스트 카카오TV 채널 2 입니다.",
            "totalClipCount": 1,
            "openClipCount": 0,
            "subscriberCount": 0,
            "visitCount": 1,
            "isOpen": true,
            "createTime": "2019-07-31 14:55:36",
            "updateTime": "2019-07-31 14:57:25",
            "clipCount": 0,
            "linkUrl": "https://xxx.kakao.com/channel/5678"
        },
        {
            "id": 1236,
            "name": "테스트 카카오TV 채널 3",
            "description": "테스트 카카오TV 채널 3 입니다.",
            "totalClipCount": 0,
            "openClipCount": 0,
            "subscriberCount": 0,
            "visitCount": 0,
            "isOpen": true,
            "createTime": "2019-07-30 15:14:11",
            "updateTime": "2019-07-30 15:14:22",
            "clipCount": 0,
            "linkUrl": "https://xxx.kakao.com/channel/9101"
        }
    ],
    "totalCount": 3,
    "hasMore": false
}

카카오TV 채널 상세 보기

기본 정보

GET /openapi/v4/messages/kakaotv/channels/${id} HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재에서 사용할 동영상이 포함되어 있는 카카오TV 채널의 상세 정보를 조회합니다.

조회할 카카오TV 채널 ID를 요청 URL에 포함하고 액세스 토큰(Access token)을 헤더에 담아 GET으로 요청합니다. 요청이 성공하면 응답 바디에 JSON 객체로 상세 정보를 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Path Variable
Name Type Description Required
id Long 조회할 카카오TV 채널 ID O

Response

Name Type Description
id Long 카카오TV 채널 ID
name String 카카오TV 채널 이름
description String 카카오TV 채널 설명
totalClipCount Integer 카카오TV 채널의 영상 개수
openClipCount Integer 재생목록에 담긴 공개된 클립의 개수
subscriberCount Integer 구독자수
visitCount Integer 카카오TV 채널의 영상 시청 수
isOpen Boolean 카카오TV 채널의 공개 / 비공개 여부
createTime DateTime 카카오TV 채널 생성 시각
updateTime DateTime 카카오TV 채널 업데이트 시각
clipCount Integer 재생목록에 담긴 클립의 개수
linkUrl String 카카오TV 채널 페이지 링크

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/kakaotv/channels/${id}" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
    "id": 1234,
    "name": "테스트 카카오TV 채널1",
    "description": "테스트 카카오TV 채널1 입니다.",
    "totalClipCount": 72,
    "openClipCount": 0,
    "subscriberCount": 0,
    "visitCount": 253,
    "isOpen": true,
    "createTime": "2018-07-10 14:51:20",
    "updateTime": "2018-07-10 14:51:20",
    "clipCount": 0,
    "linkUrl": "https://sandbox-tv.kakao.com/channel/1234"
}

카카오TV 채널 영상 목록 보기

기본 정보

GET /openapi/v4/messages/kakaotv/channels/${id}/clipLinks HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재에서 사용할 동영상 목록을 조회합니다.

조회할 카카오TV 채널 ID를 요청 URL에 포함하고 액세스 토큰(Access token)을 헤더에 담아 GET으로 요청합니다. 요청이 성공하면 응답 바디에 JSON 객체로 카카오TV 채널내 영상 목록을 받습니다. 영상 목록은 100개 단위로 페이징(Paging)되며, page 파라미터로 다음 페이지를 조회를 요청할 수 있습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
Path Variable
Name Type Description Required
channelId Long 조회할 카카오TV 채널 ID O
Parameter: Query
Name Type Description Required
page Integer 조회할 페이지 X

Response

Name Type Description
list ClipLink[] 카카오TV 채널의 영상 목록
hasMore Boolean 조회 가능한 영상이 더 존재하는지 여부

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/kakaotv/channels/${id}/clipLinks" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
    "list": [
        {
            "id": 123456789,
            "displayTitle": "테스트 영상",
            "playCount": 0,
            "likeCount": 0,
            "commentCount": 0,
            "createTime": "2021-04-26 10:06:00",
            "updateTime": "2021-04-26 10:06:00",
            "clip": {
                "id": 987654321,
                "duration": 12.0,
                "thumbnailUrl": "http://thumb.kakaocdn.net/dna/kamp-sbox/source/svuqmrnel2enbwawyut1kxzxz/thumbs/thumb.jpg?credential=TuMuFGKUIcirOSjFzOpncbomGFEIdZWK&expires=33176307958&signature=fC1y0hw4zDwDIfn5k57W9KC4kHc%3D",
                "isOpen": true
            },
            "linkUrl": "https://sandbox-tv.kakao.com/v/301641270"
        },
        {
            "id": 301489988,
            "displayTitle": "Coffee - 46989",
            "playCount": 0,
            "likeCount": 0,
            "commentCount": 0,
            "createTime": "2020-10-27 09:43:14",
            "updateTime": "2020-10-27 09:43:14",
            "clip": {
                "id": 301447437,
                "duration": 34.0,
                "thumbnailUrl": "//xxx.net/dna/kamp-sbox/source/svov7qvzygs1yymyiyiqv9nl8/thumbs/thumb.jpg?credential=TuMuFGKUIcirOSjFzOpncbomGFEIdZWK&expires=33160668192&signature=VPPZPQKImUfdJE4ORyM1EWGSNKM%3D",
                "isOpen": false
            },
            "linkUrl": "//xxx.kakao.com/v/301489988"
        }
    ],
    "hasMore": false
}

카카오TV 채널 영상 상세 보기

기본 정보

GET /openapi/v4/messages/kakaotv/channels/${channelId}/clipLinks/${clipLinkId} HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재에서 사용할 동영상을 조회합니다.

조회할 카카오TV 채널 ID와 클립링크 ID를 요청 URL에 포함하고 액세스 토큰(Access token)을 헤더에 담아 GET으로 요청합니다. 요청이 성공하면 응답 바디에 JSON 객체로 카카오TV 채널내 영상 상세내용을 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
Path Variable
Name Type Description Required
channelId Long 조회할 카카오TV 채널 ID O
clipLinkId Long 조회할 클립링크 ID O

Response

Name Type Description
id Long 클립링크 ID
displayTitle String 클림링크 제목
playCount Integer 영상 재생 횟수
likeCount Integer 좋아요 갯수
commentCount Integer 댓글 갯수
createTime DateTime 생성 시각
updateTime DateTime 업데이트 시각
clip Clip 영상 상세 정보
linkUrl String 클립링크 링크

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/kakaotv/channels/${channelId}/clipLinks/${clipLink}" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
    "id": 123456789,
    "displayTitle": "테스트 영상입니다.",
    "playCount": 9,
    "likeCount": 0,
    "commentCount": 0,
    "createTime": "2021-02-24 16:09:24",
    "updateTime": "2021-02-24 16:09:24",
    "clip": {
        "id": 987654321,
        "duration": 15.0,
        "thumbnailUrl": "http://thumb.kakaocdn.net/dn/live_static/default/thumbnail.png",
        "isOpen": false
    },
    "linkUrl": "https://sandbox-tv.kakao.com/v/123456789"
}

메시지 버튼 쿠폰 목록 보기

기본 정보

GET /openapi/v4/messages/coupons HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재의 버튼으로 설정 가능한 쿠폰 목록을 조회합니다.

액세스 토큰(Access token)을 헤더에 담아 GET으로 요청합니다. profileId 파라미터로 메시지 버튼 쿠폰 목록을 조회할 카카오톡 채널의 프로필 ID를 전달해야 합니다.

요청이 성공하면 응답 바디에 JSON 객체로 쿠폰의 목록을 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
Parameter: Query
Name Type Description Required
profileId Long 카카오톡 채널 프로필 ID O

Response

Name Type Description
- ChannelCoupon[] 쿠폰 정보 목록

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/coupons" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
    {
        "id": 12345,
        "title": "첫번째 테스트 쿠폰",
        "content": "첫번째 테스트 쿠폰입니다.",
        "statusCode": "done",
        "permalink": "http://xxx.kakao.com/_xxx/coupons/_xxx",
        "entryImage": {
            "type": "image",
            "url": "http://xxx.kakao.com/img_xl.jpg",
            "thumbnail": null,
            "previewImage": null,
            "playUrl": null,
            "name": null
        },
        "createdAt": "2021-01-11T15:43:12"
    },
    {
        "id": 12346,
        "title": "두번째 테스트 쿠폰",
        "content": "두번째 테스트 쿠폰입니다.",
        "statusCode": "done",
        "permalink": "http://xxx.kakao.com/_xxx/coupons/_xxx",
        "entryImage": {
            "type": "image",
            "url": "http://xxx.kakao.com/img_xl.jpg",
            "thumbnail": null,
            "previewImage": null,
            "playUrl": null,
            "name": null
        },
        "createdAt": "2021-01-11T15:43:12"
    }
]

메시지 버튼 쿠폰 상세 보기

기본 정보

GET /openapi/v4/messages/coupons/${id} HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재의 버튼으로 설정 가능한 쿠폰을 상세 조회합니다.

조회할 쿠폰 ID를 요청 URL에 포함하고 액세스 토큰(Access token)을 헤더에 담아 GET으로 요청합니다. 특정 카카오톡 채널의 쿠폰을 조회하려면 profileId 파라미터로 카카오톡 채널 프로필 ID를 전달합니다.

요청이 성공하면 응답 바디에 JSON 객체로 쿠폰의 상세 정보를 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
Path Variable
Name Type Description Required
id Long 쿠폰 ID O
Parameter: Query
Name Type Description Required
profileId Long 카카오톡 채널 프로필 ID O

Response

Name Type Description
id Long 쿠폰 ID
title String 쿠폰 제목
content String 쿠폰 내용
statusCode String 쿠폰의 상태
permalink String 쿠폰 링크
entryImage EntryImage 쿠폰 상세 이미지
createdAt String 쿠폰 생성일시

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/coupons/${id}" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
    "id": 12345,
    "title": "테스트 쿠폰입니다.",
    "content": "테스트입니다.",
    "statusCode": "done",
    "permalink": "http://xxx.kakao.com/xxx/coupons/xxx",
    "entryImage": null,
    "createdAt": "2021-02-26T16:12:31"
}

메시지 버튼 애드뷰 목록 보기

기본 정보

GET /openapi/v4/messages/adViews HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재의 버튼으로 설정 가능한 애드뷰 목록을 조회합니다.

액세스 토큰(Access token)과 광고계정 ID를 헤더에 담아 GET으로 요청합니다. 요청이 성공하면 응답 바디에 JSON 객체로 애드뷰 목록을 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
adAccountId Long 광고계정 ID

Response

Name Type Description
- AdView[] 애드뷰 목록

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/adViews" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}"
    -H "adAccountId: ${adAccountId}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
    {
        "id": 1234,
        "name": "애드뷰1",
        "type": "COMPACT",
        "templateType": "IMAGE"
    },
    {
        "id": 5678,
        "name": "애드뷰2",
        "type": "COMPACT",
        "templateType": "IMAGE"
    }
]

메시지 버튼 포스트 목록 보기

기본 정보

GET /openapi/v4/messages/posts/${profileId} HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재의 버튼으로 설정 가능한 카카오톡 채널의 포스트 목록을 조회할 수 있습니다.

조회 대상 카카오톡 채널의 프로필 ID를 요청 URL에 포함하고 액세스 토큰(Access token)과 광고계정 ID를 헤더에 담아 GET으로 요청합니다. 요청이 성공하면 응답 바디에 JSON 객체로 포스트의 목록을 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
adAccountId Long 광고계정 ID
Path Variable
Name Type Description Required
profileId String 프로필 ID O

Response

Name Type Description
- ChannelPost[] 포스트 목록

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/posts/${profileId}" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    -H "adAccountId: ${adAccountId}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
    {
        "id": 1234,
        "title": "포스트",
        "status": "published",
        "permalink": "http://kakao.com/_xxxx/1",
        "media": [],
        "createdDate": "2021-01-01T00:00:00",
        "publishedDate": "2021-01-01T00:00:00"
    },
    {
        "id": 1235,
        "title": "포스트 2",
        "status": "published",
        "permalink": "http://kakao.com/_xxxx/2",
        "media": [],
        "createdDate": "2021-01-02T00:00:00",
        "publishedDate": "2021-01-02T00:00:00"
    }
]

메시지 버튼 비즈니스폼 목록 보기

기본 정보

GET /openapi/v4/messages/bizForms HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재의 버튼으로 설정 가능한 비즈니스폼 목록을 조회할 수 있습니다.

액세스 토큰(Access token)과 광고계정 ID를 헤더에 담아 GET으로 요청합니다. 요청이 성공하면 응답 바디에 JSON 객체로 비즈니스폼의 목록을 받습니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
adAccountId Long 광고계정 ID

Response

Name Type Description
- BusinessForm[] 비즈니스폼 목록

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/bizForms" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    -H "adAccountId: ${adAccountId}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
[
    {
        "id": 1,
        "adAccountId": 1234,
        "bizFormId": 10,
        "title": "비즈니스폼",
        "flowType": "APPLY",
        "linkedDate": "2021-06-15T23:59:59",
        "beginDate": "2021-06-15T23:59:59",
        "endDate": "2021-06-15T23:59:59"
    },
    {
        "id": 2,
        "adAccountId": 1235,
        "bizFormId": 11,
        "title": "비즈니스폼2",
        "flowType": "BANANA",
        "linkedDate": "2021-06-16T23:59:59",
        "beginDate": "2021-06-16T23:59:59",
        "endDate": "2021-06-16T23:59:59"
    }
]

메시지 버튼 비즈니스폼 상세 보기

기본 정보

GET /openapi/v4/messages/bizForms/${bizFormId} HTTP/1.1
Host: apis.moment.kakao.com
Authorization: Bearer ${ACCESS_TOKEN}

메시지 소재의 버튼으로 설정 가능한 비즈니스폼을 조회할 수 있습니다.

조회 대상 비즈니스폼의 ID를 요청 URL에 포함하고 액세스 토큰(Access token)과 광고계정 ID를 헤더에 담아 GET으로 요청합니다. 실패 시 에러 코드상세 에러 코드로 사유를 확인합니다.

Request

Header
Name Type Description
Authorization String 액세스 토큰
Bearer ${ACCESS_TOKEN} 형식으로 전달
adAccountId Long 광고계정 ID
Path Variable
Name Type Description Required
bizFormId Long 비즈니스폼 ID O

Response

Name Type Description
id Long 모먼트에 연동된 비즈니스폼 ID
메시지 소재 생성시 필요한 ID
adAccountId Long 광고계정 ID
bizFormId Long 비즈니스폼 ID
title String 비즈니스폼 제목
flowType String 비즈니스폼 유형
linkedDate String 모먼트에 연동된 일시
yyyy-MM-dd'T'HH:mm:ss 형식
beginDate String 비즈니스폼 시작일
yyyy-MM-dd'T'HH:mm:ss 형식
endDate String 비즈니스폼 종료일
yyyy-MM-dd'T'HH:mm:ss 형식

Sample

Request
curl -X GET "https://apis.moment.kakao.com/openapi/v4/messages/bizForms/${id}" \
    -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    -H "adAccountId: ${adAccountId}"
Response
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
    "id": 1,
    "adAccountId": 1234,
    "bizFormId": 10,
    "title": "비즈니스폼",
    "flowType": "APPLY",
    "linkedDate": "2021-06-15T23:59:59",
    "beginDate": "2021-06-15T23:59:59",
    "endDate": "2021-06-15T23:59:59"
}

더보기