REST API v1.0.0 Production Ready

Powerful messaging API for developers

Integrate SMS, WhatsApp, and USSD messaging into your applications with our simple, reliable REST API. Built for scale, designed for developers.

Base URL:

https://api.spryconnect.com

Send SMS

curl -X POST https://api.spryconnect.com/api/v1/external/sms/quick \ -H "x-api-key: YOUR_API_TOKEN" \ -H "x-api-secret: YOUR_API_SECRET" \ -H "Content-Type: application/json" \ -d '{ "to": "233241234567", "from": "MyApp", "message": "Hello from SpryConnect API!" }'

Built for developers, designed for scale

Everything you need to integrate multi-channel messaging into your applications.

RESTful API

Simple, intuitive REST endpoints with JSON responses. Standard HTTP methods and status codes.

  • • JSON request/response format
  • • Standard HTTP status codes
  • • Rate limiting with headers

Secure Authentication

API key and secret authentication with secure request signing. Enterprise-grade security.

  • • API key authentication
  • • Secure credential management
  • • Request validation

High Performance

99.9% uptime SLA with global infrastructure. Handle millions of messages with ease.

  • • 99.9% uptime guarantee
  • • Global message delivery
  • • Auto-scaling infrastructure

Get started in minutes

Follow these simple steps to start sending messages through our API.

1

Get API Credentials

Sign up for a SpryConnect account and generate your API credentials from the dashboard.

2

Get API Credentials

Contact your administrator or use the main web application to obtain your API credentials.

3

Start Sending Messages

Use your API credentials directly in your requests to send SMS messages and access other endpoints.

4

Monitor & Scale

Track delivery status, view analytics, and scale your messaging volume as needed.

Quick Start Example

# Send SMS with API credentials curl -X POST https://api.spryconnect.com/api/v1/external/sms/quick \ -H "x-api-key: YOUR_API_TOKEN" \ -H "x-api-secret: YOUR_API_SECRET" \ -H "Content-Type: application/json" \ -d '{ "to": "233241234567", "from": "MyApp", "message": "Hello from SpryConnect API!" }' # Response { "success": true, "message": "SMS sent successfully", "data": { "batch_id": "QM-123456-1640995200", "total_recipients": 1, "credit_cost": 1 } }

API Endpoints

Comprehensive messaging capabilities through simple REST endpoints.

POST

/api/v1/external/sms/quick

Send SMS messages quickly

GET

/api/v1/external/sms/batches

Get list of message batches

GET

/api/v1/external/sms/dashboard

Get dashboard statistics

Code Examples

Ready-to-use code snippets in popular programming languages.

cURL Example

# Send SMS using SpryConnect API curl -X POST https://api.spryconnect.com/api/v1/external/sms/quick \ -H "x-api-key: YOUR_API_TOKEN" \ -H "x-api-secret: YOUR_API_SECRET" \ -H "Content-Type: application/json" \ -d '{ "to": "233241234567", "from": "MyApp", "message": "Hello from cURL!" }'

PHP Example

// PHP with Guzzle HTTP Client // composer require guzzlehttp/guzzle use GuzzleHttp\Client; use GuzzleHttp\Psr7\Request; $client = new Client(); $headers = [ 'x-api-key' => 'YOUR_API_TOKEN', 'x-api-secret' => 'YOUR_API_SECRET', 'Content-Type' => 'application/json' ]; $body = '{ "to": "233241234567", "from": "MyApp", "message": "This is a test message from SpryConnect" }'; $request = new Request('POST', 'https://api.spryconnect.com/api/v1/external/sms/quick', $headers, $body); $res = $client->sendAsync($request)->wait(); echo $res->getBody();

Python Example

import requests import json class SpryConnectAPI: def __init__(self, api_key, api_secret): self.api_key = api_key self.api_secret = api_secret self.base_url = "https://api.spryconnect.com" def send_sms(self, to, message, from_sender="MyApp"): headers = { "x-api-key": self.api_key, "x-api-secret": self.api_secret, "Content-Type": "application/json" } data = { "to": to, "from": from_sender, "message": message } response = requests.post( f"{self.base_url}/api/v1/external/sms/quick", headers=headers, json=data ) return response.json() # Usage api = SpryConnectAPI("YOUR_API_TOKEN", "YOUR_API_SECRET") result = api.send_sms("233241234567", "Hello from Python!") print(json.dumps(result, indent=2))

JavaScript Example

class SpryConnectAPI { constructor(apiKey, apiSecret) { this.apiKey = apiKey; this.apiSecret = apiSecret; this.baseURL = 'https://api.spryconnect.com'; } async sendSMS(to, message, from = 'MyApp') { const response = await fetch(`${this.baseURL}/api/v1/external/sms/quick`, { method: 'POST', headers: { 'x-api-key': this.apiKey, 'x-api-secret': this.apiSecret, 'Content-Type': 'application/json' }, body: JSON.stringify({ to: to, from: from, message: message }) }); return await response.json(); } } // Usage const api = new SpryConnectAPI('YOUR_API_TOKEN', 'YOUR_API_SECRET'); api.sendSMS('233241234567', 'Hello from JavaScript!') .then(result => console.log(result)) .catch(error => console.error('Error:', error));

Official SDKs

Pre-built libraries to get you started quickly in your favorite programming language.

PHP SDK

Composer package with complete API wrapper

Coming Soon

JavaScript SDK

NPM package for Node.js and browsers

Coming Soon

Python SDK

PyPI package with async support

Coming Soon

Ruby SDK

RubyGems package for Rails integration

Coming Soon

Want to be notified when SDKs are available?

Join our developer newsletter →

API Specifications

Technical details and limits to help you build better integrations.

Rate Limits

  • SMS Sending: 1000 requests/hour
  • Data Retrieval: 5000 requests/hour
  • Burst Limit: 10 requests/second
  • Concurrent: 5 connections

Rate limit headers included in all responses

Response Format

  • Content-Type: application/json
  • Character Encoding: UTF-8
  • Date Format: ISO 8601
  • Error Format: RFC 7807

Consistent JSON structure across all endpoints

Security

  • Protocol: HTTPS only (TLS 1.2+)
  • Authentication: API Key & Secret
  • Request Signing: HMAC verification
  • Data Encryption: AES-256

Enterprise-grade security standards

Message Limits

  • SMS Length: 160 chars (GSM) / 70 chars (Unicode)
  • Long SMS: Auto-split into multiple parts
  • Bulk Recipients: Up to 10,000 per request
  • Sender ID: 3-11 alphanumeric characters

Automatic message segmentation included

Webhooks

  • Delivery Reports: Real-time status updates
  • Inbound Messages: Receive SMS replies
  • Retry Policy: Exponential backoff
  • Security: HMAC signature verification

Configure webhooks in your dashboard

Error Handling

  • 400: Bad Request (validation errors)
  • 401: Unauthorized (invalid credentials)
  • 429: Too Many Requests (rate limit)
  • 500: Internal Server Error

Detailed error messages with error codes

Support & Resources

Everything you need to successfully integrate and scale with our API.

API Documentation

Complete reference with examples and interactive testing

View Docs →

Postman Collection

Ready-to-import collection for API testing and exploration

Download →

Developer Support

Direct access to our developer support team

Contact Support →

Status Page

Real-time API status and incident notifications

Check Status →

Ready to start building?

Get your API credentials and start sending messages in minutes. Free credits included with every new account.

No setup fees • Pay-as-you-scale • 99.9% uptime SLA