Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
technical:api-voucher-add [2026/05/21 08:08] systemtechnical:api-voucher-add [2026/05/21 09:03] (current) system
Line 13: Line 13:
   * In this page we will show you how to add a Voucher to a  Cloud in RADIUSdesk using an API call.   * In this page we will show you how to add a Voucher to a  Cloud in RADIUSdesk using an API call.
   * We will use PHP but the principles can be applied using any programming language.   * We will use PHP but the principles can be applied using any programming language.
 +
 +===== Options available when creating vouchers ===== 
 +  * There are two classes of vouchers.
 +      * **Single Field** - Username and Password are of the **same** value and typically an easy to remember compound word.
 +      * **Username and Password** - Username and Password are different where the username is easy to remember but the password is a random generated string.
 +  * There is the option to create a single voucher or a batch of vouchers.
 +  * Batches will be grouped by a batch name.
 +  * Activate and Expire
 +      * By default a voucher never expires.
 +      * One can specify an expiry date where-after the voucher can not be used.
 +      * There is also the option to activate the voucher when a user logs in for the first time. 
 +      * These type of vouchers are time based and you can specify the how long after the first login the voucher expires.
 +  * Extra Fields
 +      * There are an optional **Extra field name** and **Extra field value** that can be used to store extra information.
 +
  
 ----------------- -----------------
  
-====== Add batch of vouchers using the API ======+====== Add single or batch using the API ======
  
   * When using the API to generate vouchers you have the option to create a single voucher or a batch of vouchers.   * When using the API to generate vouchers you have the option to create a single voucher or a batch of vouchers.
-  * This Wiki page will start with a simple as possible script and then progress with other more advanced API options. +<file php add_voucher.php>
-  * We also show the optional fields that can be included in the API call. +
-<file php add_single_voucher.php>+
 <?php <?php
    
     // Configuration     // Configuration
-    $api_url    = 'http://127.0.0.1/cake4/rd_cake/permanent-users/add.json'; +    $api_url    = 'http://127.0.0.1/cake4/rd_cake/vouchers/add.json'; 
-    $token      = 'b4c6ac81-8c7c-4802-b50a-0a6380555b50';+    $token      = 'fe707444-b00c-b00c-b00c-03ae7fc12345';
     $cloud_id   = 23; // replace with the Cloud ID that you want to work on.     $cloud_id   = 23; // replace with the Cloud ID that you want to work on.
-    $username   = 'testuser'; +    $realm      = 'pppoe'; 
-    $password   = 'testing123'; +    $profile    = 'slow'; 
-    $realm      = 'Dev'; +     
-    $profile    = 'MzanziFibre-12/1'; +
- +
     // Set API payload     // Set API payload
     $payload = [     $payload = [
-    +        
         //Required Fields              //Required Fields     
-        'username => $username, +        'single_field => 'true'//must be set to the string 'trueto be activated 
-        'password => $password, +        'realm'         => $realm, 
-        'realm'     => $realm, +        'profile'       => $profile, 
-        'profile'   => $profile, +        'cloud_id'      => $cloud_id, 
-        'cloud_id'  => $cloud_id, +        'token'         => $token, 
-        'token'     => $token, +         
-        'active'    => 'active', //active flag must be set for user to authenticate       +        //To create a batch these are needed (leave out for single voucher creation) 
-                  +        'quantity     => 10
-       /        +        'batch        => 'api_batch_one          
-       //Optional Fields   +
-        'name         => ''+
-        'surname'       => '',      +
-        'phone        => ''+
-        'email'         => '', +
-        'address'       => '', +
-        'from_date'     => '04/12/2025', +
-        'to_date'       => ''04/12/2026', +
-        'realm_id'     => 19, //Alternative to Realm's name +
-        'profile_id'    => 49, //Alternative to Profile's name +
-        'static_ip'     => '192.168.1.100' +
-        'extra_name'    => '', +
-        'extra_value'   => '', +
-        'site'          => '', +
-        'ppsk'          => '', +
-        'auto_add'      => 'auto_add' //flag to automatically add the MAC Address the user connects with as a Device (BYOD) belonging to him +
-        */+
     ];     ];
    
Line 74: Line 68:
     $response = curl_exec($ch);     $response = curl_exec($ch);
     curl_close($ch);     curl_close($ch);
-    echo "Added $username: $response\n";+    echo "Added single voucher: $response\n";
    
 ?> ?>
 </file> </file>
-  * Now that we have created a Permanent User, we will cover some common actions that can be done on the Permanent User via the API.+  * The reply will be in JSON which can be used should there be a requirement
  
  • technical/api-voucher-add.1779343706.txt.gz
  • Last modified: 2026/05/21 08:08
  • by system