Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Keywords

...

Hyperlinks are a critical tool for helping users quickly and easily access the system. This article details how to construct a hyperlink for your system and offers example hyperlinks to demonstrate how the keywords can be used.

Basic Construction

Any hyperlink consists of three main components.

$URL_address_of_ Agiloft?

For example:

https://<server>/gui2/login.jsp?<keywords>

For the end user interface:

https://<server>/gui2/login.jsp?<keywords>/eui2template/<templatename>

If you're using single sign-on, replace login.jsp with the login code for your sign-on provider:

  • For SAML: samlssologin.jsp
  • For Windows: sso.jsp
  • For Google OAuth 2.0: oauth20sso without .jsp
  • For CAS: cas-login without .jsp

KeyID=0

This keyword pair is always the same and is required in links.

Keyword pairs

Add any other necessary keywords to bring the user to the right location. See the list of keywords below.

Hyperlink Keywords

Keywords aren't case sensitive, but their values, such as the table or field name

...

, are case sensitive. To find the correct case for your table, navigate to Setup > Tables, select your table, click Edit, and look for the Logical Table Name. To find the correct case for a field, edit its parent table, and then edit the field. Remember to use the field name,

...

not the label.

You can use these keywords regardless of whether you are using a single sign-on hyperlink, but with single sign-on, username and password keywords are not necessary.

Code Block
titleKeyword Syntax
 &keyword1=value1&keyword2=value2...


HTML
<style type="text/css">
@media print {
    /* workaround for wide tables: CONF-17424 */
    table.confluenceTable
    {
        width: 100%;
        table-layout: fixed;
    }
}
</style>

 

 

Code Block
titleSyntax
 &keyword1=value1&keyword2=value2...


Keyword

Allowed Values and example

Comments

keyID0The key/value pair keyID=0 is required for all login hyperlinks.

kb, project, product

Any knowledgebase name
kb=Example

These keywords specify the name of the knowledgebase that the user is logging into. They all mean exactly the same thing and are interchangeable. There is more than one keyword with this meaning for historical reasons.

table

Any logical table name
Table=Case
table=person.employee

This keyword specifies the name of the table that the user should view. In this example, it is as if the user logged on and then clicked the Cases tab.
The Table parameter is based on the table name rather than the label.
If the user provides a table name that is not recognized, the system logs them into the default screen with an error message:
"Table $name not found. Please use the name of the table, rather than its label, for example

Contact

Document, rather than

Contacts

Documents".

When the state=Edit:table parameter is used, you must also use the table and record/id parameters. For example, &state=edit:contract&table=contract&id=202.

Due to the current

Companyname
GUI design, there is no difference between specifying a table or a subtable

(i.e.

- for example, Case.Bug takes the user to the same tab as Case

)

.

state

  • New

New:$table_name State=New:contact

OR

New:$table_name.$subtable
State=New:contact.user

  • Edit

State=Edit:table_name&table=table_name&record=XXX

  • Charts

State=Charts

  • Main

State=Main&search=MyAssigned

  • FAQ

    Open a record (ID=2) in edit mode

example: State=FAQ

  • FAQItem

State=FAQItem

  • Convert

State=Convert:case

This keyword specifies what action should be performed automatically.
"New:$table_name" creates a new record of specified type, as in the example.

"Edit:$table_name" opens a record for edit in the specified table, and must be used with the parameters "table" and "id."

"Charts" takes the user to the Charts tab of the

Staff

Power User interface in the table specified by Table parameter.

"Main" takes the user to the main mode of the interface and allows specification of a search that should be automatically executed. Note the case sensitivity for this parameter: Use State=Main or state=Main, since State=main will not work.

"FAQ" takes the user to the FAQ mode of the EndUser interface and allows to specify the table parameter to choose the table that contains FAQ records

"FAQItem" takes the user to the specific FAQ record. table and record parameters are required

"Convert:$table_name" enables a specific record to be converted from a

hotlink

hyperlink. The

hotlink

hyperlink must include the name of a corresponding conversion action.
This functionality offers a way to use template

tickets

records to create new

tickets

records with prepopulated fields. For instance, you could provide a user with a hyperlink to "create a password reset ticket" that converts a ticket that already has the category, assigned to, and other fields filled out for a password reset request.
This parameter works not only in external login

hotlinks

hyperlinks, but also in the internal

hotlinks

hyperlinks available in the

hotlink

hyperlink widget in the

staff

power user home page. So you can provide multiple

hotlinks

hyperlinks that each convert a different template ticket directly on the home page, such as:
Create a Network Outage Ticket, Request a New Employee Setup, Request a Password Reset or Create a new server upgrade task.

record

, id


Any valid record id

id

record=123

This parameter is mandatory for state=Edit. It identifies the record to be opened for

editing

edit by ID.

expiration

Any future date

expiration=05/31/2025

This keyword defines an expiration date (MM/DD/YYYY) for anonymous links. Use it together with state=Edit

field

$fieldname:fieldvalue

field=summary:test_summary

This keyword allows you to set field values for a record in state=Edit. A hyperlink may contain several "field" parameters.
Use the following format to modify fields:
field=<$field_name> :<$value>

exiturl

Any url
example: exiturl=

http
https://www.sw.com

When the user logs out from

Companyname
, go to the specified URL

loginurl

Any url

If the user is unable to login to

Companyname
because of an invalid username/password combination, go to this URL.
If no loginurl is provided, but an exiturl is provided, the exiturl functions as the loginurl.

timeouturl

Any url

If the user's

Companyname
session times out due to inactivity, go to this URL.
If no timeouturl is provided but an loginurl is provided, the loginurl functions as the timeouturl

logouturl

Any url

If the user is manually logged out of

Companyname
, go to this URL
If no logouturl is provided, but a timeouturl is provided, the timeouturl functions as the logouturl.

cancelurl

Any url

If the user clicks the Cancel button when GUI is set to No, return to this URL.
If no cancelurl is provided, the exiturl is used.

euiurl

Any url
example: euiurl=eui2template/<x.php>

When the user logs into the End User Interface via single-sign on, this URL specifies where to redirect the user. For other ways to create a hyperlink to log into the end user interface, see the Examples section.

gui

  • No, no
  • EndUser, enduser
  • Staff (default)
  • No/enduser
  • No/staff
  • LowRes, lowres
  • ADA, ada

gui=no
gui=LowRes

gui=ada

gui=no/enduser
gui=enduser
gui=staff

"no" or "No" mean that only the new/edit record screen, together with any pre and post HTML is shown. The rest of the

Companyname
interface is not displayed.

 

"no/enduser" or "no/staff" are just like no, but explicitly specify whether the record should be shown using the end user layout or the

staff

power user layout.

 

"staff" is the default and indicates the full

staff

power user interface should be shown.

"LowRes"

forces

parameter will direct the user to

log into the low resolution/ADA interface for mobile devices

the mobile interface regardless of the device.

"ada" will direct users to the accessible ADA interface.

$notmobile

true

$notmobile=true

Use the parameter $notmobile to force a mobile device to access the normal desktop interface, either

staff

power or end user depending on permissions. The

notmobile

$notmobile parameter can also be used in login page buttons, to be sent to the browser with the login request. For example:

<input type="hidden" name="$notmobile" value="true">

field= hide_btn:true

Prevents display of the Finish&New button

This keyword is used in conjunction with GUI=No when you want the user to provide a single record, such as an employment application

user

Any valid user login name

The keyword parameter provides the user login name

passwd, password

Any valid password for the specified user
example: passwd=bob

"passwd or password" values provide the provide the password part of a user/password combination.

search

Any valid saved search name

This keyword parameter provides the name of a saved search that is automatically executed when the user logs on.
This parameter is always used together with the table parameter

customsearch

Any valid search

This keyword allows the user to specify the field names and values within the hotlink itself. The search uses the standard syntax ==, >=, >, <=, <, !=, (,), && and ||. However, many of these symbols have reserved meanings in HTML, so they have to be expressed

using% N

using %N equivalents. For example: CustomSearch=State% 3E=Closed%26%26Severity==Critical

If the URL is used in a return URL or in the value of another query string, the reserved and excluded characters must be doubled encoded, meaning the % in the %N must also be expressed in %N format. To demonstrate, & is single-encoded as %26 and double-encoded as %2526 (%26 is the URL-encode for "&", and %25 is the URL-encode for "%").

Multiple conditions can be joined together using || or && symbols. It is possible to specify whether the data should be sorted in ascending or descending order by using sortasc=$fieldname or sortdesc=$fieldname.

If columns contain spaces, replace them with _ instead, and if names contain spaces, place them in single quotation marks. For example: Name_of_Related_Party='Acme Technologies Inc.'&&Party_Position=Client

record_access

View, view
Edit, edit
none

This keyword

is only used together with a search or a customsearch that returns just one record and Edit state. It

causes the specified record to be opened for viewing or editing

.
Value

, or, if "none"

for this parameter indicates no GUI should be shown during hotlink's processing. Such behavior useful if a hotlink

is specified, causes no interface to appear at all while the hotlink is processed.

You might use "none" in a hotlink that is intended to change some data

in

in 

Companyname

without

 without showing the editing screen.

For

 For example,


state=Edit:Cases&record=2&fields=priority:high& record_access=none


will set the case's priority to "high" and redirect the user to

logout

the exit URL

(login

.

jsp, if the URL is undefined)

This keyword can be used together with gui=no to return a single record to the user without showing the rest of the

Companyname
interface.

If the user specifies a chart/report to view, it shows it in the same fashion as if the user had clicked on the hotlink

locale

de
en
es
fr
ru
zh
pt_BR
SW_User_Selected_Lang

This keyword is used to define the language in which the interface should be shown to the user.
Accepted values correspond to supported languages:
German - de
English - en
Spanish - es
French - fr
Russian - ru
Chinese - zh
Brazilian Portuguese - pt_BR
For example:
&locale=fr
A special value SW_User_Selected_Lang allows to log in with the same language as used for last user's session. This value will be used from now on in the email hotlinks as well.
If no value is supplied English is assumed for backward compatibility.

Examples

Additional examples are provided at [your URL]/gui2/hotlinks/test.jsp. 
For example: https://support.agiloft.com:8080/gui2/hotlinks/test.jsp.

...

Action

...

Hotlink

Use these examples to see how keywords can work together.

HTML
<style type="text/css">
@media print {
    /* workaround for wide tables: CONF-17424 */
    table.confluenceTable
    {
        width: 100%;
        table-layout: fixed;
    }
}
</style>


Action

Hotlink

Access the mobile interface on a desktop device.https://test.agiloft.com/gui2/login.jsp?keyID=0&kb=KBNAME&user=USER&password=****&gui=lowres
Access the ADA compliant interface.https://test.agiloft.com/gui2/login.jsp?keyID=0&kb=KBNAME&user=USER&password=****&gui=ada

Go to the Legacy End User Interface.
When the user selects Exit, go to the URL:

http

https://test.agiloft.com/gui2/hotlinks/test_exit_url.html
If there is an error

(

, for example the password is invalid

)

, go to the URL:

http

https://test.agiloft.com/gui2/hotlinks/test_login_url.html

http

https://test.agiloft.com/gui2/login.jsp?keyID=0&kb=demo&user=admin&passwd=1&State=enduser&exiturl=http://test.agiloft.com/gui2/hotlinks/test_exit_url.html&loginurl=http://test.agiloft.com/gui2/hotlinks/test_login_url.html

Go to the

staff (Main)

power user interface and select the Cases table

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1 &State=Main&table=

cases

case

Log in to the main.php page of the default End User Interface

When the user exits, go to the URL https://www.agiloft.com

Try to go to a non-existent table

(

to generate a deliberate error

)

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Main&table=

unexisting

nonexistent_contacts

Go to the contacts table

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Main&table=contacts

Go to "contracts" table and perform the Saved Search named "company name"

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Main&table=contracts_table &search=company%20name

Go to "contacts" table and search for the "test" keyword

http://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Main&table=

contacts

contact&customsearch=test

Submit a new bug without showing the

Companyname
GUI, logoff on finish

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=New:

Cases.Bug_Report

Case&table=

cases

case&gui=no

Submit a new bug and show the GUI

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=New:

Cases.Bug_Report

Case&table=

cases

case

Go to Reports for the contact table and show the GUI

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Charts&table=

contacts

contact

Go to Reports for the contact table without showing the GUI

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Charts&table=

contacts

contact&gui=no

Submit a new

bug

record without showing the GUI, set the"description" and "solution" fields

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=New:

Cases.Bug_Report

Case&table=

cases

case&gui=no &field= description:preset%20from%20hotlink &field= solution:--%20enter%20some%20---

Submit a new

bug

record without showing the GUI, set the" description "and" solution" fields and immediately exit to the specified URL without giving the user the opportunity to make any changes to the record.

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=

FinishNew:Cases.Bug_Report

New:Case&table=

cases

case&gui=no &table=cases&gui=no &field=description:preset%20from%20hotlink &field= solution:--%20enter%20some%20--+&_mode=new &_unifier=50&type=30 &exiturl=http://test.agiloft.com/gui2/hotlinks/test_exit_url.html

Open a

bug

record (ID=2) in edit mode

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Edit:

Cases.Bug_Report&

Case&table=case&record=2&record_access=edit

Open a

bug

record (ID=2) in view mode

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Edit:

Cases.Bug_Report&

Case&table=case&record=2&record_access=view

Open a

bug

record (ID=2), set priority=low and exit

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Edit:

Cases.Bug_Report&

Case&table=case&record=2&record_access=none&field=priority: low

Open a

bug

record (ID=3) in edit mode and change the summary and priority fields

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&passwd=1&State=Edit:

Cases.Bug_Report&

Case&table=case&record=3&record_access=edit &field=summary: from_link Tue Mar 15 15:59:09 PST 2009 &field=priority:medium

Open a

bug

record (ID=1) in edit mode using a temporary password that expires on 10/25/09

http

https://test.agiloft.com/gui2/login.jsp?keyID=0 &kb=demo&user=admin&record_access=edit &State=Edit:

Cases.Bug_Report&

Case&table=case&record=1&expiration=10/25/09 &passwd= @@sKbNeWUkB5OEXEKRbsa9Ag% 3D% 3D

Create a new contract record using SAML single sign-on

https://test.agiloft.com/gui2/samlssologin.jsp?State=New:contract&KB=demo

Open the Demo project in the EUI regardless of the user's permission set

https://test.agiloft.com/gui2/samlssologin.jsp?project=Demo&gui=EUI&state=enduser&euiURL=%20/eui2template/main.php


Hide If
displayprintable

Content by Label
showLabelsfalse
max5
spacesPROD
showSpacefalse
sortmodified
reversetrue
typepage
cqllabel in ("hotlinks","access","hyperlinks") and type = "page" and space = currentSpace()
labelsaccess hyperlinks hotlinks