Merpati turns any Android phone with a SIM into an SMS gateway. Send and receive from a web inbox or a REST API — through phones you own, on a server you run, with no SMS provider in between.
Conversations per number, chat-style threads, a searchable log, sent / delivered / returned at a glance.
Queue an SMS with one POST from your shop, school or monitoring system, and follow its status.
The Android app sends through the phone's own SIM, dual-SIM aware, and uploads incoming SMS and contacts.
Every account sees only its own phones and messages. Admins get totals, never other people's SMS.
A pause between messages, numbers normalised, and failed SMS never re-sent behind your back.
MIT licensed, English and Indonesian, light and dark. Run it with one docker compose command.
Writes the SMS in the inbox or calls the API.
Queues it, keeps the history, tracks the status.
Polls the server, sends it, reports back.
Gets a normal SMS from your number.
The phone always calls the server, never the other way round — so it works behind any mobile network or NAT.
curl -X POST https://merpati.hidayatsattar.dev/api/v1/messages/ \
-H "Authorization: Api-Key sk_..." \
-H "Content-Type: application/json" \
-d '{"phone_number": "081234567890", "body": "Your order has shipped"}'
Sign in to open your inbox, register a phone and create an API key.