Skip to content

Administration API Guide

Last updated on Mar 06 2023.

Introduction

This guide documents the usage of the OVD Enterprise Administration API. The API can be used to script and/or automate any action available in the OVD Administration Console.

The OVD Administration API is available via two different protocols:

  • SOAP for OVD versions prior to 3.2.
  • REST / JSON

SOAP Endpoint

OVD version restrictions

The SOAP API is no longer available after OVD version 3.1.

The Administration API is available with the SOAP messaging protocol via HTTP(s) transport.

The service end-point is: https://{OVD_SESSIONMANAGER_HOST}/ovd/service/admin and the WSDL API definition document is available at https://{OVD_SESSIONMANAGER_HOST}/ovd/service/admin/wsdl.

REST / JSON Endpoint

The Administration API is also available through the use of RESTful web services.

The service end-point is: https://{OVD_SESSIONMANAGER_HOST}/ovd/service/admin/{function}.

Overview

This sections covers a few basic concepts that are required knowledge to properly use the OVD Administration API.

Authentication

The API authentication uses the same credentials as the OVD Administration Console.

The credentials must be provided using the HTTP basic access authentication scheme (Authorization: Basic <credentials>).

Once the initial request has been authenticated, the server will return a session cookie that can be used for further requests instead of sending the credentials for every request. This is optional as it is OK to send the credentials for each request.

When using Two-Factor Authentication, the API will return the auth_mfa_required code. You will then need to call the mfa_authenticate method to complete authentication.

The mfa_method endpoint provides information about which 2FA method is configured for the user. The mfa_attempt_email, mfa_attempt_u2f, and mfa_attempt_duo (OVD version 3.2+) endpoints can then be called to trigger the appropriate 2FA method.

Retrieving Object IDs

Object IDs will often be required as input parameters for API operations that act upon specific objects, so knowing how to access these IDs is essential to using the API.

Here are a few ways object IDs can be retrieved:

  • IDs from overall list of all objects: There are API operations to retrieve lists of most items and these lists will have the individual object IDs as keys and the objects, which have the object ID as an attribute, as values.

    You can process these lists to have whatever attribute you know as a key instead and use the new, processed list to retrieve object IDs.

  • Return value for new objects: When creating new objects, all creation methods will return the ID of the new object.

    For example, when calling the service_notice_create method with the appropriate parameters, the return information will be a randomized ID string, such as mu44nudp.

  • Inspect OAC URLs: IDs can be retrieved via the Admin Console by inspecting the URL when viewing an object.

    For instance, after creating a message object in the Administration Console and opening the info page of the new object, you can see the URL in your browser is of the format https://{OVD_SESSIONMANAGER_HOST}/ovd/admin/message.php?id=mh5ygrhx.

    From this example URL, the object ID is mh5ygrhx. This is the value that can be used in your scripts.

Configuring OVD Settings

The settings_get / settings_set operations are used to manipulate OVD settings.

Calling settings_get will provide a nested data structure which, for each parameter, provides all relevant information for the setting, including its type and current value.

Here is subset of the data structure as an example:

{
    "general": {
        [...]
        "remote_desktop_settings": {
            "desktop_icons": {
                "value": 1,
                "type": "select",
                "default_value": 1,
                "possible_values": [
                    0,
                    1
                ],
                "id": "desktop_icons"
            },
            "desktop_type": {
                "value": "any",
                "type": "select",
                "default_value": "any",
                "possible_values": [
                    "any",
                    "linux",
                    "windows"
                ],
                "id": "desktop_type"
            },
            "allowed_desktop_servers": {
                "value": [],
                "type": "list",
                "default_value": [],
                "id": "allowed_desktop_servers"
            }
        },
        [...]
    }
}

In order to change the settings values, you can call settings_set with the correct data structure. For the example snippet above, the remote_desktop_settings setting can be set using the following data input:

{
    "general": {
        "remote_desktop_settings": {
            "desktop_icons": 0,
            "desktop_type": "windows",
            "allowed_desktop_servers": [
                "192.168.0.5",
                "192.168.0.6",
                "192.168.0.7",
                "192.168.0.8"
            ]
        }
    }
}

Alternatively, the data can also be represented in string-format only, instead of using a nested structure:

{
    "general.remote_desktop_settings.desktop_icons": 0,
    "general.remote_desktop_settings.desktop_type": "windows",
    "general.remote_desktop_settings.allowed_desktop_servers": [
        "192.168.0.5",
        "192.168.0.6",
        "192.168.0.7",
        "192.168.0.8"
    ]
}

User and Group specific settings

The logic is the same for user and group level settings but the data structure differs slightly so there are specific API functions to deal with these cases.

For users, settings can be retrieved with the user_info operation and updated with user_settings_set.

Similarly, for groups, settings can be retrieved with the users_group_info operation and updated with users_group_settings_set.

Using the SOAP API with PHP

OVD version restrictions

The SOAP API is no longer available after OVD version 3.1.

This section describes how to call and use the SOAP API using PHP as the scripting language.

This example requires PHP (cli) and the SOAP PHP module to be installed. For instance, on a Ubuntu base system:

$
sudo apt install php-cli php-soap

Examples

Initialize the API object

  1. Define variables:

    $host = 'osm.test.demo';
    $user = 'admin';
    $password = 's3cr3t';

  2. Create the SOAP object:

    $service = new SoapClient(
        'https://'.$host.'/ovd/service/admin/wsdl',
        [
            'login' => $user,
            'password' => $password,
            'location' => 'https://'.$host.'/ovd/service/admin',
        ]
    );

  3. Create a helper print function to display the API output data:

    function j_out($data) {
        echo(json_encode($data, JSON_PRETTY_PRINT).PHP_EOL);
    }

  4. Call the first function: eula_get_acceptance

    j_out( $service->eula_get_acceptance() );

    The following return value is output:

    {
        "time": 1619734472,
        "ip": "10.6.0.22"
    }

Get a list of users based on a specific filter

This example uses the users_list_partial API function to return a list of all users with logins that contain the letter "c".

Call:

j_out( $service->users_list_partial('c*') );
Return value:

{
    "data": {
        "cholland": {
            "login": "cholland",
            "displayname": "Charlotte Holland"
        },
        "cthompson": {
            "login": "cthompson",
            "displayname": "Chris Thompson"
        }
    },
    "partial": false
}

Note

This user data is generated by the users_populate function for testing purposes.

Create and publish a login script

This example assumes that you are using the internal database.

  1. Create a script using script_add:

    j_out($service->script_add(
        'my 1st script', // Name
        'all', // OS
        'python', // Type
        'print("This script will be executed at session start!")' // Data
    ));

    This function call returns the ID of the script:

    1

  2. Create a user group using users_group_add:

    j_out($service->users_group_add(
        'users with scripts', // Name
        'This group has a login script published' // Description
    ));

    This function call returns the ID of the new group:

    2

  3. Publish the script to the group with the users_group_add_script function:

    j_out($service->users_group_add_script(
        1, // Script ID
        2 // User Group ID
    ));

    This function call returns either true or false to indicate if the add was successful:

    true
  4. Finally, add a user to this group by using the users_group_add_user function:

    j_out($service->users_group_add_user(
        'cholland', // User Login
        2 // User Group ID
    ));

    This function call returns either true or false to indicate if the add was successful:

    true

Universal script to call any API Operation

Instead of creating script files for each task, you may prefer to manipulate the API via command line. This is possible by using the ovd-admin-api PHP script.

Use the following command line instruction to use this script:

$
php ovd-admin-api.php admin:s3cr3t@OVD_SESSIONMANAGER_HOST application_info 2

Info

  • The first option passed to the script contains the credentials and the host to communicate with. This information is passed using the following format: user:password@host.

  • The second option is the name of the API function we want to call. In our example: application_info.

  • Any further options passed to the API function will be function parameters. The script expects the function parameters to be provided using JSON syntax.

    Extra parameters are not mandatory as not all API functions will have parameters

Here is a small list of examples using the script:

  • Get detailed information for the user dpaul:

    $
    php ovd-admin-api.php admin:s3cr3t@OVD_SESSIONMANAGER_HOST user_info dpaul

  • List all available applications:

    $
    php ovd-admin-api.php admin:s3cr3t@OVD_SESSIONMANAGER_HOST applications_list

  • Restrict the above list to Windows-only applications:

    $
    php ovd-admin-api.php admin:s3cr3t@OVD_SESSIONMANAGER_HOST applications_list windows

  • Extract the last 10 lines of each log file:

    $
    php ovd-admin-api.php admin:s3cr3t@OVD_SESSIONMANAGER_HOST log_preview

Using the REST / JSON API with Python

For the REST API, the sample script is written in Python and requires the requests module.

This module can be installed using PIP:

$
pip install requests requests_toolbelt

Examples

Initialize the API object

  1. Define variables:

    host = 'osm.test.demo'
    user = 'admin'
    password = 's3cr3t'

  2. Create the API object:

    import requests_toolbelt.sessions
    api = requests_toolbelt.sessions.BaseUrlSession(
        base_url = f"https://{host}/ovd/service/admin/",
    )
    api.auth = (user, password)
    api.verify = False

  3. Create a helper print function to display the API output data:

    import json
    def j_out(response):
        print(json.dumps(response.json(), indent=4))

  4. Call the first function: eula_get_acceptance

    j_out( api.post("eula_get_acceptance") )

    The following return value is output:

    {
        "time": 1619734472,
        "ip": "10.6.0.22"
    }

Get a list of users based on a specific filter

This example uses the users_list_partial API function to return a list of all users with logins that contain the letter "c".

Call:

j_out( api.post("users_list_partial", json={"args": ['c*', None, None]}) )
Return value:

{
    "data": {
        "cholland": {
            "login": "cholland",
            "displayname": "Charlotte Holland"
        },
        "cthompson": {
            "login": "cthompson",
            "displayname": "Chris Thompson"
        }
    },
    "partial": false
}

Note

This user data is generated by the users_populate function for testing purposes.

Create and publish a login script

This example assumes that you are using the internal database.

  1. Create a script using script_add:

    j_out(api.post("script_add", json={"args": [
        'my 1st script', # Name
        'all', # OS
        'python', # Type
        'print("This script will be executed at session start!")', # Data
    ]}))

    This function call returns the ID of the script:

    1

  2. Create a user group using users_group_add:

    j_out(api.post("users_group_add", json={"args": [
        'my with script', # Name
        'This group has a login script published', # Description
    ]}))

    This function call returns the ID of the new group:

    2

  3. Publish the script to the group with the users_group_add_script function:

    j_out(api.post("users_group_add_script", json={"args": [
        1, # Script ID
        2, # User Group ID
    ]}))

    This function call returns either true or false to indicate if the add was successful:

    true
  4. Finally, add a user to this group by using the users_group_add_user function:

    j_out(api.post("users_group_add_user", json={"args": [
        "cholland", # User Login
        2, # User Group ID
    ]}))

    This function call returns either true or false to indicate if the add was successful:

    true

Universal script to call any API Operation

Instead of creating script files for each task, you may prefer to manipulate the API via command line. This is possible by using the ovd-admin-api Python script.

Use the following command line instruction to use this script:

$
python ovd-admin-api.py admin:s3cr3t@OVD_SESSIONMANAGER_HOST application_info 2

The script expects JSON syntax for function parameters.

Here is a small list of examples using the script:

  • Get detailed information for the user dpaul:

    $
    python ovd-admin-api.py admin:s3cr3t@OVD_SESSIONMANAGER_HOST user_info dpaul

  • List all available applications:

    $
    python ovd-admin-api.py admin:s3cr3t@OVD_SESSIONMANAGER_HOST applications_list

  • Restrict the above list to Windows-only applications:

    $
    python ovd-admin-api.py admin:s3cr3t@OVD_SESSIONMANAGER_HOST applications_list windows

  • Extract the last 10 lines of each log file:

    $
    python ovd-admin-api.py admin:s3cr3t@OVD_SESSIONMANAGER_HOST log_preview

Resources

This section provides a list of the resources available in the OVD Administration API, along with a description of each resource in terms of input and output data.

admin_actions_list

Fetch a list of all admin actions using filter.

  • Parameters: (object): An object containing the attributes to filter on and their values. Possible attributes are:

    • organization (string): the organization id
    • offset (integer): the index at which to start returning results. Ex: 100 results, an offset of 10 means to return results starting at the 11th one. Set to 0 for no offset.
    • limit (integer): the maximum result size. If it is not set, the api will use the preference max_results_per_page as default value
    • order (string): the order used to display result ("asc" or "desc"). Default value is "desc".
    • from (integer): start of start time range.
    • to (integer): end of start time range.
    • what (string): the API function name. Wildcard are accepted.
    • who (string): the user who did the action
    • where (String): the IP used to do action- id (string): object id related to the action
  • Response (list): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the limit defined.
    • data (list) - Actions performed by administrators. Each action object contains the following attributes:
      • organization (string): the organization id
      • who (string)
      • what (string)
      • when (string)
      • where (string)
      • infos (list)

admin_add

Add an admin user.

  • Parameters:

    • login (string): Login.
    • displayname (string): Display Name.
    • password (string): Password.
    • rootadmin (boolean): Boolean value indicating whether this admin will be a root admin with all rights.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

admin_add_organization

Assign an admin to an organization.

  • Parameters:

    • login (string): The admin login.
    • organization (string): The organization id.
  • Response (boolean): A success or failure.

admin_info

Fetch a list of the specified admin's attributes.

  • Parameters:

    • login (string): The admin user's login. If null is used, the function returns the information for yourself.
  • Response (object): An admin object that contains the following attributes:

    • login (string)
    • displayname (string)
    • password (string)
    • rootadmin (boolean)
  • Required policy: only an administrator can execute this function

admin_modify

Modify an admin.

  • Parameters: Set any attribute you are not modifying to null.

    • login (string): Login
    • displayname (string): Display Name
    • password (string): Password
    • rootadmin (boolean): Boolean value indicating whether this admin will be a root admin with all rights.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

admin_remove

Remove an admin.

  • Parameters:

    • login (string): The admin login.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

admin_remove_organization

Remove a admin from an organization's admin list.

  • Parameters:

    • login (string): The admin login.
    • organization (string): The organization id.
  • Response (boolean): A success or failure.

administrator_password_set

Change the administrator password for the session manager.

  • Parameters:

    • password (string): The new password.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

admins_list

Fetch a list of all admins.

  • Parameters:

    • search_item (string): The value of the attribute specified in the search field parameter. Leave blank to retrieve all results.
    • search_fields (list): The user attribute to search through. Possible values are:
      • login
      • displayname
  • Response (list): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the maximum value set in for max_results_per_page in general settings.
    • data (list) - a key-value list where the keys are the admin logins and the values are admin objects that contain the following attributes:
      • login (string)
      • displayname (string)
  • Required policy: only an administrator can execute this function

application_add_mime_type

Add a MIME type to an application.

  • Parameters:

    • application (string): The application id.
    • mime_type (string): MIME Type.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_clone

Clone an application.

  • Parameters:

    • application (string): The application id.
  • Response (string or boolean): The id of the new application if successfully created. False otherwise.

  • Required policy: manageApplications

application_icon_get

Get the specified application's desktop icon.

  • Parameters:

    • application (string): The application id or the icon id (OVD version 3.2+)

      Note

      Using the application id is deprecated since OVD version 3.2.

  • Response (string): The icon file contents (base64 encoded).

  • Required policy: viewApplications

application_icon_getFromServer

  • Parameters:

    • application (string): The application id.
    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (string): The url of the icon if found. null otherwise.

  • Required policy: viewApplications

application_icon_set

Set the specified application's desktop icon.

  • Parameters:

    • application (string): The application id.
    • icon (string): Icon. This is the icon file's contents (base64 encoded).
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_icon_setFromServer

  • Parameters:

    • application (string): The application id.
    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_info

Fetch a list of the specified application's attributes.

  • Parameters:

    • application (string): The application id.
  • Response (object): An application object that contains the following attributes:

    • id (string)
    • name (string)
    • description (string)
    • type (string)
    • executable_path (string)
    • published (boolean)
    • icon (string) (OVD version 3.2+)
    • desktopfile (string)
    • static (integer)
    • license_threshold (integer)
    • servers (object): an object with server ids as the keys and server names as the values.
    • groups (object): an object with application group ids as the keys and group names as the values.
    • mimetypes (object): an object with mime type ids as the keys and mime type objects as the values.
    • licenses (boolean): a boolean value indicating whether the application has licenses or not.
  • Required policy: viewApplications

application_remove

Remove an application.

  • Parameters:

    • application (string): The application id.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_static_add

Add a static application.

  • Parameters:

    • name (string): Application Name.
    • description (string): Description.
    • type (string): Type.
    • command (string): Command. This is the executable path.
  • Response (string): The id of the new application if successfully created. null otherwise.

  • Required policy: manageApplications

application_static_modify

Modify a static application.

  • Parameters:

    • id (string): Application ID.
    • name (string): Name.
    • description (string): Description.
    • command (string): Command. This is the executable path.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

Important

Deprecated, please use application_static_update instead.

application_static_update

Update a static application.

  • Parameters:

    • app (object): A list containing the application imformation to update. Possible parameters are:
      • id: The application ID. (required)
      • name (string): The new application name.
      • description (string): The new application description.
      • command (string): The new executable path of the application.
      • directory (string): The new working directory of the application.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_static_remove

Remove a static application.

  • Parameters:

    • application (string): The application id.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_static_removeIcon

Remove a static application's desktop icon.

  • Parameters:

    • application (string): The application id.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

application_usage_for_usergroups_reports_list

Fetch a list of application usage data grouped by user group.

  • Parameters: Set parameters to null to retrieve all results.

    • filter (object): An object containing the attributes to filter on and their values. Possible attributes are:

      • start_date (string)
      • end_date (string)
      • user (string)
      • application (string)
      • license (string): This refers to license type.

      Example:

      {
        "start_date":"2015-02-27",
        "user":"cholland",
        "license":"Concurrent User License"
      }

    • limit (integer): Search limit is the number of results to return. All possible results will be returned by default.

  • Response (list): Report objects containing usage information for each application run by each user group. Each report contains the following attributes:

    • usergroup (string)
    • application (string)
    • date (string)
    • server (string): id of the server.
    • duration (integer)
  • Required policy: viewStatus

application_usage_reports_list

Fetch a list of application usage data.

  • Parameters:

    • filter (object): An object containing the attributes to filter on and their values. Possible attributes are:
      • start_date (string)
      • end_date (string)
      • user (string)
      • application (string)
      • license (string): This refers to license type.
        • Example: array('start_date'=>'2015-02-27', 'user'=>cholland, 'license'=>'Concurrent User License')
    • limit (integer): The number of results to return. All possible results will be returned by default.
  • Response (list): A list of report objects containing usage information for each instance of each application. Each report contains the following attributes:

    • usergroup (string)
    • user (string)
    • application (string)
    • date (string)
    • type (string): license type. Set to No Licenses by default.
    • start_stamp (integer)
    • stop_stamp (integer)
    • server (string)
    • duration (integer)
  • Required policy: viewStatus

applications_group_add

Add an application group.

  • Parameters:

    • name (string): Group Name.
    • description (string): Description.
  • Response (string): The id of the new group if successfully created. null otherwise.

  • Required policy: manageApplicationsGroups

applications_group_add_application

Add an application to an application group.

  • Parameters:

    • application (string): The application id.
    • group (string): The application group id.
  • Response (boolean): A success or failure.

  • Required policy: manageApplicationsGroups

applications_group_info

Fetch a list of the specified application group's attributes.

  • Parameters:

    • application_group (string): The application group id.
  • Response (object): An application group object containing the following attributes:

    • id (integer)
    • name (string)
    • description (string)
    • published (boolean)
  • Required policy: viewApplicationsGroups

applications_group_modify

Modify an application group.

  • Parameters:

    • id (string): Application Group ID.
    • name (string): Name.
    • description (string): Description.
    • published (boolean): Published. Set this to 1 if the application group should be enabled and 0 if not.
  • Response (boolean): A success or failure.

  • Required policy: manageApplicationsGroups

applications_group_remove

Remove an application group.

  • Parameters:

    • application_group (string): The application group id.
  • Response (boolean): A success or failure.

  • Required policy: manageApplicationsGroups

applications_group_remove_application

Remove an application from an application group.

  • Parameters:

    • application (string): Application ID.
    • group (string): Application Group ID.
  • Response (boolean): A success or failure.

  • Required policy: manageApplicationsGroups

applications_groups_list

Fetch a list of all application groups.

  • Parameters: N/A

  • Response (object): A list with the application group ids as keys and application group objects as values. The objects contain the following attributes:

    • id (integer)
    • name (string)
    • description (string)
    • published (boolean)
  • Required policy: viewApplicationsGroups

applications_list

Fetch a list of all applications.

  • Parameters:

    • type (string): Application type. Ex: linux. Set to null if not relevant.
  • Response (object): A list with the application ids as keys and application objects as values. The objects contain the following attributes:

    • id (integer)
    • name (string)
    • description (string)
    • type (string)
    • executable_path (string)
    • published (boolean)
    • desktopfile (string)
    • static (string)
    • license_threshold (integer)
  • Required policy: viewApplications

applications_remove_mime_type

Remove a MIME type from an application.

  • Parameters:

    • application (string): Application ID.
    • mime_type (string): MIME Type.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

applications_remove_orphans

Remove orphan applications (applications that are no longer on any application server).

  • Parameters: N/A

  • Response (boolean): A success or failure.

  • Required policy: manageApplications

available_users_for_group

Fetch a list of users that are not in the specified group.

  • Parameters:

    • search (string or null): Search item is the value of the attribute specified in the search field parameter.
    • search_fields (list or null): Search field is the user group attribute to search through. Possible values are:
      • name (string)
      • description (string)
    • group (string): Group ID.
  • Response (list): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the maximum value set in for max_results_per_page in general settings.
    • data (list) - a key-value list where the keys are user logins and the values are user objects that contain the following attributes:
      • login (integer)
      • displayname (string)
  • Required policy: viewUsers

certificate_add

Add a subscription key.

  • Parameters:

    • file (string): The file contents (base64 encoded).
  • Response (integer): Returns 0 if the key was added successfully, 1 if there was an error, and 2 if it already exists.

  • Required policy: manageConfiguration

certificate_del

Remove a subscription key.

  • Parameters:

    • certificate (string): The subscription key's id.
  • Response (boolean): A success or failure.

  • Required policy: manageConfiguration

certificate_reset_named_users

Remove all named users.

  • Parameters: N/A

  • Response (boolean): A success or failure.

  • Required policy: manageConfiguration

certificates_limits

Fetch a list of usage limits and information for certificates.

  • Parameters: N/A

  • Response (object): A certificate object containing the following attributes:

    • global_validity (boolean): indicates if there is at least one valid certificate.
    • global_from (integer): Time stamp indicating when the current period of enterprise access began.
    • global_to (integer): Time stamp indicating when the next valid key will expire (i.e. when the next change in licensing will occur).
    • concurrent_users_max (integer)
    • named_users_max (integer)
    • concurrent_users_current (integer)
    • named_users_current (integer)
  • Required policy: viewConfiguration

certificates_list

Fetch a list of all certificates.

  • Parameters: N/A

  • Response (list): A list of certificate objects that contain the following attributes:

    • id (integer)
    • concurrent_users (integer)
    • named_users (integer)
    • organization (string)
    • owner (string)
    • email (string)
    • start (integer)
    • expiry (integer)
  • Required policy: viewConfiguration

checkup

Get a general set of status information about your OVD farm.

  • Parameters: N/A

  • Response (object): A status check object that contains the following attributes:

    • php (object): an object containing the following attributes:
      • cURL
      • Imagick
      • LDAP
      • Multibyte String
      • MySQL
      • XML
    • liaisons
  • Required policy: only an administrator can execute this function

cleanup_liaisons

Check and clean orphan objects in database.

  • Parameters: N/A

  • Response (boolean): A success or failure.

  • Required policy: manageConfiguration

cleanup_preferences

Check for the default user group, if exist revert the setting.

  • Parameters: N/A

  • Response (boolean): A success or failure.

  • Required policy: manageConfiguration

eula_get_acceptance

Give information about the accepted Terms and Conditions.

  • Parameters: N/A

  • Response (object): An object with the ip and time of acceptance. Returns null if not accepted yet.

  • Required policy: viewConfiguration

eula_set_acceptance

Save the acceptation of the Terms and Conditions.

  • Parameters: N/A

  • Response (boolean): A success or failure.

  • Required policy: manageConfiguration

external_storage_add

Add an external storage mapping.

  • Parameters:

    • uri (string): Uri.
    • type (string): Type. Supported values are:
      • cifs
      • nfs
      • webdav
      • webdavs
    • name (string): Name.
    • authentication (integer): Authentication. Supported values are:
      • 0 for OVD User Credentials
      • 1 for Guest User (no authentication)
      • 2 for Custom Authentication (must provide Login and Password for this option)
    • login (string): Login (for Custom Authentication).
    • password (string): Password (for Custom Authentication).
    • parameters (string): Parameters.
  • Response (string): The external storage mapping's id if added successfully. null otherwise.

  • Required policy: manageSharedFolders

external_storage_add_group

Add access to an external storage to a user group.

  • Parameters:

    • group_id (string): User Group ID.
    • share_id (string): External Storage Mapping ID.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

external_storage_info

Fetch a list of the specified external storage mapping's attributes.

  • Parameters:

    • external_storage (string): The external storage mapping id.
  • Response (object): An external storage object containing the following attributes:

    • id (integer)
    • uri (string)
    • type (string)
    • name (string)
    • authentication (integer). Supported values are:
      • 0 for OVD User Credentials
      • 1 for Guest User (no authentication)
      • 2 for Custom Authentication
    • login (string) (for Custom Authentication)
    • password (string) (for Custom Authentication)
    • parameters (string)
    • groups (object): a list with modes as keys and objects as values. The objects have the group ids as keys and their names as values.

external_storage_modify

Modify an external storage mapping.

  • Parameters:

    • id (string): External Storage Mapping ID. This can be retrieved from the admin console (go to a mapping's page and the id will be in the url) or using the external_storages_list operation to get a list of external storage mappings. Looking at the keys of the list for ids.
    • uri (string): Uri.
    • type (string): Type. Supported values are:
      • cifs
      • nfs
      • webdav
      • webdavs
    • name (string): Name.
    • authentication (integer): Supported values are:
      • 0 for OVD User Credentials
      • 1 for Guest User (no authentication)
      • 2 for Custom Authentication
    • login (string): Login (for Custom Authentication).
    • password (string): Password (for Custom Authentication).
    • parameters (string): Parameters.
  • Response The external storage's id if added successfully. null otherwise.

  • Required policy: manageSharedFolders

external_storage_publications_list

Fetch a list of all publications or all publications for a specified external storage.

  • Parameters:

    • id (string): (optional) The external storage mapping id.
    • group_by (string): (optional) Attribute to group by. Valid options are:
      • id (external storage id)
      • group (user group id)
  • Response (list): A list with objects containing information about each external storage publication. If retrieving all publications, the keys will be external storage mapping ids and the values will be a list of publications for each storage. The array object for each publication contains the following attributes:

    • id (integer): external storage mapping id
    • group (integer): user group id
    • mode
  • Required policy: viewSharedFolders

external_storage_remove

Remove an external storage mapping.

  • Parameters:

    • external_storage (string): The external storage mapping id.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

external_storage_remove_group

Remove access to an external storage from a user group.

  • Parameters:

    • group_id (string): User Group ID.
    • share_id (string): External Storage Mapping ID.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

external_storages_list

Fetch a list of all external storage mappings.

  • Parameters: N/A

  • Response (object): A list with the external storage mapping ids as keys and objects containing information about each storage as values. The object for each storage contains the following attributes:

    • id (integer)
    • uri (string)
    • type (string)
    • name (string)
    • authentication (integer). Supported values are:
      • 0 for OVD User Credentials
      • 1 for Guest User (no authentication)
      • 2 for Custom Authentication
    • login (string) (for Custom Authentication)
    • password (string) (for Custom Authentication)
    • parameters (string)
    • groups (object): a list with modes as keys and objects as values. The objects have the group ids as keys and their names as values.
  • Required policy: viewSharedFolders

fileserver_cluster_add

Create a new File Server Cluster.

  • Parameters:

    • name (string): Cluster Name.
    • desc (string): Description.
    • vip (string): Virtual IP.
  • Response (string): The id of the new cluster if successfully created. null otherwise.

  • Required policy: manageServers

fileserver_cluster_add_server

Add a server to an File Server Cluster.

  • Parameters:

    • cluster_id (string): Cluster ID.
    • server (string): Server id or fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

fileserver_cluster_info

Fetch a list of the specified cluster's attributes.

  • Parameters:

    • cluster_id (string): The cluster id.
  • Response (list): A list containing the following attributes:

    • id (integer)
    • name (string)
    • desc (string)
    • locked (integer)
    • vip (string)
    • status
    • servers (object ): an object with server ids as the keys and server names as the values.
    • storage units (object): an object with storage unit ids as the keys and names as the values.
  • Required policy: viewServers

fileserver_cluster_list

Fetch a list of all File Server Clusters.

  • Parameters: N/A

  • Response (object): A list with the cluster ids as keys and objects containing information about each cluster as values. The array object for each cluster contains the following attributes:

    • id (integer)
    • name (string)
    • desc (string)
    • locked (integer)
    • vip (string)
    • status
    • servers (object)
  • Required policy: viewServers

fileserver_cluster_modify

Modify a File Server Cluster.

  • Parameters: Set any attribute you are not modifying to null.

    • id (string): Cluster ID.
    • name (string): Name.
    • desc (string): Description.
    • locked (boolean): Indicate whether the cluster is enabled or disabled.
    • vip (string): Virtual IP.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

fileserver_cluster_remove

Remove a File Server Cluster.

  • Parameters:

    • cluster_id (string): The cluster id.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

fileserver_cluster_remove_server

Remove a server to an File Server Cluster.

  • Parameters:

    • cluster_id (string): Cluster ID.
    • server (string): Server id or fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

fileserver_cluster_share

Share a cluster to a tenant.

  • Parameters:

    • cluster_id (string): The internal cluster id.
    • organization_id (string): The id of the organization that will access the server.
    • value (boolean): The authorization value. Set to true to add authorization and false to remove rights.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

getInitialConfiguration

Fetch a list of initial settings configurations.

Note

This function has changed between versions so please refer to the appropriate version below.

  • Parameters: N/A

  • Response (object): A configuration object containing initial settings configurations. The object contains the following attributes:

    • version (string)
    • max_items_per_page (integer)
    • admin_language (string)
    • system_inited (boolean)
    • system_in_maintenance (boolean)
    • policy
    • premium (boolean)
    • The following keys will also be present if the module it represents is enabled:
      • UserDB (object): an object with two attributes, name and writable.
      • UserGroupDB (object): an object with two attributes, name and writable.
      • UserGroupDBDynamic (boolean): a boolean value indicating whether it is enabled.
      • UserGroupDBDynamicCached (boolean): a boolean value indicating whether it is enabled.

get_smid

Get the session manager ID.

  • Parameters: N/A

  • Response (string): The session manager's id. Returns null if there was an issue retrieving it.

  • Required policy: viewConfiguration

has_valid_certificate

Check if you have a valid certificate for OVD Enterprise Edition.

  • Parameters: N/A

  • Response (string or boolean): The expiry date for the certificate if a valid one exists. False otherwise.

image_add

Add an image.

Note

For desktop background images, both PNG and JPEG are supported. For branding purpose images, only PNG images are currently supported.

  • Parameters:

    • data (object): An object containing the image data. The array must include content containing the base64 encoded binary image data. It can also include mimetype to force the mimetype of the image (otherwise it is guessed from the binary data).
  • Response (string or boolean): The id of the new key file if successfully created. False otherwise.

  • Required policy: manageImages

images_list

Fetch a list of accessible image hashes.

  • Parameters: N/A

  • Response (list): A list of hash as string.

keyfile_add

Add a keyfile for a license.

  • Parameters:

    • license_id (string): The license id.
    • file_name (string): The file name, with extension.
    • file_data (string): The file contents (base64 encoded).
  • Response (string or boolean): The id of the new key file if successfully created. False otherwise.

  • Required policy: manageApplications

keyfile_info

Fetch a list of the specified license's keyfile information.

  • Parameters:

    • license_id (string): The license id.
  • Response (list): A keyfile object containing information about the keyfile for the specified license. The object contains the following attributes:

    • id (integer): id of the keyfile
    • license_id (integer)
    • file_name (string)
    • file_data (string)
  • Required policy: viewApplications

keyfile_remove

Remove a keyfile for a license.

  • Parameters:

    • license_id (string): The license id.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

license_add

Add a license.

  • Parameters:

    • application_id (string): Application ID. This can be retrieved from the admin console (go to an application's page and the id will be in the url) or using the applications_list operation to get a list of applications as application_id=>application info and then processing the list to have application names as the key by retrieving them from the application info.
    • key (string): License Key (set this to null if you will be adding a key file for this license instead).
    • start_date (string): Start Date (in the format YYYY-mm-dd).
    • end_date (string): Expiry Date (in the format YYYY-mm-dd).
    • num_licenses (integer): Number of Licenses.
    • type (string): License Type name.
    • cost (string): (optional) Cost.
    • vendor (string): (optional) Vendor.
  • Response (string or boolean): The id of the new license if successfully created. False otherwise.

  • Required policy: manageApplications

license_info

Fetch a list of the specified license's attributes.

  • Parameters:

    • license_id (string): The license id. This can be retrieved from the admin console (go to an license's page and the id will be in the url) or using the licenses_list operation to get a list of licenses per application, isolate the list of licenses for the application the license is for, and then looking at the keys of the list.
  • Response (object): A license object containing the following attributes:

    • id (integer)
    • key (integer)
    • start_date (string)
    • end_date (string)
    • num_licenses (integer)
    • type (string)
    • cost (string)
    • vendor (string)
    • has_key_file (boolean)
    • licenses_allocated (integer)
    • application_id (integer)
  • Required policy: viewApplications

license_modify

Modify a license.

  • Parameters: Set any attribute you are not modifying to null.

    • id (string): License ID. This can be retrieved from the admin console (go to an license's page and the id will be in the url) or using the licenses_list operation to get a list of licenses per application, isolate the list of licenses for the application the license is for, and then looking at the keys of the list.
    • start_date (string): Start Date (in the format YYYY-mm-dd).
    • end_date (string): Expiry Date (in the format YYYY-mm-dd).
    • num_licenses (integer): Number of Licenses.
    • type (string): License Type name.
    • vendor (string): Vendor.
    • cost (string): Cost.
    • key (string): Key.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

license_remove

Remove a license.

  • Parameters:

    • license_id (string): The license id. This can be retrieved from the admin console (go to an license's page and the id will be in the url) or using the licenses_list operation to get a list of licenses per application, isolate the list of licenses for the application the license is for, and then looking at the keys of the list.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

license_type_add

Add a license type.

  • Parameters:

    • license_type (string): The name of the new license type.
  • Response (string or boolean): The id of the new license type if successfully created. False otherwise.

  • Required policy: manageApplications

license_type_modify

Modify a license type.

  • Parameters:

    • license_type_old (string): The old name of the license type.
    • license_type_new (string): The new name of the license type.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

license_type_remove

Remove a license type.

  • Parameters:

    • license_type (string): The license type name.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

license_types_list

Fetch a list of license types.

  • Parameters: N/A

  • Response (list): A list of license type objects containing the following attributes:

    • id (integer): license type id.
    • name (string)
    • is_custom (boolean): set to true if you've added this type and false if it is a default type.
  • Required policy: viewApplications

license_types_reporting_list

Fetch a list of all license types present in reporting data.

  • Parameters: N/A

  • Response (list): A list of all license types present in reporting data. The license type objects contain the following attributes:

    • id (integer): license type id.
    • name (string)
  • Required policy: viewApplications

licenses_list_partial

Fetch a list of all licenses grouped by application.

  • Parameters:

    • search_item (string or null): The value of the attribute specified in the search field parameter.
    • search_fields (list or null): The user attribute to search through. Possible values are:
      • application_name
      • type
      • end_date. When searching by end_date, licenses expiring in less than or equal to the number of days you enter for end_date will be returned.
    • limit (integer): Search limit is the number of results to return. If value is 0, all results are returned.
  • Response (any): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the maximum value set in for max_results_per_page in general settings.
    • data (list) - a key-value list where the keys are application ids and the values are license objects associated with that application. These license objects contain the following attributes:
      • id (integer)
      • key (string)
      • start_date (string)
      • end_date (string)
      • num_licenses (integer)
      • type (string)
      • cost (string)
      • vendor (string)
      • has_key_file (boolean)
      • licenses_allocated (integer)
  • Required policy: viewApplications

licenses_reports_list

Fetch license allocation information.

  • Parameters:

    • filter (dict_string_string): The filter is a list containing the attributes to filter on and their values. Leave blank to retrieve all results. Possible attributes are:
      • start_date. This refers to the date the license was allocated and results with start dates greater than or equal to the specified date will be returned.
      • end_date. This refers to the date the license will expire, and results with end dates less than or equal to the specified date will be returned. Example: array('start_date'=>'2015-02-27', user=>cholland)
      • user
      • application
    • limit (integer): Search limit is the number of results to return. All results are returned by default.
  • Response (object): A list of license report objects containing information for each license allocated. The objects contain the following attributes:

    • user (string)
    • application_id (integer)
    • allocation_date (string)
    • expiry_date (string)
    • server_id (string)
  • Required policy: viewApplications

log_download

Fetch a log file.

Important

Deprecated in versions 3.2 and greater. Please use log_stream instead.

  • Parameters:

    • logfile (string): The log file's name.
  • Response (string): The log file's contents.

  • Required policy: viewStatus

log_stream

Fetch a log file.

  • Parameters:

    • logfile (string): The log file's name.
    • limit (integer, Optional): The amount of data wanted in bytes. The Value 0 means no limit.
  • Response (file): The log file data.

  • Required policy: viewStatus

log_preview

Fetch a preview of all log files.

  • Parameters: N/A

  • Response (object): An object with the log file names as keys and their latest twenty lines as values. Also includes the key servers which is a list of all the log files for each server and their latest twenty lines.

  • Required policy: viewStatus

message_create

Create a message.

  • Parameters: (object): A message object with the following attributes:

    • name (string)
    • description (string, Optional)
    • test_mode (boolean, Optional): A dry-run option. If set to true, users will not see the message which will be acknowledged automatically. Default value is false.
    • title (string, Optional)
    • content (string, Optional)
    • responses (array, Optional): Possible responses of the user.
  • Response (string): The id of the new message if successfully created. null otherwise.

  • Required policy: manageMessage

message_delete

Delete a message.

  • Parameters:

    • id (string): The id of the message to be deleted.
  • Response (boolean): A success or failure.

  • Required policy: manageMessage

message_force_push

Push a message immediately to active sessions.

  • Parameters:

    • id (string): The id of the message to be force-pushed.
  • Response (boolean): A success or failure.

  • Required policy: manageMessage

message_info

Fetch a list of the specified message's attributes.

  • Parameters:

    • id (string): The id of the message.
  • Response (list): A list of message objects with the following attributes:

    • title (string)
    • content (string)
    • responses (string)
    • blocking_mode (string)
    • progress (string)
  • Required policy: viewMessage

message_publications_update

Add users and groups for message publication.

  • Parameters:

    • id (string): The id of the message
    • operations (object): A partial operations object with following atributes:
      • user.add (object): Object containing list of users id.
      • user.del (object): Object containing list of users id.
      • group.add (object): Object containing list of groups id.
      • group.del (object): Object containing list of groups id.
      • Example: {"user.add":["user_1","user_2"]}.
  • Required policy: manageMessage, viewUsers, managePublications

  • Response (object): Returns the object indicating which operations were valid.

message_reports_list

Fetch a list of all response statistics based on filter.

  • Parameters: (object): An object containing the attributes to filter:

    • user (string): User login.
    • name (string): Message name.
    • status (string): Status of a message.
    • date_ack.after (string): Lower limit of date interval when message was acknowledged.
    • date_ack.before (string): Upper limit of date interval when message was acknowledged.
    • start (int): Offset.
  • Response (object): List of messages.

  • Required policy: viewMessage

message_response_create

Add a new response option to a message.

  • Parameters:

    • id (string): Id of a message.
    • text (string): Text of response (choice) to add.
  • Response (boolean): A success or failure.

  • Required policy: manageMessage

message_response_delete

Delete a response option to a message.

  • Parameters:

    • id (string): The id of the message.
    • text (string): The response to remove.
  • Response (boolean): A success or failure.

  • Required policy: manageMessage

message_update

Update message's attributes.

  • Parameters: (object): A partial message object with the following attributes:

    • id (string)
    • name (string, Optional)
    • description (string, Optional)
    • status (string, Optional)
    • test_mode (boolean, Optional)
    • date_scheduled (string, Optional)
    • title (string, Optional)
    • content (string, Optional)
    • blocking_mode (string, Optional)
  • Response (boolean): A success or failure.

  • Required policy: manageMessage

messages_list

Fetch a filtered list of messages.

  • Parameters: (object): An object containing the attributes to filter on and their values. Possible attributes are:

    • name (string)
    • status (string)
    • test_mode (bool)
    • title (string)
    • date_published_after (string)
    • date_processed_after (string)
    • date_published_before (string)
  • Response (object): List of messages.

  • Required policy: viewMessage

mime_type_info

Fetch a list of applications with the specified MIME type.

  • Parameters:

    • mime_type (string): The MIME type.
  • Response (object): An object with two attributes:

    • id (string): the MIME type.
    • applications (object): an object in which the application ids are keys and the values are application objects containing the following attributes:
      • id (integer)
      • name (string)
      • description (string)
      • type (string)
      • executable_path (string)
      • published (boolean)
      • desktopfile (string)
      • static (boolean)
      • license_threshold (integer)
  • Required policy: viewApplications

mime_types_list

Fetch a list of application MIME types.

  • Parameters: N/A

  • Response (list): A list of MIME types.

  • Required policy: viewApplications

mfa_attempt_email

Trigger a 2FA request using the email method. A random code will be sent to the given email address.

This endpoint requires a pre-authenticated state, where the regular authentication credentials were already sent but the API returned the auth_mfa_required code.

  • Parameters:

    • email (string): the email address to send the code to
  • Response (boolean): A success or failure.

mfa_attempt_u2f

Trigger a 2FA request using the u2f method.

This endpoint requires a pre-authenticated state, where the regular authentication credentials were already sent but the API returned the auth_mfa_required code.

  • Parameters: N/A

  • Response (object): A standard WebAuthN challenge.

mfa_attempt_duo

Trigger a 2FA request using the duo method.

OVD version restrictions

This endpoint is only available for OVD version 3.2+

This endpoint requires a pre-authenticated state, where the regular authentication credentials were already sent but the API returned the auth_mfa_required code.

  • Parameters:

    • device (string): the duo device ID given by mfa_method
  • Response (object):

    • action (string) - one of password, allow or denied
    • msg (string) - a description message of what to do next
    • token (string) - the token to send back to validate MFA if action is allow

mfa_authenticate

Verify Multi-Factor authentication code.

This endpoint requires a pre-authenticated state where the regular authentication credentials were already sent but the API returned the auth_mfa_required code.

  • Parameters:

    • code (string): The totp code.
  • Response (boolean): A success or failure.

mfa_method

Provide the MFA methods available for the connected user.

  • Parameters:

    • code (string): The totp code.
  • Response (boolean): A success or failure.

  • Required policy: pre-authenticated state that has received the mfa_required code

organization_add

Add an organization.

  • Parameters:

    • organization_info (object): An object containing the organization attributes. The array must include name and domains, and can also have description if needed. domains is an array which contains a list of domains.
  • Response (boolean): A success or failure.

organization_info

Fetch a list of the specified organization's attributes.

  • Parameters:

    • organization_id (string): The organization id.
  • Response (object): An object containing the following attributes:

    • id (string)
    • name (string)
    • description (string)
    • domain (string)

organization_modify

Modify an organization.

  • Parameters:

    • organization_info (object): An array containing the organization attributes. The array must include id, which refers to the organization id. Additional keys name, domains, and description are optional. domains is an array which contains a list of domains.
  • Response (boolean): A success or failure.

organization_remove

Remove an organization.

  • Parameters:

    • organization_id (string): The organization id.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

organization_select

Select a particular organization for subsequent call to the API.

  • Parameters:

    • organization (string): The organization id. If null, this will return to the global context without any selected organization.
    • persist (boolean): A persistence boolean. If false, only the next API call will be affected by the organization selection.
  • Response (boolean): A success or failure.

organization_set_default

Set an organization as the system's default organization.

  • Parameters:

    • organization_id (string): The organization id. A null value means no default organization is defined.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

organizations_list

Fetch a list of all organizations.

  • Parameters: N/A

  • Response (object): A list with the organizations ids as keys and organization objects containing information about each organization as values. The organization objects contain the following attributes:

    • id (string)
    • name (string)
    • description (string)
    • domain (string)

publication_add

Add a publication (give a user group access to an application group).

  • Parameters:

    • users_group (string): User Group ID.
    • applications_group (string): Application Group ID.
  • Response (boolean): A success or failure.

  • Required policy: managePublications

publication_remove

Remove a publication (remove a user group's access to an application group).

  • Parameters:

    • users_group (string): User Group ID.
    • applications_group (string): Application Group ID.
  • Response (boolean): A success or failure.

  • Required policy: managePublications

script_add

Add a script.

  • Parameters:

    • name (string): Name.
    • os (string): OS. Valid values are windows, linux, and all.
    • type (string): Type. Valid values are:
      • when OS is linux: bash and python
      • when OS is windows: batch, powershell, python, and vbs
      • when OS is all: python
    • data (string): Data.
  • Response (integer): The id of the new script if successfully created. null otherwise.

  • Required policy: manageScripts

script_info

Fetch a list of the specified scripts's attributes.

  • Parameters:

    • script_id (string): The script id.
  • Response (object): A script object containing the following attributes:

    • id (string)
    • name (string)
    • os (string)
    • type (string)
    • data (string)
    • groups (object): A list for which the group ids are the keys and the group names are the values.
  • Required policy: viewScripts

script_modify

Modify a script.

  • Parameters:

    • id (string): Script ID.
    • name (string): Name.
    • os (string): OS. Valid values are windows, linux, and all.
    • type (string): Type. Valid values are:
      • when OS is linux: bash and python
      • when OS is windows: batch, powershell, python, and vbs
      • when OS is all: python
    • data (string): Data.
  • Response (boolean): A success or failure.

  • Required policy: manageScripts

script_remove

Remove a script.

  • Parameters:

    • script_id (string): The script id.
  • Response (boolean): A success or failure.

  • Required policy: manageScripts

scripts_groups_list

Fetch a list of all scripts for a user group.

  • Parameters:

    • user_group_id (string): The user group id.
  • Response (object): A list with the script ids as keys and script objects as values. The script objects contain the following attributes:

    • id (string)
    • name (string)
    • type (string)
    • os (string)
    • data (string)
  • Required policy: viewScripts

scripts_list

Fetch a list of all scripts.

  • Parameters: N/A

  • Response (object): A list with the script ids as keys and script objects containing information about each script as values. The script objects contain the following attributes:

    • id (string)
    • name (string)
    • type (string)
    • os (string)
    • data (string)
  • Required policy: viewScripts

send_test_alert

Send a test email alert to all email addresses listed in the "Notifications" settings.

  • Parameters: N/A

  • Response (boolean): A success or failure.

server_add_static_application

Add a static application to a server.

  • Parameters:

    • application (string): The application id.
    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_info

Fetch a list containing the information for a specified server.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
    • full (boolean): A boolean value indicating whether the server information contains all information (true) or only basic information (false).
  • Response (object): A list of information about the specified server. The list contains the following information:

    • server id
    • server fqdn
    • server status
    • whether server is registered or not
    • whether server is locked/in maintenance mode or not
    • a list containing storage unit ids for the server
  • Required policy: viewServers

server_register

Register an unregistered server.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_remove

Remove a server.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_remove_static_application

Remove a static application from a server.

  • Parameters:

    • application (string): The application id.
    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_role_disable

Disable a specified role for a server.

Note

This function has changed between versions so please refer to the appropriate version below.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
    • role (string): The server role. Supported values are:
      • aps
      • fs
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_role_enable

Enable a specified role for a server.

Note

This function has changed between versions so please refer to the appropriate version below.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
    • role (string): The server role. Supported values are:
      • aps
      • fs
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_recover

Restore a broken server if it is accessible.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_share

Grant access to a server to a specific organization.

  • Parameters:

    • server_id (string): The internal server id.
    • organization_id (string): The id of the organization that will access the server.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

server_switch_maintenance

Switch server into or out of maintenance mode.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
    • maintenance (boolean): A boolean value indicating whether the server is going into (true) or out of (false) maintenance mode.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

server_unshare

Remove access to a server from a specific organization.

  • Parameters:

    • server_id (string): The internal server id.
    • organization_id (string): The id of the organization that will no longer have access to the server.
  • Response (boolean): A success or failure.

  • Required policy: only an administrator can execute this function

server_settings_set

Change a server configuration preference.

  • Parameters:

    • server_id (string): The internal server id.
    • settings (object): A list containing the settings you are modifying. The setting names should be the keys and the value for each key should be the new value for the setting.
  • Response (boolean): A success or failure.

Possible preference keys are:

  • display_name: (string or null) Set the server's display name. An empty value (i.e. null) will unset any previously set display name for the server.

  • rdp_port: (integer or null) Set a server's rdp port. An empty value (i.e. null or 0) restores the default value.

  • max_sessions: (integer or null) Set the maximum number of sessions that the server can host. An empty value (i.e. null or 0) restores the default value.

  • fqdn: (string) Set the FQDN assigned to the server.

    To be used with caution

    This field has been automatically detected when the server was registered. Changing the value on a server will most likely make it unavailable for OVD.

    This function can be useful when you need to change the IP of an already registered server or when transitioning from IPs to DNS-based names.

  • enforce_memory_limitation: (boolean) Define whether memory limitations are enforced on the server or not.

  • system_memory: (integer) Defines the amount of memory to be used by the server's Operating System only (i.e. memory that can not be used to host the sessions). This setting only applies when memory enforcement is activated.

    An empty value (i.e. null or 0) restores the default value.

  • Required policy: manageServers

servers_group_add

Add a server group.

  • Parameters:

    • name (string): The group's name.
    • description (string): The group's description.
  • Response (string): The id of the new server group if successfully created. null otherwise.

  • Required policy: manageServers

servers_group_add_server

Add a server to a server group.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
    • group (string): The server group id.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

servers_group_info

Fetch a list of the specified server group's attributes.

  • Parameters:

    • server_group_id (string): The server group id.
  • Response (any): A server group object containing the following attributes:

    • id (string)
    • name (string)
    • description (string)
    • published (boolean)
  • Required policy: viewServers

servers_group_modify

Modify a server group.

  • Parameters: Set any attribute you are not modifying to null.

    • id (string): Server Group ID.
    • name (string): Name.
    • description (string): Description.
    • published (boolean): Published. Set this to 1 if the group should be published and 0 if not.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

servers_group_publication_add

Add a publication (give a user group access to an application group).

  • Parameters:

    • users_group (string): User Group ID.
    • servers_group (string): Server Group ID.
  • Response (boolean): A success or failure.

  • Required policy: managePublications

servers_group_publication_remove

Remove a publication (remove a user group's access to an application group).

  • Parameters:

    • users_group (string): User Group ID.
    • servers_group (string): Server Group ID.
  • Response (boolean): A success or failure.

  • Required policy: managePublications

servers_group_remove

Remove a server group.

  • Parameters:

    • server_group_id (string): The server group id.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

servers_group_remove_server

Remove a server from a server group.

  • Parameters:

    • server_id_or_fqdn (string): The internal server id or the server fqdn.
    • group (string): The server group id.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

servers_groups_list

Fetch a list of all server groups.

  • Parameters: N/A

  • Response (object): A list with the server group ids as keys and server group objects as values. The server group objects contain the following attributes:

    • id (string)
    • name (string)
    • description (string)
    • published (boolean)
  • Required policy: viewServers

servers_list

Fetch a list of servers.

Note

This function has changed between versions so please refer to the appropriate version below.

  • Parameters:

    • filter (string): Used to return a filtered list of servers. This value is null by default (return all servers). It can also be set to:
      • online
      • unregistered
      • role_aps (this refers to application servers)
    • historical (boolean): Used to return list of historical server information (a list of all servers that have ever existed in the farm) instead of a list of current servers. The keys for this list are server ids and the values are server fqdns. This value is false by default. It can be set to true in order to retrieve historical data instead.
    • organizations (list): An array for optional attributes you would like added to the results. Currently the only available option is:
      • organizations
  • Response (object): A list of server objects containing information about each server.

  • Required policy: viewServers

servers_reports_list

Fetch a list of server reports by start time range.

  • Parameters: Provide times as UNIX timestamps.

    • start_time (integer): Start of start time range.
    • end_time (integer): End of start time range.
  • Response (list): A list of server report objects. The server report objects contain the following attributes:

    • id (string)
    • fqdn (string)
    • time (integer)
    • ram (integer)
    • cpu (integer)
    • data (string)
  • Required policy: viewStatus

session_disconnect

Disconnect a session.

  • Parameters:

    • session_id (string): The session id.
  • Response (boolean): A success or failure.

  • Required policy: manageSession

service_notice_create

Create a new service notice.

  • Parameters (object): A service notice object with the following attributes:

    • name (string)
    • content (string)
    • enabled (boolean)
  • Response (string): The id of the new service notice if successfully created. null otherwise.

  • Required policy: manageServiceNotices

service_notice_delete

Delete a service notice.

  • Parameters (string): The id of the service notice to be deleted.
  • Response (booblean): A success or a failure.

  • Required policy: manageServiceNotices

service_notice_list

Get the list of the service notices.

  • Parameters: N/A
  • Response (list): A list of service objects with the following attributes:

    • id (string)
    • name (string)
    • content (string)
    • enabled (boolean)
  • Required policy: viewServiceNotices

service_notice_update

Update a service notice.

  • Parameters (object): A partial service object with the following attributes:

    • id (string)
    • name (string, Optional)
    • content (string, Optional)
    • enabled (boolean, Optional)
  • Response (boolean): A success or a failure.

  • Required policy: manageServiceNotices

session_info

Fetch a list of the specified session's attributes.

  • Parameters:

    • session_id (string): The session id.
  • Response (object): A session object containing the following attributes:

    • id (string)
    • status (string)
    • mode (string)
    • user_login (string)
    • user_displayname (string)
    • servers (object)
    • if valid values exist for them:
      • external_storages (object)
      • start_time (integer)
      • desktop_server (object)
      • instances (object): a list of applications run during the session with the application ids as keys and the application names as values.
      • applications (object): a list of all applications published/available for the user with the application ids as keys and the application names as values.
  • Required policy: viewStatus

session_kill

Kill a session.

  • Parameters:

    • session_id (string): The session id.
  • Response (boolean): A success or failure.

  • Required policy: manageSession

session_report_info

Fetch a list of the specified session's attributes.

  • Parameters:

    • session_id (string): The session id.
  • Response (object): A session report object containing the following attributes:

    • id (string)
    • user (string)
    • start (integer)
    • end (integer)
    • stop_reason (string)
    • server (string)
    • data (string): XML data containing information about servers, log files, storages, published applications, applications run during the session, settings, and session statuses.
  • Required policy: viewStatus

session_report_remove

Remove a session report.

  • Parameters:

    • session_id (string): The session id.
  • Response (boolean): A success or failure.

  • Required policy: manageReporting

session_simulate

Fetch a list of session info for a user by simulating a session.

  • Parameters:

    • login (string): The user login.
  • Response (object): A session object containing the following attributes:

    • settings (object)
    • user_grps (object): a list of the user's user groups. The user group ids are keys and their names are values.
    • groups_partial_list (boolean): indicaties whether groups contains all the groups the user is in or only a subset of them.
    • app_grps (object): a list of the user's application groups. The application group ids are keys and the values are application objects with the following attributes:
      • id (integer)
      • name (string)
      • type (string)
    • shared_folders (object): a list with the shared folder ids as keys and the values as shared folder objects with the following attributes:
      • share_name (string)
      • mode (string)
    • profiles (object)
    • can_start_session_desktop (boolean)
    • can_start_session_applications (boolean)
    • external_storage (object): only appears if using the Enterprise Edition and external storages are defined. This is a list with the external data storage mapping ids as keys and the values as external data storage objects with the following attributes:
      • id (integer)
      • uri (string)
      • type (string)
      • name (string)
      • authentication (integer)
      • login (string)
      • password (string)
      • parameters (string)
    • servers (object): a list with server ids as keys and the values as server objects with the following attributes:
      • id (string)
      • name (string)
      • type (string)
    • cannot_start_session_reason (string): set only if can_start_session_desktop equals false.
  • Required policies: viewStatus, viewSummary

sessions_count

Fetch the number of sessions.

  • Parameters: N/A

  • Response (object): A list of the number of sessions per status. Possible statuses are:

    • total (will always be present)
    • unknown
    • error
    • creating
    • created
    • init
    • ready
    • logged
    • disconnected
    • wait_destroy
    • destroying
    • destroyed
  • Required policy: viewStatus

sessions_history

Fetch a list of session history information for reporting or summarizing purposes.

  • Parameters: Provide times as UNIX timestamps.
    • from (integer): Start of start time range.
    • to (integer): End of start time range.
    • mode (string): Increments. The summary information will be provided for each increment within the start time range. Possible values are:
      • day (default)
      • hour
      • minute
    • servers (list): A list of server IDs. This should be a list containing all the server IDs associated with the server. In most cases this will be a list containing only a single server ID but in some cases more than one ID may have been associated with the same FQDN (ex: if a server was previously deleted and then registered again in the farm. It will have had a different ID associated with it each time it was registered).
  • Response (object): A list with two keys:

    • sessions (object) - an array where the time increments are the keys and the number of sessions launched at that time are the values.
    • stop_why (object) - an array where the stop status types are the keys and the number of sessions that ended with that status are the values. A server id can be specified if summary information is only required for that particular server.
  • Required policy: viewStatus

sessions_list

Fetch a list of sessions.

  • Parameters: (object): An object with the following attributes:

    • offset (integer): Offset (the index at which to start returning results. Ex: 100 results, an offset of 10 means to return results starting at the 11th one). By default, offset is 0.
    • status (string): a session status used to filter the result. Valid statuses are: ("unknown", "error", "creating", "created", "init", "ready", "logged", "disconnected", "wait_destroy", "destroying", "destroyed"). By default, all statuses are considered.
  • Response (object): A list with the session ids as keys and session objects as values. The session objects contain the following attributes:

    • id (string)
    • status (string)
    • mode (string)
    • user_login (string)
    • user_displayname (string)
    • servers (object)
    • start_time (integer) (if valid value exists)
    • desktop_server (object) (if valid value exists)
  • Required policy: viewStatus

sessions_list_by_server

Fetch a list of sessions for the specified server.

  • Parameters:

    • server (string): Server ID.
    • offset (integer): Offset (the index at which to start returning results. Ex: 100 results, an offset of 10 means to return results starting at the 11th one). Set to null if no offset is desired.
  • Response (object): A list with the session ids as keys and session objects as values. The session objects contain the following attributes:

    • id (string)
    • status (string)
    • mode (string)
    • user_login (string)
    • user_displayname (string)
    • servers (object)
    • start_time (integer) (if valid value exists)
    • desktop_server (object) (if valid value exists)
  • Required policy: viewStatus

sessions_reports_list

Fetch a list of session reports by start time range.

  • Parameters: Provide times as UNIX timestamps.

    • start (integer): Start of start time range.
    • stop (integer): End of start time range.
  • Response (object): A list with the session ids as keys and session report objects as values. The session report objects contain the following attributes:

    • id (string)
    • user (string)
    • start (integer)
    • end (integer)
    • stop_reason (string)
    • server (string)
    • data (string): XML data containing information about servers, log files, storages, published applications, applications run during the session, settings, and session statuses.
  • Required policy: viewStatus

sessions_reports_list2

Fetch a list of session reports by start and stop time range and (optionally) by server.

Important

Deprecated in versions 3.2+. Please use either sessions_reports_list or sessions_reports_list3 instead.

  • Parameters: Provide times as UNIX timestamps.

    • start (integer): Start of start time range.
    • stop (integer): End of start and stop time range (i.e. the session was started and ended before this time).
    • server (string): Server ID. Set to null if no specific server's results are required.
  • Response (object): A list with the session ids as keys and session report objects as values. The session report objects contains the following attributes:

    • id (string)
    • user (string)
    • start (integer)
    • end (integer)
    • stop_reason (string)
    • server (string)
    • data (string): XML data containing information about servers, log files, storages, published applications, applications run during the session, settings, and session statuses. A server id can be specified if reports are only required for that particular server.
  • Required policy: viewStatus

sessions_reports_list3

Fetch a list of all session reports or reports filtered by time range and/or user.

  • Parameters: Provide times as UNIX timestamps.

    • start (integer): Start of start time range. Set to null if no specific start time is required.
    • stop (integer): End of start and stop time range (i.e. the session was started and ended before this time). Set to null if no specific end is required for the range.
    • user (string): User Login. Set to null if no specific user's results are required.
    • limit (integer): Search Limit. This value is 50 by default.
  • Response (object): A list with the session ids as keys and session report objects as values. The session report objects contain the following attributes:

    • id (string)
    • user (string)
    • start (integer)
    • end (integer)
    • stop_reason (string)
    • server (string)
    • data (string): XML data containing information about servers, log files, storages, published applications, applications run during the session, settings, and session statuses.
  • Required policy: viewStatus

set_license_threshold

Set the license threshold for an application. When the number of remaining licenses for the application is less than or equal to the threshold, an alert will be sent if it is enabled in "Notifications".

  • Parameters:

    • application_id (string): The application id.
    • threshold (integer): The threshold.
  • Response (boolean): A success or failure.

  • Required policy: manageApplications

settings_domain_integration_preview

Verify validity of LDAP/Active Directory connectivity.

  • Parameters:

    • settings (object): A list containing setting keys and their values.
  • Response (object): A list of setting with keys and their values.

  • Required policy: manageConfiguration

settings_get

Fetch a list of settings configurations.

  • Parameters: N/A

  • Response (object): A list of settings configurations, with each setting's name as key.

  • Required policy: viewConfiguration

settings_set

Modify settings configurations.

  • Parameters:

    • settings (object): A list containing the settings you are modifying. The setting names should be the keys and the value for each key should be the new value for the setting. See the Configuring OVD Settings section for a list of setting names.
  • Response (boolean): A success or failure.

  • Required policy: manageConfiguration

shared_folder_add

Add a shared folder to a server.

  • Parameters:

    • shared_folder (string): The name of the shared folder.
    • server_id_or_fqdn (string): The internal server id or the server fqdn.
  • Response (string): The shared folder's id if added successfully, null otherwise.

  • Required policy: manageSharedFolders

shared_folder_add_group

Add access to a shared folder to a user group.

  • Parameters:

    • group_id (string): User Group ID.
    • share_id (string): Shared Folder ID.
    • mode (string): Mode. Valid values are ro (read only) and rw (read and write).
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

shared_folder_info

Fetch a list of the specified shared folder's attributes.

  • Parameters:

    • shared_folder (string): The shared folder id.
  • Response (object): A list containing the following attributes:

    • id (string)
    • name (string)
    • server (string)
    • status (string)
    • groups (object): a list with modes as keys and lists as values. The lists have the group ids as keys and their names as values.
  • Required policy: viewSharedFolders

shared_folder_modify

Modify attributes of a shared folder.

  • Parameters: null value is allowed for name and quota. The result is no modification for this attribute.

    • id (string): The shared folder id.
    • name (string): The folder's new name.
    • quota (int): The quota value (integer).
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

shared_folder_remove

Remove a shared folder.

  • Parameters:

    • shared_folder (string): The shared folder id.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

shared_folder_remove_group

Remove access to a shared folder from a user group.

  • Parameters:

    • group_id (string): User Group ID.
    • share_id (string): Shared Folder ID.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

shared_folders_list

Fetch a list of all shared folders.

  • Parameters: N/A

  • Response (object): A list with the shared folder ids as keys and shared folder objects as values. The shared folder objects contain the following attributes:

    • id (string)
    • name (string)
    • server (string)
    • status (string)
  • Required policy: viewSharedFolders

storage_unit_remove

Remove a storage unit.

  • Parameters:

    • storage_unit (string): The storage unit id.
  • Response (boolean): A success or failure.

  • Required policy: manageServers

system_set_default_users_group

Set a user group as the system's default user group (all users are in the default group).

  • Parameters:

    • user_group (string): The user group id. A null value means no default group defined.
  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

Test if you are successfully connected and able to use this API.

  • Parameters: N/A

  • Response (boolean): A success or failure.

user_add

Add a user.

  • Parameters:

    • login (string): Login.
    • displayname (string): Display Name.
    • password (string): Password.
  • Response (boolean): A success or failure.

  • Required policy: manageUsers

user_info

Fetch a list of the specified user's attributes.

  • Parameters:

    • user (string): The user login.
  • Response (object): A user object containing the following attributes:

    • login (string)
    • displayname (string)
    • published (boolean): Enabled (true) or disabled (false).
    • locale (string)
    • password_expired : (boolean)
    • password_last_updated (string)
    • groups (object): a list of user groups this user is in.
    • groups_partial_list (boolean): a boolean value indicating whether all the user's user groups are in groups or only a partial result.
    • applications (object): the applications the user has access to. The value for this is a list for which the keys are application ids and the values are application names.
    • sessions (object): the user's sessions. The value for this is a list for which the keys are session ids and the values are session start times.
    • profiles (object): a list with profile ids as keys and profile objects as values. The profile objects contain the following attributes:
      • id (string)
      • server_id (string)
      • server_name (string)
    • settings (object)
    • settings_defaults (object)
  • Required policy: viewUsers

user_update

Update user information.

  • Parameters:

    • user (object): A list containing the user information to update. Possible parameters are:

      • login: The login of the user being updated. This parameter must be provided.

      • displayname (string): The new display name of the user.

      • password (string): The new password assigned to the user.

      • password_expired (boolean): Define whether the user must set a new password during their next login.

      • published (boolean): Enable (true) or disable (false) user.

  • Response (boolean): A success or failure.

user_personal_data_delete

Delete all non-operational data related to a specific user (for privacy reasons). To delete all other data associated with a user, the user must also be deleted from the system.

  • Parameters:

    • user (string): The user login.
  • Response (boolean): A success or failure.

  • Required policy: manageUsers

user_personal_data_extract

Extract all data related to a specific user (for privacy reasons).

  • Parameters:

    • user (string): The user login.
  • Response (object): A user data object containing the following attributes:

    • login (string)
    • displayname (string)
    • locale (string)
    • password_expired : (boolean)
    • password_last_updated (string)
    • groups (object): a list of user groups this user is in.
    • groups_partial_list (boolean): a boolean value indicating whether all the user's user groups are in groups or only a partial result.
    • applications (object): the applications the user has access to. The value for this is a list for which the keys are application ids and the values are application names.
    • sessions (object): the user's sessions. The value for this is a list for which the keys are session ids and the values are session start times.
    • profiles (object): a list with profile ids as keys and profile objects as values. The profile objects contain the following attributes:
      • id (string)
      • server_id (string)
      • server_name (string)
    • settings (object)
    • settings_defaults (object)
  • Required policy: viewUsers

user_profile_add

Add a user profile.

  • Parameters:

    • user (string): The user login.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

user_profile_info

Fetch a list of the specified profile's attributes.

  • Parameters:

    • profile (string): The profile id.
  • Response (any): A user profile object containing the following attributes:

    • id (string)
    • server (object)
    • status (string)
    • users (object): a list for which the keys are user logins and the values are user display names.
  • Required policy: viewSharedFolders

user_profile_remove

Remove a user profile.

  • Parameters:

    • profile (string): The profile id.
  • Response (boolean): A success or failure.

  • Required policy: manageSharedFolders

user_remove

Remove a user.

  • Parameters:

    • user (string): The user login.
  • Response (boolean): A success or failure.

  • Required policy: manageUsers

user_reset_2fa

Reset the two-factor configuration of a user.

  • Parameters:

    • user (string): The user login.
  • Response (boolean): A success or failure.

  • Required policy: manageUsers

user_settings_remove

Remove user settings.

  • Parameters:

    • user_id (string): User Login.
    • container (string): Container. This is the name of the settings section you are configuring.
    • setting (string): Setting.
  • Response (boolean): A success or failure.

  • Required policy: manageUsers

user_settings_set

Configure user settings.

  • Parameters:

    • user_id (string): User Login.
    • container (string): Container. This is the name of the settings section you are configuring.
    • setting (string): Setting.
    • value (any): Value.

    See the Configuring OVD Settings section for more information about the data structure.

    You can also call user_info to list existing settings and values.

  • Response (boolean): A success or failure.

  • Required policy: manageUsers

users_group_add

Add a user group.

  • Parameters:

    • name (string): Name.
    • description (string): Description.
  • Response (string): The id of the new license if successfully created. null otherwise.

  • Required policy: manageUsersGroups

users_group_add_script

Add a script to a user group.

  • Parameters:

    • script (string): Script ID.
    • group (string): User Group ID.
  • Response (boolean): A success or failure.

  • Required policy: manageScriptsGroups

users_group_add_user

Add a user to a user group.

  • Parameters:

    • user_id (string): User Login.
    • group_id (string): User Group ID.
  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

users_group_info

Fetch a list of the specified user group's attributes.

  • Parameters:

    • user_group (string): The user group id.
  • Response (object): A user group object containing the following attributes:

    • id (integer)
    • name (string)
    • description (string)
    • published (integer)
    • type (string)
    • default (boolean)
    • users (object): a list of users in this user group. User logins are the keys and their display names are the values.
    • users_partial_list (boolean): indicates whether all the user groups's users are in users or only a partial result.
    • applicationsgroups (object): the application groups the user group has access to. The value for this is a list for which the keys are application group ids and the values are the group names.
    • serversgroups (object): the server groups the user group has access to. The value for this is a list for which the keys are the server group ids and the values are their names.
    • sharedfolders (object): a list with modes as keys and lists as values. The lists have the folder ids as keys and their names as values.
    • policy
    • default_policy
    • settings (object)
    • settings_defaults (object)
  • Required policy: viewUsersGroups

users_group_modify

Modify a user group.

  • Parameters:

    • id (string): User Group ID.
    • name (string): Name.
    • description (string): Description.
    • published (boolean): Published. Set this to 1 if the group should be enabled and 0 if not.
  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

users_group_remove

Remove a user group.

  • Parameters:

    • user_group (string): The user group id.
  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

users_group_remove_script

Remove a script from a user group.

  • Parameters:

    • script (string): Script ID.
    • group (string): User Group ID.
  • Response (boolean): A success or failure.

  • Required policy: manageScriptsGroups

users_group_remove_user

Remove a user from a user group.

  • Parameters:

    • user_id (string): User Login.
    • group_id (string): User Group ID.
  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

users_group_settings_remove

Remove user group settings.

  • Parameters:

    • group_id (string): User Group ID.
    • container (string): Container. This is the name of the settings section you are configuring.
    • setting (string): Setting.
  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

users_group_settings_set

Configure user group settings.

  • Parameters:

    • group_id (string): User Group ID.
    • container (string): Container. This is the name of the settings section you are configuring.
    • setting (string): Setting.
    • value (any): Value.

    See the Configuring OVD Settings section for more information about the data structure.

    You can also call users_group_info to list existing settings and values.

  • Response (boolean): A success or failure.

  • Required policy: manageUsersGroups

users_groups_list_partial

Fetch a list of user groups.

  • Parameters:

    • search (string or null): Search item is the value of the attribute specified in the search field parameter.
    • search_fields (list or null): Search field is the user group attribute to search through. Possible values are:
      • name
      • description
    • user_login (string): User Login. Search only in user groups this user is in. Set to null if this option is not required.
  • Response (list): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the maximum value set in for max_results_per_page in general settings.
    • data (list) - a key-value list where the keys are user group ids and the values are user group objects that contain the following attributes:
      • id (integer)
      • name (string)
      • description (string)
      • published (boolean)
      • type (string)
      • default (boolean)
  • Required policy: viewUsersGroups

users_list_partial

Fetch a list of users.

  • Parameters:

    • search (string): Search item is the value of the attribute specified in the search field parameter. Leave blank to retrieve all results.
    • search_fields (list): Search field is the user attribute to search through. Possible values are:
      • login
      • displayname
    • group_id (string): User Group ID. Search for users within this user group. Set to null if this option is not required.
  • Response (list): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the maximum value set in for max_results_per_page in general settings.
    • data (list) - a key-value list where the keys are user logins and the values are user objects that contain the following attributes:
      • login (integer)
      • displayname (string)
  • Required policy: viewUsers

users_populate

Populate the system with default users.

  • Parameters:

    • override (boolean): Set this to true if you have already populated the system with default users and you are now changing their passwords. To override default values, set to false.
    • password (string or null): The password for your default users. It is set to the user's login by default.
  • Response (boolean): A success or failure.

  • Required policy: manageUsers

users_profiles_list

Fetch a list of all user profiles.

  • Parameters: N/A

  • Response (object): A list with profile ids as keys and profile objects as values. The profile objects contain the following attributes:

    • id (string)
    • server (string)
    • status (string)
    • users (object): a list for which the keys are user logins and the values are user display names.
  • Required policy: viewSharedFolders

users_profiles_list_partial

Fetch a partial list of user profiles.

  • Parameters:

    • user (string): Login name. User profiles will be returned for any user logins that fully or partially match this value. Set to null if this option is not required.
  • Response (list): A list of two items:

    • partial (boolean) - refers to whether all results were returned or not. The number of results returned will not exceed the maximum value set in for max_results_per_page in general settings.
    • data (list) - a key-value list where the keys are user logins and the values are user objects that contain the following attributes:
      • login (integer)
      • displayname (string)
  • Required policy: viewSharedFolders