Getting started
Hiras turns an Android phone into a self-hosted, LAN-only SMS gateway. Install the app, tap Start, and anything on the same network can send SMS through the phone’s SIM over a small REST API. No accounts, no cloud, no subscriptions — your phone, your SIM, your data.
Hiras is built for a solo developer, student, or indie hacker who needs to send or receive SMS for local development, testing, or a low-volume integration. It is deliberately not a bulk-messaging, campaign, or CRM platform.
Four steps
- Install Hiras on an Android phone (Android 8.0 or newer) with a working SIM.
- Tap Start and grant the SMS permission. Hiras begins hosting on your local network.
- Copy the address and key. The app shows its LAN URL —
http://<phone-ip>:8080— and an API key beginningsk_local_. Scan the on-screen QR code to copy both at once. - Call the API from any device on the same network.
Your first request
curl -X POST http://<phone-ip>:8080/api/sms/send \
-H "Authorization: Bearer sk_local_xxxxxxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"to":"09171234567","message":"Hello from Hiras"}'
A successful send returns:
{
"success": true,
"mode": "real",
"smsSent": true,
"messageId": "msg_...",
"status": "queued",
"segments": 1
}
Want to try it without spending a text? Send the same request in Dry Run mode — Hiras validates everything and returns a realistic response without touching your SIM.
Good to know
- Hiras and the calling device must be on the same local network. Requests from outside your private network are refused before anything else runs.
- LAN traffic is plain HTTP. The API key authenticates every request except the health check.
- Messages are sent through your own SIM, so your carrier’s normal charges apply.
status: "queued"means Hiras handed the message to Android to send. It is not a carrier-side delivery receipt — Hiras reportsqueued, thensentorfailed.
Next
- REST API — every endpoint, in full.
- Authentication — how the API key works.