API Documentation
Comprehensive guide to integrating iMissive SMS, OTP, Webhooks, and SMPP services into your applications
Quick Start
Send your first message in just a few minutes
Log in to your dashboard and retrieve your API key from the Settings section.
Use the following code to send your first message:
curl -X POST https://api.example.com/v1/sms/send \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+966501234567",
"message": "Hello from iMissive!",
"sender_id": "MyCompany"
}'* Replace YOUR_API_KEY with your actual API key. Production URL provided after onboarding.
Authentication
All API requests require authentication via Bearer Token
Authorization: Bearer YOUR_API_KEY
Include this header in all your API requests. API keys are available from your dashboard.
- Never share your API key publicly
- Use environment variables to store keys
- Rotate keys regularly
- Always use HTTPS
SMS API
Send single or bulk SMS messages
{
"to": "+966501234567",
"message": "Your message content here",
"sender_id": "MyCompany",
"scheduled_at": "2024-01-15T10:00:00Z" // optional
}{
"messages": [
{ "to": "+966501234567", "message": "Hello User 1" },
{ "to": "+966501234568", "message": "Hello User 2" }
],
"sender_id": "MyCompany"
}OTP API
Generate and verify one-time passwords
{
"phone": "+966501234567",
"length": 6, // 4-8 digits
"expiry": 300, // seconds (configurable)
"template": "Your verification code is: {code}"
}{
"otp_id": "otp_abc123",
"code": "123456"
}Webhooks
Receive real-time notifications about message status
Configure your webhook URL from the dashboard to receive notifications.
POST https://your-server.com/webhook
{
"event": "message.delivered",
"message_id": "msg_abc123xyz",
"timestamp": "2024-01-15T10:01:23Z",
"data": {
"to": "+966501234567",
"status": "delivered",
"delivered_at": "2024-01-15T10:01:22Z"
}
}message.queuedMessage queued for deliverymessage.sentMessage sent to carriermessage.deliveredMessage delivered to recipientmessage.failedMessage delivery failedSMPP Connectivity
Enterprise SMPP v3.4 connectivity for high-volume messaging
SMPP v3.4* SMPP credentials and connection details available after technical onboarding for qualified enterprise customers
- Unicode support for Arabic messages
- Long messages (automatic concatenation)
- Delivery reports (DLR)
- Message scheduling
- Multiple binds
Rate Limits
Rate limits and throughput depend on the approved account configuration, route, sender type, and commercial agreement
* Contact sales for your account-specific limit details
X-RateLimit-Limit: <account_limit> X-RateLimit-Remaining: <remaining_quota> X-RateLimit-Reset: <reset_timestamp>
Error Codes
Reference for common error codes and how to handle them
400Bad Request
Check the request body for validation errors
401Unauthorized
Invalid or missing API key
403Forbidden
You do not have permission for this action
429Too Many Requests
Rate limit exceeded
500Server Error
Try again later
INVALID_PHONEInvalid phone number formatINVALID_SENDERSender ID not authorizedINSUFFICIENT_CREDITSNot enough creditsMESSAGE_TOO_LONGMessage exceeds maximum lengthFrequently Asked Questions
Answers to the most common questions
Code Examples
Quick examples to get you started with integration
curl -X POST https://api.example.com/v1/sms/send \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+966501234567",
"message": "Hello from iMissive!",
"sender_id": "MyCompany"
}'Ready to start integrating?
Contact us to get your API keys and start integrating enterprise messaging services