Direct URL Searching

Direct URL Access

Easily integrate any application capable of passing search terms to a web address (URL).

URL Basics

There are several elements in a GlobalSearch URL that must be known to successfully search or view documents. All must be known by the calling application and passed dynamically or hard coded into the URL itself. This detail can be gained by making calls into the GlobalSearch API, by calling directly into the SmartSearch SQL database, or by looking them up before hand and embedding them directly into the request.

Users will still need to authenticate and permissions are respected with URL access. There is no means to circumvent authentication and no means to pass authentication parameters along in the URL itself.

URL Searching does consume a license. If a license is already consumed in a user’s browser session, only a single license will be consumed. Note that licenses will not be released unless the license token is programmatically returned via the GlobalSearch API, the user manually logs out with the ‘Logout’ button, or the License Manager utility on the server has been configured to clear licenses after some period of inactivity.

When calling GlobalSearch with direct URLs, it’s recommended you target the browser tab by name. This will prevent multiple GlobalSearch tabs from opening should the user leave GlobalSearch open after going back into the calling application.

URL Parameters

Every URL requires a Database ID and Archive ID. Other parameters are included or excluded based on the type of request.

db= Required

Database ID: The ID of the Database being targeted. Database ID can be retrieved from the API, from the URL of an active GlobalSearch session, or from the ssConnectionStrings table in the ssMaster database.

a= Required

Archive ID: The ID of the Archive that contains the document or documents being requested. Archive ID can be retrieved from the API, from the URL of an active GlobalSearch session, or from the ssArchives table in the selected database.

s= Required For Searches

Search ID: The ID of the search to be run. Search ID can be retrieved from the API, from the URL of an active GlobalSearch session, or from the ssSearches table in the selected database.

d= Required For Documents

Document ID: The ID of the document to be loaded into the viewer. Document ID can be retrieved from the API, from the URL of an active GlobalSearch session, or from the ssFields table in the selected database.

p= Required For Searches

Prompt ID: A comma separated list containing the Search’s Prompt ID, a colon, and the search string. Prompt ID can be retrieved from the API, from the URL of an active GlobalSearch session, or from the ssSearchDetail table in the selected database.

p=329:’PIN001689′
In this example, 329 is the Prompt ID for this search’s Invoice Number field, and ‘PIN001689’ is the invoice number being searched.

Searching URL

All access to document lists is granted through a search. You must have a search defined on an Archive prior to attempting any document lookups.

A basic Search URL would look like:

https://localhost/square9web/index.html#/direct?db=1&a=38&s=94&p=329:'PIN001689'

If multiple search prompts were necessary, the ‘p’ parameter becomes a comma separate list in the same format:

https://localhost/square9web/index.html#/direct?db=1&a=38&s=94&p=329:'PIN001689',330:'Verizon'

If all documents in Date Captured Descending order are required, leave the ‘p’ paramter blank:

https://localhost/square9web/index.html#/direct?db=1&a=38&s=94&p=

Note Passing search strings from host applications can be tricky when the data being searched contains spaces or special characters. Differences between browser platforms can also cause inconsistencies. You may need to change single quotes, spaces, and other characters to their URL encoded equivalents to see successful searches.

Document URL

Document requests are on a per document basis and load images into the GlobalSearch Document Viewer. If document access outside of the GlobalSearch viewer is required, direct requests in the GlobalSearch API would be required.

A basic Document URL would look like:

https://localhost/square9web/index.html#/direct?db=1&a=38&d=495

Scanning URL

Before calling a scanning URL, it is assumed the web scanning components have been installed and are confirmed to be working. Scanning from a URL can be leveraged directly from the browser, or through links from company portals and other web interfaces like Salesforce.com.

A basic Scanning URL would look like:

https://localhost/square9web/index.html#/direct?db=1&a=38&scan=true

If you wish to provide index data to the scan job, the ‘p’ parameter becomes a comma separated list in the same format:

https://localhost/square9web/index.html#/direct?db=1&a=38&scan=true&p="329":"PIN001689","330":"Verizon"

Note With direct scanning, the p parameter contains a comma separated list of Field ID’s and values. This is different from direct searches, where the p paremeter contains Search Prompt ID’s. Also note that will scan URL’s, the field ID should be wrapped in single quotes. In either case, know you may need to URL encode special characters.