Overview
This is the comprehensive API documentation for the Mifumo SMS API Version 2.0. It includes all endpoints with complete JSON request/response examples for SMS operations, white-label/partner management, and payment integration. Base URL:https://mifumosms.mifumolabs.com
API Version: 2.0
Authentication: API Key (recommended) or JWT Bearer Token
Quick Start
Get Your API Key
- Register at https://mifumosms.mifumolabs.com
- Login to your account
- Navigate to API Settings β Generate API Key
Base URL Structure
Base URL: https://mifumosms.mifumolabs.com API Paths:- External SMS API: /api/integration/v1/
- Authentication: /api/auth/
- Messaging: /api/messaging/
- Billing: /api/billing/
- White-Label API: /api/integration/v1/partner/
Example Request
API Structure
The API is organized into the following sections:- Core SMS API - Send SMS, check status, balance, and delivery reports
- White-Label / Partner API - Manage tenant accounts programmatically
- Payment Integration - ZenoPay Mobile Money Integration
- Authentication - API Key and JWT token authentication
- Error Handling - HTTP status codes and error formats
- Code Examples - JavaScript, Python, and PHP examples
Authentication
API Key (Recommended)
JWT Token (Web Applications)
- Login: POST /api/auth/login/
- Use access_token in Authorization header
Core SMS API
Send SMS
POST /api/integration/v1/sms/send/ Send SMS to one or more recipients. Request:Check Message Status
GET /api/integration/v1/sms/status// Response:Get SMS Balance
GET /api/integration/v1/sms/balance/ Response:White-Label / Partner API
Manage tenant accounts programmatically using your Customer API key. Tenants use your API key for all operations and do not have their own Mifumo SMS accounts.Create Tenant Account
POST /api/integration/v1/partner/tenants/create/ Request:Payment Integration
Payment Method: ZenoPay Mobile Money
All tenant payments use ZenoPay Mobile Money Integration. Payments go directly to Mifumo SMS. Tenants receive payment instructions on their phone and pay via mobile money. Credits are automatically added when payment completes. Supported Providers: vodacom, tigo, airtel, halotelInitiate Payment for Tenant
POST /api/integration/v1/partner/tenants//payments/initiate/ Request:Rate Limiting
API requests are rate-limited to prevent abuse:- Authenticated requests: 1000 requests per hour
- Unauthenticated requests: 100 requests per hour
Pagination
List endpoints support pagination with the following query parameters:page(integer): Page number (default: 1)page_size(integer): Items per page (default: 20, max: 100)
Date Formats
All dates are returned in ISO 8601 format:- Date only:
2025-11-27 - Date and time:
2025-11-27T10:30:00Z
Phone Number Format
Phone numbers should be in E.164 format:- β
Correct:
+255614853618 - β Incorrect:
0614853618,255614853618
Error Handling
HTTP Status Codes
| Code | Description |
|---|---|
| 200 | OK - Request successful |
| 201 | Created - Resource created |
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid authentication |
| 403 | Forbidden - Insufficient permissions |
| 404 | Not Found - Resource not found |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error |
Error Response Format
Code Examples
JavaScript (Fetch)
Python (Requests)
Support
For API support, contact:- Email: support@mifumolabs.com
- Base URL: https://mifumosms.mifumolabs.com
Last Updated: December 2025 API Version: 2.0