# Sendgo cookbook — Kakao Alimtalk and SMS recipes

One page per task you actually need to ship: send an Alimtalk, send an SMS, register a template, handle the errors. Every recipe carries PHP, Node.js, Python, Java, Go, Ruby and .NET code.

The SDK guides describe what is inside each package. The cookbook answers **how do I do this**.

Each recipe covers one task, with the prerequisites, runnable code in several languages, and the errors you will see when it does not work. Copy the block for the language you are already writing in.

New here? Start with [Send your first Kakao Alimtalk in five minutes](/en/cookbook/quickstart).

> Some recipes are only written in Korean so far. Those pages fall back to the Korean text rather than 404ing, and the code blocks are identical.

## Getting started

- [Send your first Kakao Alimtalk in 5 minutes](https://sendgo.io/en/cookbook/quickstart.md): From issuing an access key to sending a Kakao Alimtalk, with working code in Node.js, Python, PHP, Laravel, Java and Go.
- [Alimtalk, Brand Message or SMS — choosing a messaging channel in Korea](https://sendgo.io/en/cookbook/choose-channel.md): Kakao Alimtalk, Kakao Brand Message and SMS/LMS/MMS differ in what content they allow, what they cost and what you must set up first. Which to pick, by situation.
- [Which Sendgo SDK should I install? — 20 official packages](https://sendgo.io/en/cookbook/choose-sdk.md): Pick the right Sendgo package for PHP, Laravel, Symfony, WordPress, Node.js, Next.js, NestJS, Python, Django, FastAPI, Java, Spring Boot, Go, Ruby, Rails, .NET, ASP.NET Core or Flutter.
- [Sendgo API authentication — access keys and bearer tokens](https://sendgo.io/en/cookbook/authentication.md): Exchange an accessKey and secretKey for a bearer token, and call the Sendgo API with it. Differences between v1 and v2, token caching, and the 401/403 codes.
- [Registering a sending number in South Korea — required before you can send](https://sendgo.io/en/cookbook/sender-number.md): Korean law requires the caller ID to be pre-registered. How to register an SMS sending number and connect a Kakao channel, and where registrations usually get rejected.

## Sending messages

- [Send a Kakao Alimtalk — PHP, Node.js, Python, Java, Go examples](https://sendgo.io/en/cookbook/send-alimtalk.md): Send Kakao Alimtalk with an approved template code. Runnable code for Laravel, Node.js, Python, PHP, Java, Go, Ruby and .NET, plus every required field and why sends fail.
- [Send SMS, LMS and MMS in South Korea — code examples](https://sendgo.io/en/cookbook/send-sms.md): Send Korean SMS (90 bytes), LMS (long text) and MMS (with images) through Sendgo. Type selection, byte counting, verification-code patterns and advertising rules.
- [Send a Kakao Brand Message — the successor to Friendtalk](https://sendgo.io/en/cookbook/send-brand-message.md): Send Brand Messages to channel friends, non-friends, or every consenting friend at once. How targeting splits the request path, and when to keep using the Friendtalk endpoint.
- [SMS fallback when a Kakao Alimtalk fails](https://sendgo.io/en/cookbook/sms-fallback.md): Use replaceSms so a text message goes out when the Alimtalk cannot be delivered. Required fields, cost implications, and the mistake that silently sends nothing.
- [Bulk Alimtalk sending and per-recipient variables](https://sendgo.io/en/cookbook/bulk-send.md): Send one template to many recipients with different values each, in batches. Batch sizing, partial failures, queue patterns and the data hygiene that prevents most incidents.
- [Scheduling an Alimtalk or SMS — scheduleType and at](https://sendgo.io/en/cookbook/scheduled-send.md): Send at a specific time with scheduleType SCHEDULED. Timestamp format, the KST timezone trap, and how scheduling interacts with the advertising night ban.

## Operating

- [Registering an Alimtalk template and passing review](https://sendgo.io/en/cookbook/alimtalk-template.md): How Kakao Alimtalk template review works, why informational-only matters, how to lay out variables, and the wordings that get rejected.
- [Sendgo API error codes and retry strategy](https://sendgo.io/en/cookbook/error-handling.md): Every error code returned by the Sendgo send endpoints, and how to tell a failure worth retrying from one that will fail identically every time.
- [Short links in SMS and Alimtalk, with click tracking](https://sendgo.io/en/cookbook/short-url.md): Shorten long URLs to fit inside an SMS and measure who clicked. Creating short links, reading click stats, and splitting stats per campaign.

## Policy and migration

- [Advertising message rules in Korea — (광고) prefix, opt-out, night ban](https://sendgo.io/en/cookbook/ad-message-rules.md): What Korean law requires of promotional SMS and Kakao messages, and how to enforce it in code: the (광고) prefix, a free opt-out, and no sending between 21:00 and 08:00 KST.
- [Kakao Friendtalk shut down (2025-12-31) — migrating to Brand Message](https://sendgo.io/en/cookbook/friendtalk-sunset.md): What happens to existing Friendtalk code now that the channel has ended, when you must migrate to Brand Message, and the one case where the Friendtalk endpoint is still the right call.
