KakaoTalk
KakaoTalk is Korea’s dominant messaging app. Orbit’s KakaoTalk channel wraps the KakaoTalk Biz Message gateway so you can reach Korean recipients from the same unified Messaging surface used for every other channel.KakaoTalk is a beta channel. The send and receive paths are wired end to end, but onboarding still requires you to provision your own KakaoTalk Biz Message credentials with a Kakao reseller (the gateway speaks the widely used NHN Cloud Biz Message contract).
Message types
KakaoTalk Biz Message has two distinct message types. Select the type per message with thekakao_message_type metadata field (alimtalk is the default).
Alimtalk is template-only: a send without an approved
template_name is rejected with VALIDATION_ERROR (422). Friendtalk requires a non-empty body.
Send a Friendtalk message
Send a single Friendtalk message withPOST /api/v1/messages/kakao — the direct per-message endpoint, the same shape as every other channel’s send route (/line, /telegram, /viber). Set metadata.kakao_message_type to friendtalk; the free-form message text goes in the top-level body field.
Request body
The sender is selected automatically from the KakaoTalk credentials connected to your organization — you do not pass an app key or sender key on the request.
Response
202 Accepted — the message is queued for delivery; the terminal delivered / failed state arrives later via the delivery-status webhook.
Send an Alimtalk message
Alimtalk is template-only — it carries no free-formbody, so it is sent through the Campaigns API with channel set to kakao. Select the approved template with template_name (the KakaoTalk template code) and fill its #{var} placeholders with template_params.
The sender is selected automatically from the KakaoTalk credentials connected to your organization — you do not pass an app key or sender key on the request.
Rate limits
The directPOST /messages/kakao endpoint is capped at 80 requests/minute per organization. Bursts above the cap receive 429 with a Retry-After header; back off and retry, or stage high-volume sends through the campaigns API. See Rate Limits.
Configuration
KakaoTalk is a bring-your-own-credential channel. You can connect it per organization in the dashboard, or set platform-default credentials for the whole cluster.Per organization (recommended)
- Provision KakaoTalk Biz Message access with a Kakao reseller and register your sender profile (발신프로필). You receive a gateway app key, a secret key, and a sender key.
- In the Orbit dashboard, go to Settings → Channels → KakaoTalk and paste all three values. Orbit stores them encrypted at rest (
enc:v1:envelope) under your organization’ssettings.channels.kakaoand never echoes them back through any API response. - Get your Alimtalk templates approved through your Kakao reseller, then reference each by its template code in
template_name.
Platform default
An operator can register a single cluster-wide KakaoTalk provider by setting these environment variables. All three are required — when any is unset the channel stays unregistered and a send fails closed withCHANNEL_NOT_CONFIGURED.
Credential handling — your responsibility
The app key, secret key, and sender key are bearer credentials. Anyone holding them can send messages as your KakaoTalk channel. Orbit encrypts them at rest and masks them in the dashboard after submit, but their safety upstream of Orbit (your password manager, CI/CD variables, screenshots) is yours to protect:- Never commit a KakaoTalk credential to git, public or private.
- Rotate immediately with your Kakao reseller if you suspect exposure, then re-paste the new values in Orbit.
- Scope each environment to its own credentials (dev / staging / production) so a leaked dev secret cannot reach customer conversations.
Inbound and delivery status
Inbound replies and delivery receipts are normalized by the Orbit messaging gateway and relayed to your account automatically — there is no KakaoTalk webhook for you to register. Replies arrive on the standardmessage.received webhook with channel: "kakao"; delivery status advances your outbound message to delivered / failed as the gateway reports back. Subscribe to these under Settings → Webhooks.