Revision V1.4
SuperSIM is a dynamic management engine built on top of a proprietary integration with MTN. The system does the heavy lifting of billing, data usage monitoring, and allocation on your behalf. It is a complete fleet management solution.
SuperSIM makes available various functionality through APIs for third-party vendor integration. This document serves as the overview and documentation of each API.
Each call has a username and a token variable.
GET /api/balance.php?msisdn=msisdn&username=username&token=token HTTP/1.1
Host: simbalance.co.za
This API allows you to adjust the cap of any sim in your network. Ask Dave for more information.
POST /api/order.php HTTP/1.1
Host: supersim.co.za
Content-Type: application/json
JSON Body:
{ "username": "username", "token": "token", "msisdn": "msisdn", "sim_card_number": "sim_card_number", "order_number": "order_number", "reference_1": "Emma Johnson", "reference_2": "Hospital", "suspend_behaviour": 1, "package_id": 30000 }
POST /api/fetch_status.php HTTP/1.1
Host: supersim.co.za
JSON Body:
{ "username": "'username'", "token": "token", "msisdn": "0828165433" }
Returns:
{ "status": "Provisioned" } OR { "error": "Does not exist in API orders Queue." }
POST: https://supersim.co.za/api/upgrade_package.php
JSON Body:
{ "username": "username", "token": "token", "note": "note", "msisdn": "msisdn", "package_id": 50000 }
POST: https://supersim.co.za/api/external_topup.php
JSON Body:
{ "username": "username", "token": "token", "note": "note", "matrix_user": "matrix_user", "msisdn": "msisdn", "topup_bundle_id": "topup_bundle_id" }
POST: https://supersim.co.za/api/convert_to_prepaid.php
JSON Body:
{ "username": "username", "token": "token", "msisdn": "msisdn", "note": "note" }
Updates the reference1 and reference2 fields of an MSISDN entry in the database.
Please note that the API user must be authorized to update the MSISDN. The matrix_user associated with the API user must match the matrix_user associated with the owner of the MSISDN.
Endpoint: /api/update_msisdn_references.php
HTTP Method: POST
Request Body:
{ "username": "apiuser1", "token": "password123", "msisdn": "27xxxxxxxxx", "reference1": "REF123", "reference2": "REF456" }
The API response will be a JSON object with the following properties:
If the update is successful:
{ "success": "A success message indicating that the MSISDN was updated successfully." }
If there is an error:
{ "error": "An error message indicating the cause of the error." }
Examples:
Console:
curl -X POST -H "Content-Type: application/json" -d '{ "username": "apiuser1", "token": "password123", "msisdn": "27xxxxxxxxx", "reference1": "REF123", "reference2": "REF456" }' https://supersim.co.za/api/update_msisdn_references.php
Javascript:
const data = { "username": "apiuser1", "token": "password123", "msisdn": "27xxxxxxxxx", "reference1": "REF123", "reference2": "REF456" }; fetch('https://supersim.co.za/api/update_msisdn_references.php', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error(error));