|Manuals

Creating a One-Time URL

The VirtualUI Server processes a One-Time URL creation request in the form of an http(s) request, as follows:

serverurl + "/ws/oturl/get?apikey=" + apikey + "&accesskey=" + accesskey +
"&virtualpath=" + virtualpath +
"&userid=" + userid + "&password=" + password +
"&customdata=" + customData +
"&plen=" + passlen + "&expires=" + expires +
"&arguments=" + arguments

where:

Parameter Required Description
serverurl optional VirtualUI Server address (protocol, domain and port)
apikey required VirtualUI installation [API] key. Find this information in Thinfinity.VirtualUI.Server.ini at C:\ProgramData\Cybele Software\Thinfinity\VirtualUI
accesskey required if not using virtualpath Identifies the application that will be run. Complete this parameter with the access key parameter found in the application’s profile in the VirtualUI Server Manager.
virtualpath required if not using accesskey Uses the VirtualPath of the application, configured in the application profile editor.
userid optional A valid user that meets the criteria set in the application profile’s Permission tab.
password optional The password of the user specified in the ‘userid’ parameter.
customdata optional Use this field to send any information you may need to make available to the application. This is the right place to pass sign-on credentials. This information will be accessible in the application through the BrowserInfo.CustomData property.
plen optional Length of the passcode to be returned.
expires optional Ticket expiration time, in minutes.
arguments optional Arguments passed to the application.
Info

The user indicated in the userid parameter is a user validated within VirtualUI to access the application. This is an Active Directory user that was either added individually, or as part of a group of users in the Permissions tab of the profile that will be accessed. In a regular non-one-time-URL implementation, the end user would authenticate by providing these credentials. However, when using a one-time-URL, this information is used internally by the application and the user can be authenticated somehow else.

If the request is unsuccessful, the following HTTP codes can be received:

400: Invalid parameters

401: Userid/password invalid

If the request is successful, the HTTP call returns a 200 HTTP status code, and a JSON consisting of two fields:

{
 "key": "LnJwsxGHp5d@6MHeiEswRdfxFCiIcLAUttRS$9FSUs-Utz3o",
 "pass":"1U4KRLN0"
}

With this information, the backend can build the final URL, following this format:

http(s)://server-url/oturl.html?key=[accesskey]&pass=[passcode]

Here’s an example that uses the JSON shown above:

http(s)://server-url/oturl.html?key=LnJwsxGHp5d@6MHeiEswRdfxFCiIcLAUttRS$9FSUs-Utz3o&pass=1U4KRLN0