----- ====== API Introduction ====== * RADIUSdesk is designed in such a way that there is a hard separation between the GUI and the web application providing data to the GUI. * We use Ext JS for the GUI. * Ext JS Classic is used with laptop and desktop browsers. * Ext JS Modern is used with mobile devices. * All the actions that the GUI do are API calls to a CakePHP web application. * This means that it is easy to determine the URL and data required for an action. * This also means that the API calls can be done by any other system thus making third party integration a snap. * Each API call has to include a token which is associated with the user that logged in on the RADIUSdesk GUI. * Most of the API calls will also include a cloud_id to indicate on which cloud the action is to be applied. ====== Common Actions ====== * Many larger ISPs that makes use of RADIUSdesk prefer it above the commercial one size fits all solutions that already includes CRM and billing components. * RADIUSdesk allows for easy integration with existing CRM systems and middle-ware. * See the diagram below which illustrates the possibilities. {{:technical:api:api_overview.png }} * Common actions include: * Adding Profiles. * Adding Realms. * Adding Permanent Users. * Disabling and Enabling Permanent Users. * Changing Permanent User Profiles. * Terminating a Permanent User's session. * Deleting a Permanent User. * We will cover how to do these actions using the API in dedicated Wiki pages.