SMSDESK Developer Portal

Enterprise SMS & USSD Gateway Platform - Everything you need to integrate messaging services into your applications

Authentication Required: All API requests require an API key. Get yours from the web portal.

Available APIs

📨 SMS API

Base URL: https://{host}

Send SMS messages, retrieve delivery reports, view logs, and manage scheduled messages.

Example deployments: https://api.sms.com.na (Namibia), https://sms.yourcompany.com (Enterprise)

Key Features:

  • Send SMS: Single or bulk message sending
  • Delivery Reports: Real-time delivery status
  • Message Logs: View sent message history
  • Scheduled Messages: Queue messages for future delivery
  • Message Preview: Validate before sending

Authentication:

Authorization: YOUR_API_KEY
View SMS API Documentation

📱 USSD API

Base URL: https://{host}

Build interactive USSD applications with session management and menu navigation.

Example deployments: https://ussd.sms.com.na (Namibia), https://ussd.yourcompany.com (Enterprise)

Key Features:

  • USSD Relay: Receive and respond to USSD requests
  • Session Management: Track user sessions
  • Menu Navigation: Build interactive menus
  • Webhooks: Real-time USSD event notifications
  • Testing Tools: Simulate USSD sessions

Authentication:

Authorization: YOUR_API_KEY
View USSD API Documentation

SMPP Server

Protocol: SMPP v3.4

Connect your system via SMPP protocol for sending and receiving SMS messages.

Key Features:

  • Send SMS: SUBMIT_SM PDU support
  • Receive SMS: DELIVER_SM PDU support
  • Bind Types: TRANSMITTER, RECEIVER, TRANSCEIVER
  • Delivery Reports: Optional DLR support
  • Session Management: Automatic keepalive

Authentication:

System ID: your-email@example.com
Password: first 8 chars of API key
View SMPP Server Documentation

Error Codes Reference

Centralized Error Handling

Comprehensive error code documentation for all SMSDESK APIs and SMPP operations.

Categories:

  • Backend Errors: AUTH_xxx, VAL_xxx, SYS_xxx
  • SMPP Protocol: ESME_xxx (standard codes)
  • SMPP Custom: CONN_xxx, SUB_xxx
  • Error Types: Error, Warning, Information

Example Response:

{
  "error": {
    "code": "AUTH_001",
    "message": "Invalid API key"
  }
}
View Error Codes Reference

� Web-Based Subscription Management

NEW: Public API - No Auth Required

Allow users to opt-in/opt-out via web links - perfect for alphanumeric sender IDs that cannot receive SMS replies.

Key Features:

  • Public Endpoints: No authentication required for user convenience
  • Beautiful UI: Mobile-responsive confirmation pages
  • Alphanumeric Support: Solve the "can't reply to SchoolSMS" problem
  • URL Shortening: Save SMS characters with short links
  • Instant Processing: Real-time database updates

Example Endpoints:

Opt-Out: /sms/2/messages/subscription/{clientid}/opt/out/{mobile}
Opt-In:  /sms/2/messages/subscription/{clientid}/opt/in/{mobile}
View Subscription API

�📡 Webhooks

Security: HMAC-SHA256 Signed

Receive real-time notifications for delivery receipts and opt-out events with secure HMAC-SHA256 signatures.

Key Features:

  • Delivery Receipts (DLR): Real-time message status updates
  • Opt-out Events: STOP keyword notifications
  • HMAC-SHA256: Cryptographic signature verification
  • Retry Logic: Automatic retry with exponential backoff
  • Idempotent: Safe to retry on failures

Signature Header:

X-Signature: sha256=<hmac-hash>
View Webhooks Documentation

🔧 Interactive API Reference

Format: OpenAPI 3.0 (Swagger)

Explore the live API definitions with interactive Swagger UI. Inspect request/response schemas, try endpoints directly from your browser, and generate code samples.

Key Features:

  • Live Schema Explorer: All request/response models documented
  • Try It Out: Send test requests directly from the UI
  • Auto-Generated: Spec generated from actual server routes
  • Deep Linking: Share direct links to specific endpoints

Available Specs:

SMS API:  /swagger/json (port 2019)
USSD API: /swagger/json (port 2020)
Open Swagger UI

Custom Integrations

Platform-specific endpoints: Pre-built integrations for third-party platforms

SMSDESK provides custom API endpoints that match the parameter names, authentication methods, and response formats of popular third-party platforms — no middleware required.

Available Integrations:

  • SAP Connect: SAP ERP / Business One SMS sending
  • WaitWhile: Queue & booking webhook receiver with SMS notifications
  • Elixir Batch: Elixir-formatted batch SMS (legacy)
  • WSDL / SOAP: SOAP web service for legacy systems
View Custom Integrations

Getting Started

1. Get Your API Credentials

Sign up or log in to your SMSDESK Portal (e.g., https://desk.sms.com.na or your enterprise deployment) to obtain your API key.

Complete Configuration Guide

2. Choose Your API

Select the API that fits your needs:

  • SMS API: For sending text messages via REST
  • SMPP Server: For SMPP v3.4 protocol connectivity
  • USSD API: For interactive mobile services
  • Custom Integrations: Pre-built endpoints for SAP, WaitWhile, and more

3. Make Your First Request

Use the examples in our documentation to send your first API request.

curl -X POST https://{host}/sms/2/messages \
  -H "Authorization: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"messages":[{"from":"YourBrand","destinations":[{"to":"+264811234567"}],"text":"Test message"}]}'

Replace: {host} with your deployment URL (e.g., api.sms.com.na or sms.yourcompany.com)

API Standards

🔒 Security

  • All requests must use HTTPS
  • API key authentication required
  • Rate limiting: 300 requests/minute
  • IP whitelisting available

📋 Response Format

  • JSON format for all responses
  • Standard HTTP status codes
  • Detailed error messages
  • Request ID for tracking

âš¡ Performance

  • Average response time: <200ms
  • 99.9% uptime SLA
  • Global CDN distribution
  • Automatic failover

Error Handling

HTTP Status Codes

Code Description
200 Success - Request completed successfully
400 Bad Request - Invalid parameters
401 Unauthorized - Invalid or missing API key
403 Forbidden - Insufficient permissions
429 Too Many Requests - Rate limit exceeded
500 Internal Server Error - Contact support

Need Help?

Our support team is here to assist you

Product Website: smsdesk.online (coming soon)

Developer: Connect Information Technology cc

For deployment-specific support, contact your system administrator or deployment provider.