Quick Start
Get Ender up and running in 5 minutes.
Choose your path
Ender Cloud (Recommended)
Start sending SMS in under 2 minutes. No server needed.
- ✓ Free plan included
- ✓ Paid plans from $0.99/mo
Self-hosted
Deploy on your own server with Docker.
Continue reading below ↓
Self-hosted setup
Prerequisites
- Docker and Docker Compose installed
- An Android phone with a SIM card (or USB modem)
1. Create a docker-compose.yml
docker-compose.yml
services:
backend:
image: ghcr.io/ender-sms/backend:latest
environment:
- DATABASE_URL=postgresql://postgres:postgres@db:5432/ender
- SECRET_KEY=change-this-to-a-random-string
ports:
- "8000:8000"
depends_on:
- db
frontend:
image: ghcr.io/ender-sms/frontend:latest
ports:
- "5173:80"
db:
image: postgres:17
environment:
- POSTGRES_DB=ender
- POSTGRES_PASSWORD=postgres
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data: 2. Start the services
docker compose up -d This starts:
- Ender API server on port
8000 - Web dashboard on port
5173 - PostgreSQL database
3. Register an account
Open the dashboard at http://localhost:5173 and create your account.
4. Connect a device
Install the Ender Android app on your phone:
- Download the APK from GitHub Releases
- Open the app and enter your server URL:
http://YOUR_SERVER_IP:8000 - Log in with your credentials
- Grant SMS permissions when prompted
Your phone is now registered as a device and ready to send messages.
5. Create an API key
Back in the dashboard:
- Go to Settings → API Keys
- Click Create API Key
- Copy the key (it won't be shown again)
6. Send your first message
Use your API key to send an SMS:
curl -X POST http://localhost:8000/api/v1/sms \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+1234567890",
"message": "Hello from Ender!"
}' You'll get a response like:
{
"id": "msg_abc123",
"status": "queued",
"to": "+1234567890",
"message": "Hello from Ender!",
"device_id": "dev_xyz789",
"created_at": "2024-01-15T10:30:00Z"
} 7. Check message status
curl http://localhost:8000/api/v1/sms/msg_abc123 \
-H "Authorization: Bearer YOUR_API_KEY" Next steps
- Installation - Production deployment guide
- Webhooks - Get delivery notifications
- Nginx Guide - Set up SSL and reverse proxy