Open Source SMS Gateway for Android

A secure, open-source solution for sending and receiving SMS messages via Android devices. No registration, email, or phone number required — just install and use.
Compatible with Android 5.0+.

Operating Modes

Local Mode

Maximum privacy with data stored only on your device. Perfect for users who want complete control over their data.

  • All data stays on your device
  • No external servers needed
  • Complete data sovereignty

Cloud Mode

Public Cloud server with optional end-to-end encryption for enhanced security and accessibility.

  • Optional E2E encryption
  • Easy access from anywhere
  • Reliable cloud infrastructure

Private Mode

Deploy in your own infrastructure for complete control over the server environment and data storage.

  • Self-hosted infrastructure
  • Single command deployment
  • No rebuild required

How It Works

1

Install the App

Download and install SMS Gateway on your Android device

2

Get Credentials

Get username and password from the app's Home screen

3

Integrate API

Use REST API or ready-to-use client libraries to integrate with your application

Quick Start

curl -X POST -u <username>:<password> \
    -H "Content-Type: application/json" \
    -d '{ "textMessage": { "text": "Hello, doctors!" }, "phoneNumbers": ["+19162255887", "+19162255888"] }' \
    https://api.sms-gate.app/3rdparty/v1/messages

API Client Libraries

JavaScript / TypeScript

Official Node.js/JavaScript client library for SMS Gateway

npm install android-sms-gateway
bun add android-sms-gateway
Python

Official Python client library for SMS Gateway

pip install android-sms-gateway
Go

Official Go client library for SMS Gateway

go get github.com/android-sms-gateway/client-go
PHP

Official PHP client library for SMS Gateway

composer require capcom6/android-sms-gateway

Command Line Interface

Easy command-line access to SMS Gateway

Install the CLI tool from GitHub:

curl -LO https://github.com/android-sms-gateway/cli/releases/latest/download/smsgate_Linux_x86_64.tar.gz
tar xvf smsgate_Linux_x86_64.tar.gz

Example Usage

# Send an SMS message
smsgate -u <username> -p <password> send --phone '+19162255887' 'Hello, Dr. Turk!'
# Use environment variables
export ASG_USERNAME=<username>
export ASG_PASSWORD=<password>
# Send a message to multiple numbers
smsgate send --phone '+19162255887' --phone '+19162255888' 'Hello, doctors!'

Additional Services

Certificate Authority

Simplify secure communications with our CA for private networks.

Twilio Fallback

Automatically reroute failed Twilio messages via SMSGate without code changes.

Email-to-SMS Bridge

Convert emails into SMS messages with this SMTP server bridge. Perfect for integrating email-based notification systems.

SMPP Server

SMPP v3.4 protocol server for aggregators and high-volume SMS applications. Supports BIND_TRANSMITTER, BIND_RECEIVER, and BIND_TRANSCEIVER modes.

Frequently Asked Questions

Is SMSGate free?

Yes, SMSGate is completely free and open-source under the Apache License 2.0. No registration, email, or phone number is required to use the app.

What Android versions does SMSGate support?

SMSGate supports Android 5.0 (Lollipop) and above. The app works on both smartphones and tablets running compatible Android versions.

Do I need an internet connection?

In Local mode, no internet is required — you communicate directly with the device over your local network. Cloud mode requires internet access and uses Firebase Cloud Messaging for push notifications.

Can I send SMS from multiple SIM cards?

Yes, SMSGate supports devices with multiple SIM cards. You can configure which SIM to use for sending messages and even send messages from multiple SIMs simultaneously.

Is my data encrypted?

Yes. SMSGate supports end-to-end encryption, encrypting message content and recipient phone numbers before sending them to the API and decrypting them on the device.

Can I use my own server?

Yes, you can deploy SMSGate's private server in your own infrastructure with a single command. This gives you complete control over data storage and the server environment.