USSD Print

  • 0

This guide covers the USSD management endpoints in the WaSMS API, allowing WHMCS users to clear, delete, retrieve, and send USSD requests for seamless USSD management on linked devices.


1. Clear Pending USSD Requests

Clear all pending USSD requests with the following endpoint:

  • Endpoint: GET https://sys.wasms.net/api/clear/ussd
  • Required Permission: clear_ussd_pending

Parameters:

  • secret: Your API secret, available in Tools -> API Keys.

Sample Request (PHP):

php
$apiSecret = "YOUR_API_SECRET";
$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, "https://sys.wasms.net/api/clear/ussd?secret={$apiSecret}");
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($cURL);
curl_close($cURL);
$result = json_decode($response, true);
print_r($result);

Success Response:

json
{ "status": 200, "message": "Pending USSD requests has been cleared!", "data": false }

2. Delete a Specific USSD Request

Delete a specific USSD request by its ID.

  • Endpoint: GET https://sys.wasms.net/api/delete/ussd
  • Required Permission: delete_ussd

Parameters:

  • secret: Your API secret.
  • id: The ID of the USSD request.

Sample Request (PHP):

php
$apiSecret = "YOUR_API_SECRET";
$ussdId = 1;
$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, "https://sys.wasms.net/api/delete/ussd?secret={$apiSecret}&id={$ussdId}");
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($cURL);
curl_close($cURL);
$result = json_decode($response, true);
print_r($result);

Success Response:

json
{ "status": 200, "message": "USSD request has been deleted!", "data": false }

3. Retrieve USSD Requests

Fetch a list of USSD requests using this endpoint.

  • Endpoint: GET https://sys.wasms.net/api/get/ussd
  • Required Permission: get_ussd

Parameters:

  • secret: Your API secret.
  • limit (Optional): Number of results per page, default is 10.
  • page (Optional): Page number, default is 1.

Sample Request (PHP):

php
$apiSecret = "YOUR_API_SECRET";
$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, "https://sys.wasms.net/api/get/ussd?secret={$apiSecret}");
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($cURL);
curl_close($cURL);
$result = json_decode($response, true);
print_r($result);

Success Response:

json
{ "status": 200, "message": "USSD Requests", "data": [ { "id": 5, "device": "00000000-0000-0000-d57d-f30cb6a89289", "sim": 1, "code": "*143#", "response": "Sorry! You are not allowed to use this service.", "status": "completed", "created": 1645043019 }, { "id": 6, "device": "00000000-0000-0000-d57d-f30cb6a89289", "sim": 1, "code": "*145#", "response": "Your balance is 14.60", "status": "completed", "created": 1645043024 } ] }

4. Send a USSD Request

Send a USSD request to a specified device using this endpoint.

  • Endpoint: POST https://sys.wasms.net/api/send/ussd
  • Required Permission: ussd

Parameters:

  • secret: Your API secret.
  • code: MMI request code (e.g., *121#).
  • sim: SIM slot number (1 or 2).
  • device: The unique ID of the linked device.

Sample Request (PHP):

php
$ussd = [
"secret" => "YOUR_API_SECRET",
"code" => "*121#",
"sim" => 1,
"device" => "00000000-0000-0000-d57d-f30cb6a89289"
];
$cURL = curl_init("https://sys.wasms.net/api/send/ussd");
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURL, CURLOPT_POSTFIELDS, $ussd);
$response = curl_exec($cURL);
curl_close($cURL);
$result = json_decode($response, true);
print_r($result);

Success Response:

json
{ "status": 200, "message": "WhatsApp message has been queued for sending!", "data": false }

Error Responses

For invalid parameters or unauthorized access, each endpoint returns an error response with specific status codes:

json
{ "status": 400, "message": "Invalid Parameters!", "data": false }

These endpoints allow you to manage USSD requests for your linked devices, enabling better control and automation in your WHMCS system.


Was this answer helpful?

« Back