이 문서는 광고 만들기: 소재 API 사용 방법을 안내합니다.
소재란 하나의 광고 단위로 텍스트, 이미지, 전화번호 등 다양한 노출방식의 소재를 설정할 수 있습니다. 생성한 소재 형식에 따라 광고가 노출됩니다.
메서드 | URL | 인증 방식 |
---|---|---|
GET |
https://api.keywordad.kakao.com/openapi/v1/creatives/basic |
비즈니스 토큰 |
권한 | 사전 설정 | 비즈니스 인증 | 비즈니스 동의항목 |
---|---|---|---|
- | 비즈 앱 전환 비즈니스 Redirect URI 등록 비즈니스 동의항목 |
필요 | 필요 |
비즈채널 단위 소재의 목록을 조회합니다.
비즈니스 토큰과 광고계정 ID(adAccountId
)를 헤더에 담아 GET
으로 요청합니다. 성공 시 응답 본문에 JSON 객체로 소재 상세 정보 목록을 받습니다.
이름 | 설명 | 필수 |
---|---|---|
Authorization | Authorization: Bearer ${BUSINESS_ACCESS_TOKEN} 인증 방식, 비즈니스 토큰으로 인증 요청 |
O |
adAccountId | adAccountId: ${AD_ACCOUNT_ID} 광고계정 ID |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
bizChannelId | Long |
비즈채널 ID | O |
page | Integer |
페이지 번호(미입력시 0 으로 입력) |
X |
limit | Integer |
페이지당 갯수 (미입력시 10 으로 입력, 최대 1000 ) |
X |
config | String |
소재 상태ON , DEL 중 하나 |
X |
이름 | 타입 | 설명 |
---|---|---|
bizChannelId | Long |
비즈채널 ID |
id | Long |
소재 ID |
name | String |
소재 이름 |
title | String |
[기본소재]제목 |
description | String |
[기본소재]설명문구 |
assetTypese | String[] |
사용중 확장소재 타입 |
config | String |
소재 상태 |
page | String |
페이지 정보 |
curl -v -G GET "https://api.keywordad.kakao.com/openapi/v1/creatives/basic" \
-H "Authorization: Bearer ${BUSINESS_ACCESS_TOKEN}" \
-H "adAccountId: ${AD_ACCOUNT_ID}" \
-d "bizChannelId=2222222221" \
-d "&config=ON" \
-d "page=0" \
-d "limit=10"
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"content": [
{
"bizChannelId": "2222222221",
"id": "66666666661",
"name": "소재1",
"title": "타이틀",
"description": "설명문구",
"assetTypes": [
"THUMBNAIL",
"MULTI_THUMBNAIL",
"ADDITIONAL_TITLE",
"ADDITIONAL_LINK",
"SUBJECT",
"PRICE_TABLE",
"CALCULATE",
"PHONE_NUMBER",
"TALK_CHANNEL"
],
"config": "ON"
},
{
"bizChannelId": "2222222221",
"id": "66666666662",
"name": "소재2",
"title": "타이틀",
"description": "설명문구",
"assetTypes": [],
"config": "ON"
}
],
"page": {
"number": 0,
"size": 10,
"totalElements": 1,
"totalPages": 1
}
}
메서드 | URL | 인증 방식 |
---|---|---|
GET |
https://api.keywordad.kakao.com/openapi/v1/creatives/basic/${ID} |
비즈니스 토큰 |
권한 | 사전 설정 | 비즈니스 인증 | 비즈니스 동의항목 |
---|---|---|---|
- | 비즈 앱 전환 비즈니스 Redirect URI 등록 비즈니스 동의항목 |
필요 | 필요 |
소재의 상세 정보를 조회합니다.
비즈니스 토큰과 광고계정 ID(adAccountId
)를 헤더에 담아 GET
으로 요청합니다. 성공 시 응답 본문에 JSON 객체로 광고 소재 상세 정보를 받습니다. 실패 시 에러 코드 및 상세 에러 코드로 사유를 확인합니다.
이름 | 설명 | 필수 |
---|---|---|
Authorization | Authorization: Bearer ${BUSINESS_ACCESS_TOKEN} 인증 방식, 비즈니스 토큰으로 인증 요청 |
O |
adAccountId | adAccountId: ${AD_ACCOUNT_ID} 광고계정 ID |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
ID | Long |
소재 ID | O |
이름 | 타입 | 설명 |
---|---|---|
adAccountId | Long |
광고계정 ID |
bizChannelId | Long |
비즈채널 ID |
id | Long |
소재 ID |
name | String |
소재 이름 |
title | String |
[기본소재]제목 |
description | String |
[기본소재]설명문구 |
landingInfo | LandingInfo |
[기본소재]랜딩 URL(미입력시 비즈채널 URL 정보 입력) |
license | License |
[기본소재]의료광고 심의필 번호, 서류 |
assets | Assets |
확장소재 상세 정보 |
curl -v -G GET "https://api.keywordad.kakao.com/openapi/v1/creatives/basic/${ID}" \
-H "Authorization: Bearer ${BUSINESS_ACCESS_TOKEN}" \
-H "adAccountId: ${AD_ACCOUNT_ID}"
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"adAccountId": "1111111111",
"bizChannelId": "2222222221",
"id": "66666666661",
"name": "소재이름",
"title": "타이틀",
"description": "설명문구"
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
},
"license": {
"licenseNumber": "1234567890",
"reviewDocumentId": "9999999991"
},
"assets": {
"thumbnail": {
"imageId": "8888888881",
"text": "썸네일이미지설명"
},
"multiThumbnails": [
{
"imageId": "8888888882",
"text": "멀티썸네일1",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"imageId": "8888888883",
"text": "멀티썸네일2",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"imageId": 8888888883,
"text": "멀티썸네일3",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"additionalTitle": "추가제목",
"additionalLinks": [
{
"text": "부가링크1",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "부가링크2",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "부가링크3",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"subject": {
"subject": "DISCOUNT",
"text": "할인말머리",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
"priceTables": [
{
"text": "가격테이블1",
"price": 1000,
"range": "STATIC",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "가격테이블2",
"price": 2000,
"range": "FROM",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "가격테이블3",
"price": 3000,
"range": "TO",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"phoneNumber": "010-1234-5678",
"calculate": {
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
"talkChannelId": "@kakao1"
}
}
메서드 | URL | 인증 방식 |
---|---|---|
POST |
https://api.keywordad.kakao.com/openapi/v1/creatives/basic |
비즈니스 토큰 |
권한 | 사전 설정 | 비즈니스 인증 | 비즈니스 동의항목 |
---|---|---|---|
- | 비즈 앱 전환 비즈니스 Redirect URI 등록 비즈니스 동의항목 |
필요 | 필요 |
새로운 소재를 생성합니다.
비즈니스 토큰과 광고계정 ID(adAccountId
)를 헤더에 담아 POST
로 요청합니다. 요청이 성공하면 응답 본문에 JSON 객체로 생성된 소재 정보를 받습니다. 실패 시 에러 코드 및 상세 에러 코드로 사유를 확인합니다.
이름 | 설명 | 필수 |
---|---|---|
Authorization | Authorization: Bearer ${BUSINESS_ACCESS_TOKEN} 인증 방식, 비즈니스 토큰으로 인증 요청 |
O |
adAccountId | adAccountId: ${AD_ACCOUNT_ID} 광고계정 ID |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
bizChannelId | Long |
비즈채널 ID | O |
name | String |
소재 이름 | O |
title | String |
[기본소재]제목 | O |
description | String |
[기본소재]설명문구 | O |
landingInfo | LandingInfo |
[기본소재]랜딩 URL(미입력시 비즈채널 URL 정보 입력) | X |
license | License |
[기본소재]의료광고 심의필 번호, 서류 | X |
assets | Assets |
확장소재 상세 정보 | X |
이름 | 타입 | 설명 |
---|---|---|
adAccountId | Long |
광고계정 ID |
bizChannelId | Long |
비즈채널 ID |
id | Long |
소재 ID |
name | String |
소재 이름 |
title | String |
[기본소재]제목 |
description | String |
[기본소재]설명문구 |
landingUrl | LandingInfo |
[기본소재]랜딩 URL(미입력시 비즈채널 URL 정보 입력) |
license | License |
[기본소재]의료광고 심의필 번호, 서류 |
assets | Assets |
확장소재 상세 정보 |
curl -v -X POST "https://api.keywordad.kakao.com/openapi/v1/creatives/basic" \
-H "Authorization: Bearer ${BUSINESS_ACCESS_TOKEN}" \
-H "adAccountId: ${AD_ACCOUNT_ID}" \
-H "Content-Type: application/json" \
-d '{
"name": "소재이름",
"title": "타이틀",
"description": "설명문구",
"bizChannelId": "2222222221",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
},
"license": {
"licenseNumber": "1234567890",
"reviewDocumentId": "9999999991"
},
"assets": {
"thumbnail": {
"imageId": "8888888881",
"text": "썸네일이미지설명"
},
"multiThumbnails": [
{
"imageId": "8888888882",
"text": "멀티썸네일1",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"imageId": "8888888883",
"text": "멀티썸네일2",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"imageId": "8888888884",
"text": "멀티썸네일3",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"additionalTitle": "추가제목",
"additionalLinks": [
{
"text": "부가링크1",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "부가링크2",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "부가링크3",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"subject": {
"subject": "DISCOUNT",
"text": "할인말머리",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
"priceTables": [
{
"text": "가격테이블1",
"price": 1000,
"range": "STATIC",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "가격테이블2",
"price": 2000,
"range": "FROM",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "가격테이블3",
"price": 3000,
"range": "TO",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"phoneNumber": "010-1234-5678",
"calculate": {
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
"talkChannelId": "@test"
}
}'
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"adAccountId": "1111111111",
"bizChannelId": "2222222221",
"id": "66666666661",
"name": "소재이름",
"title": "타이틀",
"description": "설명문구",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
},
"license": {
"licenseNumber": "1234567890",
"reviewDocumentId": "9999999991"
},
"assets": {
"thumbnail": {
"imageId": "8888888881",
"text": "썸네일이미지설명"
},
"multiThumbnails": [
{
"imageId": "8888888882",
"text": "멀티썸네일1",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"imageId": "8888888883",
"text": "멀티썸네일2",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"imageId": "8888888884",
"text": "멀티썸네일3",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"additionalTitle": "추가제목",
"additionalLinks": [
{
"text": "부가링크1",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "부가링크2",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "부가링크3",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"subject": {
"subject": "DISCOUNT",
"text": "할인말머리",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
"priceTables": [
{
"text": "할인1",
"price": 1000,
"range": "STATIC",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "할인2",
"price": 2000,
"range": "FROM",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
{
"text": "할인3",
"price": 3000,
"range": "TO",
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
}
],
"phoneNumber": "010-1234-5678",
"calculate": {
"landingInfo": {
"rspvLandingUrl": "https://www.daum.net",
"pcLandingUrl": null,
"mobileLandingUrl": null
}
},
"talkChannelId": "@test"
}
}
메서드 | URL | 인증 방식 |
---|---|---|
DELETE |
https://api.keywordad.kakao.com/openapi/v1/creatives/${ID} |
비즈니스 토큰 |
권한 | 사전 설정 | 비즈니스 인증 | 비즈니스 동의항목 |
---|---|---|---|
- | 비즈 앱 전환 비즈니스 Redirect URI 등록 비즈니스 동의항목 |
필요 | 필요 |
소재를 삭제합니다.
비즈니스 토큰과 광고계정 ID(adAccountId
)를 헤더에 담아 DELETE
로 요청합니다. 삭제하려는 소재 ID를 파라미터로 지정해야 합니다. 성공 시 HTTP 상태 코드 200에 응답 본문은 없습니다. 실패 시 에러 코드 및 상세 에러 코드로 사유를 확인합니다.
이름 | 설명 | 필수 |
---|---|---|
Authorization | Authorization: Bearer ${BUSINESS_ACCESS_TOKEN} 인증 방식, 비즈니스 토큰으로 인증 요청 |
O |
adAccountId | adAccountId: ${AD_ACCOUNT_ID} 광고계정 ID |
O |
이름 | 타입 | 설명 | 필수 |
---|---|---|---|
ID | Long |
소재 ID | O |
curl -v -X DELETE "https://api.keywordad.kakao.com/openapi/v1/creatives/${ID}" \
-H "Authorization: Bearer ${BUSINESS_ACCESS_TOKEN}" \
-H "adAccountId: ${AD_ACCOUNT_ID}" \
-H "Content-Type: application/json"
HTTP/1.1 200 OK
Content-Length: 0
Content-Type: application/json;charset=UTF-8