Getting Started
The SMSPro API allows you to send SMS messages, manage contacts, and track campaigns programmatically. Our RESTful API uses standard HTTP methods and returns JSON responses.
Base URL
https://api.smsprosolutions.com/v1/
Requirements
- Active SMSPro account (sign up at smsprosolutions.com)
- API key (available in your dashboard)
- HTTPS-enabled application
Authentication
All API requests require authentication using your API key. Include your API key in the request header:
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
Example Request
curl -X GET https://api.smsprosolutions.com/v1/account \
-H "Authorization: Bearer sk_live_abc123xyz456" \
-H "Content-Type: application/json"
Send SMS
POST /sms/send
Send a single SMS message to a recipient.
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
to |
string | Yes | Recipient phone number (E.164 format) |
message |
string | Yes | SMS message content (max 1600 chars) |
from |
string | No | Sender ID (alphanumeric, max 11 chars) |
Example Request
{
"to": "+1234567890",
"message": "Your verification code is 123456",
"from": "SMSPro"
}
Example Response
{
"success": true,
"message_id": "msg_abc123xyz456",
"status": "sent",
"to": "+1234567890",
"credits_used": 1,
"timestamp": "2025-01-17T12:00:00Z"
}
Bulk SMS
POST /sms/bulk
Send SMS messages to multiple recipients at once.
Example Request
{
"messages": [
{
"to": "+1234567890",
"message": "Hello {{name}}, your order is ready!",
"variables": {"name": "John"}
},
{
"to": "+0987654321",
"message": "Hello {{name}}, your order is ready!",
"variables": {"name": "Jane"}
}
],
"from": "SMSPro"
}
Error Codes
| Code | Description |
|---|---|
400 | Bad Request - Invalid parameters |
401 | Unauthorized - Invalid API key |
402 | Payment Required - Insufficient credits |
429 | Too Many Requests - Rate limit exceeded |
500 | Internal Server Error |