Alimtalk

Alimtalk is the Kakao Biz Message channel for sending informational messages to customers from templates that Kakao has approved. Alongside the send specification, it also provides operational APIs such as template registration, image upload, and review requests.

Send an Alimtalk

POST/api/comm/v1/send/omni

Alimtalk uses a single send specification; the messageFlow[].alimtalk.msgType value (AT/AI) distinguishes the text type from the image type.

Body Parameters

{}JSON

destinations

RequiredObject Array

Array of recipient information. Up to 200 per broadcast send request.

messageFlow

RequiredObject Array

Messages you add are automatically processed in order as failover messages .

paymentCode

String

Department code used for settlement.

groupKey

String

Key that groups messages so you can review statistics together in Message Insight .

idempotencyKey

String

Field that identifies the idempotency of a request with an idempotency key .

idempotencyTtl

Integer

Time to live for the idempotency key.

ref

String

Request reference field.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "/api/comm/v1/send/omni" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "destinations": [{ "to": "01012345678", "replaceWords": { "name": "ํ™๊ธธ๋™" } }],
6 "messageFlow": [{
7 "alimtalk": {
8 "msgType": "AT",
9 "senderKey": "{senderKey}",
10 "templateCode": "BG_pticket_issued_notice",
11 "text": "#{name}๋‹˜์˜ ์˜ˆ์•ฝ์ด ์ ‘์ˆ˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.",
12 "attachment": {
13 "button": [{
14 "type": "WL",
15 "name": "์˜ˆ์•ฝ ์กฐํšŒ",
16 "urlMobile": "https://bizgo.io/m/reservation/123",
17 "urlPc": "https://bizgo.io/reservation/123"
18 }]
19 }
20 }
21 }],
22 "ref": "alimtalk-at-20260331-001"
23 }'

Response example

1{
2 "common": {
3 "authCode": "A000",
4 "authResult": "Success",
5 "infobankTrId": "Infobank-Tracking-Id"
6 },
7 "data": {
8 "code": "A000",
9 "result": "SUCCESS",
10 "data": {
11 "destinations": [{
12 "to": "01012345678",
13 "msgKey": "20260424104234546POM101182450000",
14 "code": "A000",
15 "result": "Success"
16 }]
17 },
18 "ref": "alimtalk-at-20260331-001"
19 }
20}

Reservation send

POST/api/comm/v1/reservation

Registers a reservation so the Alimtalk is delivered at the time you specify. resvSendTime is required. After registering, you can look up, edit, cancel, pause, resume, and manage recipients on the reservation management page.

Body Parameters

{}JSON

destinations

RequiredObject Array

Array of recipient information. Up to 200 per broadcast send request.

messageFlow

RequiredObject Array

Messages you add are automatically processed in order as failover messages .

resvSendTime

RequiredString

Reservation send time.

resvName

String

Name that identifies the reservation.

paymentCode

String

Department code used for settlement.

ref

String

Request reference field.

Returns

common

Object

Common response section.

data

Object

Reservation registration response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/reservation" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "destinations": [{
6 "to": "01012345678",
7 "replaceWords": {
8 "name": "ํ™๊ธธ๋™"
9 }
10 }],
11 "messageFlow": [{
12 "alimtalk": {
13 "msgType": "AT",
14 "senderKey": "{senderKey}",
15 "templateCode": "BG_pticket_issued_notice",
16 "text": "#{name}๋‹˜์˜ ์˜ˆ์•ฝ์ด ์ ‘์ˆ˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.",
17 "responseMethod": "push"
18 }
19 }],
20 "resvSendTime": "2026-05-01 10:00:00",
21 "resvName": "์•Œ๋ฆผํ†ก ์˜ˆ์•ฝ ๋ฐœ์†ก",
22 "ref": "alimtalk-resv-20260501-001"
23 }'

Response example

1{
2 "common": {
3 "authCode": "A000",
4 "authResult": "Success",
5 "infobankTrId": "Infobank-Tracking-Id"
6 },
7 "data": {
8 "code": "A000",
9 "result": "Success",
10 "resvKey": "20260501100000RESV0000000001"
11 }
12}

Send with automatic template substitution

POST/api/comm/v1/send/omni

Sends a message by passing only the template code and substitution variables instead of writing the full template payload in the request body. The Bizgo API builds the payload that matches the template code, then substitutes the destinations[].replaceWords values before sending the Alimtalk.

Body Parameters

{} JSON

destinations

RequiredObject Array

Array of recipient information.

messageFlow

RequiredObject Array

Array of message specifications.

paymentCode

String

Department code used for settlement.

groupKey

String

Key used to group messages and review statistics together.

idempotencyKey

String

Key that identifies request idempotency.

idempotencyTtl

Integer

Expiration time of the idempotency key.

ref

String

Request reference field.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/send/omni" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "destinations": [{
6 "to": "01000000000",
7 "replaceWords": {
8 "name": "ํ™๊ธธ๋™",
9 "orderName": "๋น„์ฆˆ๊ณ  ์ด์šฉ๊ถŒ",
10 "status": "๊ฒฐ์ œ์™„๋ฃŒ"
11 }
12 }],
13 "messageFlow": [{
14 "alimtalk": {
15 "senderKey": "{senderKey}",
16 "templateCode": "{templateCode}",
17 "sendType": "template"
18 }
19 }],
20 "ref": "alimtalk-template-001"
21 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "destinations": [{
12 "to":"01000000000",
13 "msgKey":"AT20260408-000001",
14 "code":"A000",
15 "result":"Success"
16 }]
17 },
18 "ref":"alimtalk-template-001"
19 }
20}

Manage templates

An Alimtalk template is an operational asset that you must register, edit, and prepare images for before you send. The APIs you need to compose and register templates are provided here. A registered template must pass Kakao's review before you can send it. For the review criteria and rejection reasons, see Alimtalk template review.

Look up a template

GET/api/comm/v1/center/alimtalk/template

Looks up the details of an Alimtalk template by sender profile key and template code.

Query Parameters

senderKey

RequiredString

Sender profile key.

templateCode

RequiredString

Template code.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template?senderKey={senderKey}&templateCode={templateCode}" \
2 -H "Authorization: {ApiKey}"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "alimtalk": {
12 "senderKey":"{senderKey}",
13 "templateCode":"{templateCode}",
14 "text":"#{name}๋‹˜, ์ฃผ๋ฌธ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."
15 }
16 }
17 }
18}

Look up recently changed templates

GET/api/comm/v1/center/alimtalk/template/lastModified

Looks up Alimtalk templates modified after the time you specify. You can use it as the basis for template refresh or internal synchronization batches.

Query Parameters

senderKey

RequiredString

Sender profile key.

senderKeyType

String

Sender key type.

since

String

Start time of the lookup range.

page

Integer

Page number.

count

Integer

Number of records per page.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template/lastModified?senderKey={senderKey}&senderKeyType=S&since=2026-04-23T09:00:00&page=1&count=100" \
2 -H "Authorization: {ApiKey}"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "alimtalk": {
12 "templates": [{
13 "senderKey":"{senderKey}",
14 "msgType":"AT",
15 "templateCode":"ORDER_DONE_001",
16 "templateName":"์ฃผ๋ฌธ ์™„๋ฃŒ ์•ˆ๋‚ด",
17 "templateMessageType":"BA",
18 "templateEmphasizeType":"NONE",
19 "text":"#{name}๋‹˜, ์ฃผ๋ฌธ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.",
20 "categoryCode":"001001",
21 "inspectionStatus":"APR",
22 "status":"APR"
23 }]
24 }
25 }
26 }
27}

Register a template

POST/api/comm/v1/center/alimtalk/template

Registers an Alimtalk template. For image-type or item list-type templates, use the imgUrl and imgName issued by the template image upload API.

Body Parameters

{} JSON

alimtalk

RequiredObject

Alimtalk template information.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "alimtalk": {
6 "senderKey": "{senderKey}",
7 "templateName": "์ฃผ๋ฌธ ์™„๋ฃŒ ์•ˆ๋‚ด",
8 "templateCode": "ORDER_DONE_001",
9 "templateMessageType": "BA",
10 "templateEmphasizeType": "NONE",
11 "text": "#{name}๋‹˜, ์ฃผ๋ฌธ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.",
12 "categoryCode": "001001"
13 }
14 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "alimtalk": {
12 "senderKey":"{senderKey}",
13 "templateCode":"ORDER_DONE_001",
14 "text":"#{name}๋‹˜, ์ฃผ๋ฌธ์ด ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."
15 }
16 }
17 }
18}

Update a template

PUT/api/comm/v1/center/alimtalk/template

Updates a registered Alimtalk template. The range of editable fields can vary with the review status and Kakao policy.

Body Parameters

{} JSON

alimtalk

RequiredObject

Alimtalk template information.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X PUT "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "alimtalk": {
6 "senderKey": "{senderKey}",
7 "templateCode": "ORDER_DONE_001",
8 "templateName": "์ฃผ๋ฌธ ์™„๋ฃŒ ์•ˆ๋‚ด ์ˆ˜์ •",
9 "templateMessageType": "BA",
10 "templateEmphasizeType": "NONE",
11 "text": "#{name}๋‹˜, ์ฃผ๋ฌธ ์ ‘์ˆ˜๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."
12 }
13 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "alimtalk": {
12 "senderKey":"{senderKey}",
13 "templateCode":"ORDER_DONE_001",
14 "text":"#{name}๋‹˜, ์ฃผ๋ฌธ ์ ‘์ˆ˜๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."
15 }
16 }
17 }
18}

Delete a template

DELETE/api/comm/v1/center/alimtalk/template/senderKey/{senderKey}/templateCode/{templateCode}

Deletes an Alimtalk template by sender profile key and template code.

Path Parameters

senderKey

RequiredString

Sender profile key.

templateCode

RequiredString

Code of the template to delete.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X DELETE "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template/senderKey/{senderKey}/templateCode/{templateCode}" \
2 -H "Authorization: {ApiKey}"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success"
10 }
11}

Upload a template image

POST/api/comm/v1/file/alimtalk/template

Uploads an image used when registering image-type, wide image-type, or item list-type Alimtalk templates. This is a pre-registration API for template images, not an image upload for sending messages.

Body Parameters

FORM-DATA

file

RequiredBinary

Binary of the image file to upload.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/alimtalk/template" \
2 -H "Authorization: {ApiKey}" \
3 -F "file=@/path/template-image.jpg"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "imgUrl":"https://example.kakao.image/template-image.jpg",
12 "fileName":"template-image.jpg"
13 }
14 }
15}

Upload a template item highlight image

POST/api/comm/v1/file/alimtalk/itemHighlight

Uploads an image used in the item highlight area of an item list-type Alimtalk template. Like the template image upload, this is a pre-registration API for template images.

Body Parameters

FORM-DATA

file

RequiredBinary

Binary of the item highlight image file to upload.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/file/alimtalk/itemHighlight" \
2 -H "Authorization: {ApiKey}" \
3 -F "file=@/path/item-highlight.jpg"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "imgUrl":"https://example.kakao.image/item-highlight.jpg",
12 "fileName":"item-highlight.jpg"
13 }
14 }
15}

Manage template categories

You use template categories to check the template classification that matches Kakao's review and policy criteria. They let you double-check your category choice before you register.

Look up all template categories

GET/api/comm/v1/center/alimtalk/category

Looks up the full list of template categories available when registering an Alimtalk template.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/category" \
2 -H "Authorization: {ApiKey}"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "categories": [{
12 "code":"001001",
13 "name":"์ฃผ๋ฌธ/์˜ˆ์•ฝ",
14 "groupName":"์ปค๋จธ์Šค",
15 "inclusion":"์ฃผ๋ฌธ, ์˜ˆ์•ฝ, ๊ฒฐ์ œ ์•Œ๋ฆผ",
16 "exclusion":"๊ด‘๊ณ ์„ฑ ์•ˆ๋‚ด"
17 }]
18 }
19 }
20}

Look up a template category

GET/api/comm/v1/center/alimtalk/category

Looks up the details of an Alimtalk template category by category code.

Query Parameters

categoryCode

RequiredString

Code of the template category to look up.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/category?categoryCode={categoryCode}" \
2 -H "Authorization: {ApiKey}"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "category": {
12 "code":"001001",
13 "name":"์ฃผ๋ฌธ/์˜ˆ์•ฝ",
14 "groupName":"์ปค๋จธ์Šค",
15 "inclusion":"์ฃผ๋ฌธ, ์˜ˆ์•ฝ, ๊ฒฐ์ œ ์•Œ๋ฆผ",
16 "exclusion":"๊ด‘๊ณ ์„ฑ ์•ˆ๋‚ด"
17 }
18 }
19 }
20}

Template review

You can use an Alimtalk template only after Kakao approves it in review. The review request, review with attachments, and request cancellation APIs are provided in order.

Request a template review

POST/api/comm/v1/center/alimtalk/template/request

Submits a registered Alimtalk template for Kakao review. You can submit it when the template status is pending and the review status is registered.

Body Parameters

{} JSON

alimtalk

RequiredObject

Information about the Alimtalk template to submit for review.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template/request" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "alimtalk": {
6 "senderKey": "{senderKey}",
7 "templateCode": "{templateCode}",
8 "comment": "๊ฒ€์ˆ˜ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค."
9 }
10 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success"
10 }
11}

Request a template review (with file attachment)

POST/api/comm/v1/center/alimtalk/template/request

Submits a registered Alimtalk template for Kakao review together with attachments. Allowed file formats are png, jpg, jpeg, gif, pdf, hwp, doc, and docx.

Body Parameters

FORM-DATA

senderKey

RequiredString

Sender profile key.

senderKeyType

String

Sender profile key type.

templateCode

RequiredString

Template code.

comment

RequiredString

Review comment or inquiry.

attachment

Binary

File attached to the review request.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template/request" \
2 -H "Authorization: {ApiKey}" \
3 -F "senderKey={senderKey}" \
4 -F "templateCode={templateCode}" \
5 -F "comment=๊ฒ€์ˆ˜ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค." \
6 -F "attachment=@/path/review-file.pdf"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success"
10 }
11}

Cancel a template review request

POST/api/comm/v1/center/alimtalk/template/request/cancel

Cancels the review request for an Alimtalk template that has been submitted for review.

Body Parameters

{} JSON

alimtalk

RequiredObject

Information about the template whose review request is canceled.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X POST "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/template/request/cancel" \
2 -H "Authorization: {ApiKey}" \
3 -H "Content-Type: application/json" \
4 -d '{
5 "alimtalk": {
6 "senderKey": "{senderKey}",
7 "templateCode": "{templateCode}"
8 }
9 }'

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success"
10 }
11}

Public templates

This is the API for looking up the public templates that Kakao provides. Use it to check how public templates are operated or to see examples of template composition.

Look up public templates

GET/api/comm/v1/center/alimtalk/public/template

Looks up the list of public templates that Kakao provides. Use it to review public templates when registering templates or setting operational policy.

Query Parameters

since

String

Reference time for the lookup.

page

Integer

Page number to look up.

count

Integer

Number of records per page.

Returns

common

Object

Common response section.

data

Object

Service response section.

Request example

1curl -X GET "https://mars.ibapi.kr/api/comm/v1/center/alimtalk/public/template?since=20250708000000&page=1&count=100" \
2 -H "Authorization: {ApiKey}"

Response example

1{
2 "common": {
3 "authCode":"A000",
4 "authResult":"Success",
5 "infobankTrId":"Infobank-Tracking-Id"
6 },
7 "data": {
8 "code":"A000",
9 "result":"Success",
10 "data": {
11 "templates": [{
12 "templateCode":"PUBLIC_ORDER_001",
13 "templateName":"์ฃผ๋ฌธ ์™„๋ฃŒ ์•ˆ๋‚ด",
14 "status":"APR",
15 "categoryCode":"001001",
16 "releaseDate":"2026-04-08 10:00:00",
17 "previewImageUrl":"https://example.kakao.image/public-template.png"
18 }]
19 }
20 }
21}