FlowRunner
PricingContact
Theme
Start Free

SOLAPI

Messaging

Connect AI agents to SOLAPI, a South Korean messaging gateway covering SMS, KakaoTalk, RCS, fax, and voice. Agents send messages across channels, manage Kakao templates and sender numbers, track balances and statistics, and react to delivery reports and inbound faxes so Korean customer messaging runs end to end.

3 triggers 87 actions Custom auth available
SOLAPI website ↗ Platform Documentation ↗ Capability data verified 2026-08-12
An order or shipment event in the commerce system opens a Korean customer notification
List Active Sender Numbers returns only numbers in ACTIVE state, which are the only numbers SOLAPI will actually send from
List Sendable Kakao Templates returns only approved, non dormant, non hidden templates, which is what an Alimtalk send genuinely requires
Get Balance and Get Sending Quota are read together, because a scheduled send consumes the day's quota when it is booked rather than when it fires
Send Kakao Alimtalk delivers from the approved template, with SMS fallback on a registered sender number behind it
Message Report Received returns each message's final outcome with status code, carrier and timestamps
A recipient's opt out request stops for a person before Register 080 Unsubscribe is called, because it blocks senders and messages the recipient on their behalf

What This Integration Enables

SOLAPI is a South Korean messaging gateway, and the thing to understand about it is that the API is not built around a message. It is built around permission to speak in Korea. Korean regulation requires every sender number to be registered and verified before it can send. A number verified by self certification expires after six months, one number may be verified by one account at a time, and a business account submits a telecommunications usage certificate and an employment certificate as uploaded documents. Layered on top of that is Kakao's own regime, where an Alimtalk template goes through an inspection that takes one to three business days, every content edit invalidates the previous approval, and an approved template that goes unused is put into dormancy and silently stops sending. Nine of the eighty seven actions here exist purely to administer sender numbers, and eighteen more exist to administer Kakao channels, channel groups and templates. That ratio is the product.

For a team messaging Korean customers, that regulatory weight is the reason to use a domestic gateway rather than route Korea through a global provider, and this connector exposes the whole apparatus rather than a send box. One credential covers SMS, LMS and MMS, KakaoTalk Alimtalk and Friendtalk, Naver Smart Notification, RCS, fax and text to speech voice calls. Around that sit staged bulk groups holding up to a million messages, per country pricing, the daily sending quota, and both unsubscribe lists Korea distinguishes: the account's own suppression list and the regulatory 080 and spam blocklist populated by recipients and by KISA reporting. Authentication is per request HMAC SHA256 signing with a fresh timestamp and salt on every call, because SOLAPI rejects a reused salt and a clock skew beyond fifteen minutes, so a cached header would start failing rather than degrade.

Three triggers close the loop: Message Report Received on each message's final outcome, Group Report Received when a whole staged group finishes with its full accounting, and Fax Received on inbound faxes with the stored file id. FlowRunner registers a SOLAPI webhook per active trigger and deletes only its own on deactivation, which matters because the account is limited to two webhook slots by default. Delivery failures, expired sender registrations and dormant templates surface as automation exceptions rather than as a quieter send volume nobody investigates. Note that this connector was built from SOLAPI's own current reference and its official SDK rather than from probes against a live account, and the vendor's documentation is in Korean, with parameter names and enum values transcribed verbatim.

Without FlowRunner

Sender eligibility discovered at send time A number that expired its six month self certification is used, and the failure is read as a delivery problem rather than a registration one
Kakao approval state assumed An Alimtalk template that Kakao put into dormancy stops sending quietly, and nobody connects the drop to a template nobody used for a while
Daily quota accounted for on the day of the send A large booking is scheduled, the allowance is already gone when the transactional traffic needs it, and the two compete

With FlowRunner

Sender eligibility read before the send List Active Sender Numbers narrows the choice to numbers that can send right now, with expiry and outstanding requirements visible
Kakao approval state read before the send List Sendable Kakao Templates is the pre flight, and Release Kakao Template Dormancy is the fix rather than a fresh review cycle
Quota treated as a reservation Booking is understood to spend the allowance immediately, so the marketing reservation and the authentication headroom are weighed together

Use Case Scenarios

Transactional Alimtalk with a fallback that is actually available

A Korean commerce operation notifies customers of shipment and delivery over KakaoTalk, because that is where Korean customers read. The agent takes the day's shipments from Shopify, calls List Sendable Kakao Templates to confirm the shipping template is approved and awake, and calls List Active Sender Numbers to confirm the SMS fallback behind it has a number that can actually send. Then Send Kakao Alimtalk goes out with per recipient variable substitution. Message Report Received returns each outcome with its status code and carrier, and the failures that are carrier level get retried while the failures that are registration level get routed to a person, because retrying those is pointless. Get Message Group returns the exact cash and points deducted, which is what reconciles against QuickBooks Online.

A million message campaign staged before it is spent

Above ten thousand messages SOLAPI recommends the staged group workflow, and it is worth using for a reason beyond scale. Create Message Group opens a group in PENDING, the only state that accepts messages. Add Messages To Group loads up to ten thousand per call against a group ceiling of a million, with strict validation deciding whether a bad message is skipped and counted or rejects the whole batch. Nothing is billed and nothing is sent until Send Message Group runs, and Schedule Message Group with Cancel Scheduled Message Group gives a real recall path that returns the group to PENDING with its messages intact. That gap between assembled and dispatched is where a marketing team can price the send with Get Message Pricing, check Get Sending Quota, and decide, rather than discovering the number afterwards.

Template governance that does not depend on someone remembering

Kakao suspends approved templates that go unused, and a dormant template does not error loudly, it just stops working. A scheduled agent lists the account's templates, compares against what actually sent in the last period using Get Statistics, and flags the ones drifting toward disuse. Where dormancy has already been applied, Release Kakao Template Dormancy restores the template without a fresh one to three day review. Where a template needs content changes, the agent knows that Update Kakao Template invalidates the previous approval and that Request Kakao Template Inspection starts the clock again, so it opens a task in Jira with the review window stated rather than editing a template the week of a campaign.

Human-in-Loop Highlight

The gate on SOLAPI is Register 080 Unsubscribe, and it is unusual because the irreversible act is not a send and not a deletion. It is a consent record written on behalf of somebody else. The action registers a recipient's opt out for them, SOLAPI then blocks every sender number that reached that recipient in the last fourteen days, and the platform notifies the recipient by message that this has happened. Three things follow from that. The block is account wide across recent senders rather than scoped to the campaign that prompted it. A repeat for the same number inside seven days is ignored, so a correction is not simply a second call. And a wrong number does not fail quietly: a stranger receives an unsolicited message telling them they have been opted out of something they never subscribed to, which is a regulatory problem created by an attempt to solve one.

An agent can do everything up to that line. It can read the inbound message, classify it as an opt out request, match it against List Blocked Numbers to see whether the number is already suppressed, and check List Unsubscribe Numbers to see whether the account's own suppression list would be enough. What it cannot do is confirm that the number it parsed belongs to the person who asked. So it stops, and into Slack it asks: "Inbound message on 02-XXXX-1188 reads as an opt out request. Parsed number 010-XXXX-4471 is not on the account unsubscribe list and not in List Blocked Numbers. Register 080 Unsubscribe would block every sender number that reached this number in the last 14 days and send them a notification message. Confirm the number, or record it on the account list only?"

That question takes a person seconds and cannot be answered by the API at all. It is also the right shape for the split this platform hands you: the account's own unsubscribe list is the reversible half, and Save Unsubscribe Number runs without approval because suppressing a number is a safe default that can be undone. The 080 registration is the half that reaches outward, touches a third party's regulatory record and notifies them, and that half waits for a person. That is the digital andon cord doing its job under Orchestration as a Service. It is worth saying what the gate is not: it is not a review of copy, and it is not a spend approval, because SOLAPI already answers the spend question for free with Get Message Pricing and Get Balance before anything is dispatched.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via Slack
Human decides
Agent resumes with decision

Agent Capabilities

87 actions

Messages

8
  • Send Messages The unified dispatch route, taking fully specified message objects so a single call can mix channels and reach options the typed actions do not expose, including RCS carousels, Brand Message payloads and per message fallback chains.
  • Send SMS A typed Korean SMS send with the 90 byte ceiling checked before dispatch, counted the way SOLAPI counts it rather than as UTF-8. Each recipient may override the shared body, which is how a personalized batch goes out in one request.
  • Send LMS The long message form, with a 2,000 byte body and a 40 byte title, validated before the request so an over length message is refused rather than truncated by the gateway.
  • Send MMS A long message carrying an image previously placed in storage with Upload File, subject to SOLAPI's own size and format limits for the MMS file type.
  • Send Kakao Alimtalk Sends an Alimtalk from a Kakao approved template with per recipient variable substitution. SMS fallback is on by default and needs a registered sender number behind it to work at all.
  • Send Naver Smart Notification The same template shaped send over a Naver TalkTalk channel, for accounts that reach customers through Naver rather than or alongside KakaoTalk.
  • Send Voice Message Places a text to speech call with an optional greeting and closing announcement, a keypad reply digit range, or a transfer to a live agent. A closing requires a greeting, and a reply range and a transfer number cannot be combined.
  • List Messages Returns sent messages with their outcome, filtered simply or through SOLAPI's advanced search triple of fields, operators and values. Message history is retained for six months from creation.

Message Groups

10
  • Create Message Group Opens an empty group in PENDING state, which is the only state that accepts messages. This is the first step of the staged bulk workflow SOLAPI recommends above ten thousand messages.
  • Add Messages To Group Loads up to ten thousand messages per call into a PENDING group that holds up to a million. With strict validation off, invalid messages are skipped and counted; with it on, one bad message rejects the whole batch.
  • Send Message Group Dispatches everything in the group. The group becomes immutable and the account is billed, and this cannot be undone, which is why the assemble step and the send step are deliberately separate.
  • Schedule Message Group Books the group for a future send. Daily quota is consumed immediately at booking while the balance is taken at send time, so a large reservation can exhaust the day's allowance in advance of spending any money.
  • Cancel Scheduled Message Group Cancels a booked send and returns the group to PENDING with its messages intact, which makes scheduling the safer way to run a large campaign rather than dispatching it directly.
  • Delete Messages From Group Removes selected messages from a group, restricted to groups still in PENDING. An empty id selection is refused rather than sent.
  • Delete Message Group Deletes a whole group, also restricted to PENDING. A group that has been dispatched is a billing record and cannot be removed.
  • Get Message Group Returns final counts, the per type and per country charge breakdown, and the exact cash and points deducted. This is the reconciliation read after a group send.
  • List Group Messages Returns the messages inside one group, cursor paginated and keyed by id rather than returned as an array.
  • List Message Groups Returns the account's groups with their state, which is how a flow finds a booked group it needs to cancel or a stale PENDING group nobody dispatched.

Statistics

3
  • Get Statistics Aggregated totals, averages, refunds and per type success and failure counts, broken down by month and by day.
  • List Daily Statistics The raw per day records with settlement flags, which is the surface a finance team reconciles against rather than the aggregate view.
  • Download Statistics Spreadsheet Exports statistics as an xlsx file into FlowRunner file storage, for handing to a system or a person that wants the workbook rather than the API.

Sender Numbers

9
  • Get Sender Numbers The full registry with each number's state, verification method, expiry date and any outstanding requirement. This is where a six month self certification expiry becomes visible before it becomes a delivery failure.
  • List Active Sender Numbers Only the numbers in ACTIVE state, which are the only numbers SOLAPI will actually send from. This is the pre flight read before any send that names a sender.
  • Check Sender Number Duplicate Tests whether another account already holds a number, since one number may be verified by one account at a time. Run it before registering rather than after the registration is rejected.
  • Register Sender Number Registers a number, with or without the supporting documents a business account submits. Documents are placed with Upload File under the Document file type and referenced by id.
  • Update Sender Number Status Moves a number between ACTIVE and INACTIVE. It is also the required first step before deletion, because a number in ACTIVE state cannot be deleted.
  • Delete Sender Number Removes a number from the registry and emails the account. Re registering the same number afterwards means going through verification again, so this is a slower change than it looks.
  • List Sender Number Aliases Returns the internal labels applied to sender numbers, which appear in the console and in API responses and are never shown to recipients.
  • Set Sender Number Alias Applies an internal label to a sender number, which is how a flow tells a marketing number from a transactional one without hardcoding digits.
  • Delete Sender Number Alias Removes an internal label. The number itself is unaffected, which is the distinction between this and Delete Sender Number.

Storage

4
  • Upload File Places a file by base64 content or from a URL, with the file type selecting the limits SOLAPI applies: an MMS image, an Alimtalk attachment, a fax document or a supporting document each have their own ceiling and ratio rules.
  • List Files Returns the files held on the account, paged up to a thousand per page, which is how a flow finds an existing asset rather than uploading it again.
  • Get File Returns one file's details including the resources currently referencing it, which is the read to run before deleting anything.
  • Delete File Removes a stored file. Anything still referencing it stops resolving, which is why Get File reports the references first.

Kakao Channels

10
  • List Kakao Channels Returns the KakaoTalk channels linked to the account, which are the identities Alimtalk and Friendtalk actually send from.
  • Get Kakao Channel Returns one channel with its detail, for confirming state before a send or before a template is registered against it.
  • List Kakao Channel Categories Returns the category taxonomy Kakao requires when a channel is linked, so a flow can supply a valid value rather than guess.
  • Request Kakao Channel Token Starts the two step linking flow. The token is delivered by Alimtalk to a channel manager's phone, which means a human is in this loop by Kakao's design rather than by ours.
  • Link Kakao Channel Completes the link using the token a channel manager received, after which the channel can carry templates and send.
  • Unlink Kakao Channel Removes the link and deletes the channel's Alimtalk templates in SOLAPI along with it. Rebuilding those templates means fresh Kakao inspection, so this is a much larger action than its name suggests.
  • Request Kakao Channel Service Token Starts the same phone delivered token flow for adding a further service connection to a channel that is already linked.
  • Add Kakao Channel Service Completes that additional service connection using the received token.
  • Share Kakao Channel Grants another SOLAPI account the ability to send through your channel, which is how an agency sends on a client's identity.
  • Stop Sharing Kakao Channel Revokes that grant. Any partner sending through the channel loses the ability immediately, so it is worth knowing who is downstream before calling it.

Kakao Templates

13
  • List Kakao Templates Returns the account's Alimtalk templates with their inspection status, which includes the ones that cannot currently be sent.
  • Get Kakao Template Returns one template in full, including the content Kakao reviewed and the emphasis and button configuration it was approved with.
  • List Sendable Kakao Templates Returns only approved, non dormant, non hidden templates, which is the set a send can actually use. This is the correct pre flight rather than the full list.
  • List Kakao Template Categories Returns Kakao's template category taxonomy, required when a template is created.
  • Create Kakao Template Creates a template against exactly one of a channel or a channel group. Kakao's own rules govern which fields each message type and emphasis type requires, and they are enforced before the request.
  • Update Kakao Template Changes template content. Every content edit invalidates the previous approval, so an update is the start of a new inspection cycle rather than a live change.
  • Rename Kakao Template Changes the template name, which works while a template is under inspection or already approved, because the name is not content Kakao reviews.
  • Delete Kakao Template Permanently removes a template. Recreating it means a fresh inspection of one to three business days, so this is not a reversible cleanup.
  • Request Kakao Template Inspection Submits a template for Kakao review. Review takes one to three business days, which is the number to plan a campaign around.
  • Cancel Kakao Template Inspection Withdraws a template from review, for when the content was wrong and resubmitting is better than waiting for a rejection.
  • Release Kakao Template Dormancy Restores an approved template that Kakao suspended for going unused, without a fresh review. This is the fix for a template that stopped sending quietly rather than loudly.
  • Download Kakao Templates Spreadsheet Exports channel templates as a workbook. The export is also the import format, which is what makes bulk template copying possible.
  • Upload Kakao Templates Spreadsheet Imports templates from that same workbook format, so a template set can be copied between channels in bulk rather than recreated by hand.

Kakao Channel Groups

5
  • List Kakao Channel Groups Returns the channel groups on the account, which let several channels share one Alimtalk template.
  • Get Kakao Channel Group Returns one group with its member channels and its current state.
  • Create Kakao Channel Group Creates a group from at least two channels, with a justification Kakao reviews. A single channel group is refused before the request.
  • Rename Kakao Channel Group Renames a group, limited to groups still in PENDING or REJECTED state.
  • Delete Kakao Channel Group Deletes a group, also limited to PENDING or REJECTED. An approved group is not removable this way.

Unsubscribes

8
  • List Unsubscribe Numbers Returns the account's own suppression list, which is the reversible half of opt out handling and the one a flow can safely write to.
  • Save Unsubscribe Number Adds one number to the account's suppression list. This is the safe default response to an opt out request, because it stops messages without touching a regulatory record.
  • Add Unsubscribe Numbers In Bulk Adds up to five hundred numbers per request. An empty selection is refused rather than sent, since a bulk call with nothing in it is almost always a mapping failure.
  • List Unsubscribe Groups Returns the unsubscribe groups, each of which decides which sender numbers its numbers apply to.
  • Save Unsubscribe Group Creates or updates a group. A group scoped to no sender numbers is refused, because SOLAPI would store something that looks configured in the console and suppresses nothing. New groups default to inactive.
  • Download Unsubscribe Group Spreadsheet Exports a group's numbers as a workbook, for audit or for handing to a compliance owner outside the platform.
  • List Blocked Numbers Returns the 080 unsubscribes and spam reports recorded against your sender numbers. This list is populated by recipients and by Korea's KISA reporting channel rather than by you.
  • Register 080 Unsubscribe Registers a recipient's opt out on their behalf. SOLAPI blocks every sender number that reached them in the last fourteen days and notifies the recipient by message, so this acts on real subscriber consent and is not a lookup. A repeat for the same number within seven days is ignored.

Account and Billing

3
  • Get Account Warnings Returns warnings, which can precede sending restrictions. Worth reading when sends start failing for no obvious reason, because the cause may be an account state rather than a message.
  • Get Balance Returns the three money figures, and they need reading carefully: balance is cash plus deposit, balanceOnly is the cash alone, and deposit excludes VAT. Treating balance as spendable cash overstates it.
  • List Balance History Every movement of cash and points, with the message group id behind each charge, which is what makes a send reconcilable line by line.

Pricing

4
  • Get Message Pricing The effective price for this account, which is the number a campaign should be costed against rather than the list price.
  • Get Default Message Pricing The platform list price, useful as the comparison that shows what an account's own rate actually is.
  • List Country Message Pricing The per country table, which is what an international send needs before the recipient list is finalized rather than after.
  • Get App Message Pricing The price as it applies through an App Store application, for accounts sending under a partner integration.

Sending Quota

4
  • Get Sending Quota The daily cap on accepted messages. Reading it alongside the balance is the honest pre flight, because quota and money are two separate ways a send can stop.
  • Update Sending Quota Sets the daily limit directly, between fifty and ten million. Direct setting is restricted to allowlisted accounts; automatic adjustment is the usable control for everyone else.
  • Get Quota Adjustment Estimate Returns what an adjustment would produce before it is applied, which is the closest thing this surface has to a dry run on the quota.
  • List Quota History The record of quota changes over time, for understanding why a day's allowance was what it was.

Webhooks

6
  • List Webhook Events Returns the event types SOLAPI can push, which is the reference for anything subscribing outside FlowRunner.
  • List Webhooks Returns the webhooks registered on the account. The account is limited to two by default, and an active FlowRunner trigger occupies one of them.
  • Create Webhook Registers a webhook for consumption by a system other than FlowRunner. Setting a secret makes SOLAPI send its SHA-1 hash in a header so the receiver can verify origin.
  • Update Webhook Changes a webhook, and is also how a webhook set INACTIVE after repeated delivery failures is re enabled.
  • Delete Webhook Removes a webhook. Do not use it on a webhook a FlowRunner trigger created, because the trigger will still believe it is subscribed.
  • Send Test Webhook Fires a test delivery at a registered endpoint, for confirming a receiver answers within SOLAPI's five second window before real events depend on it.

Triggers

3 triggers

Event Triggers

3
  • Message Report Received Fires on each message's final outcome, carrying the status code, carrier, timestamps and any custom fields set at send time. Filter by message type, status code or sender number so a flow wakes only for the outcomes it acts on.
  • Group Report Received Fires when a whole staged group finishes, with its final counts and full accounting. Filter by group status. This is the natural completion signal for the bulk workflow and the point at which reconciliation can run.
  • Fax Received Fires on an inbound fax with the page count, the stored file id and a download URL, filtered by receiving number. Korean business processes still run on fax in places, and this makes an inbound one an ordinary flow input.

Frequently Asked Questions

What can FlowRunner do with SOLAPI?

FlowRunner agents can run Send Messages, Send SMS, and Send LMS in SOLAPI, plus 84 more actions.

Does connecting SOLAPI to FlowRunner require OAuth?

SOLAPI uses a custom authentication method to connect to FlowRunner.

Can SOLAPI trigger a FlowRunner workflow automatically?

Yes. SOLAPI supports 3 triggers that can start a FlowRunner workflow automatically.

Start building with SOLAPI

$100 in credits. No card required. Connect in minutes.