Skip to content

Umlaut URL Parameters

jrochkind edited this page Apr 16, 2013 · 7 revisions

Umlaut has a few custom URL parameters (can also be sent in a POST request) to control Umlaut behavior. All start with the prefix "umlaut.". These are generally added onto an OpenURL GET request.

umlaut.request_id

Specify an already created OpenURL request to act upon. Without this, Umlaut will still try to connect to an already created request within the same session based on a cache of OpenURLs seen in that session. But this process is not perfect. With umlaut.request_id, you can assure you are operating on the same request, and even if the client does not have cookies or a session.

umlaut.referent_id

Specify an Umlaut Referent object to re-use. Umlaut referent object represents a particular citation. Unlike umlaut.request_id, won't re-use an entire request (with responses and state), but only the specified citation.

umlaut.skip_resolve_menu

Set to "false" to override umlaut's configuration for conditionally skipping the the resolve menu and going straight to content. umlaut.skip_resolve_menu=false forces display of full resolve menu.

umlaut.skip_resolve_menu_for_type

Set to the name(s) of Umlaut service types (comma delimited), to force menu skipping (direct linking) for the first response found from any of the service types named.

umlaut.response_format

Generally used for API requests, value can be "xml", "json", or "jsonp". In case of jsonp, umlaut.jsonp=jsFunctionName can be used to determine the js function name that will be generated with the jsonp output

umlaut.force_new_request=true

Ordinarily, if a user with the same cookie-based sessionID requests the exact same OpenURL twice, the existing umlaut Request object will be re-used -- along with it's existing responses. This is ordinarily a good idea -- it ensures that requests for background service updates hook up with the right request instead of creating a new one, and also in general makes more faster and more efficient responses with browser refresh, back button, or requesting the exact same umlaut page twice.

However, it can be inconvenient for development, when you need to re-execute a request to see how new versions of service plugins behave. It can also be a problem when a bug or problem in umlaut services has saved bad data, and users keep getting the bad data on re-request. While there's no general solution for the latter issue, individual people reporting the problem can be given a URL with &umlaut.force_new_request=true included in query params, to force a re-run of the request, not using cached Umlaut Request object. This can also be used by developers.

umlaut.service_group

Umlaut 3.1, forthcoming

A way to specify a set of umlaut services to run for this given request, instead of just using the default services. Other software may call a feature 'institutions' that has overlapping functionality. For more information, see Alternate Service Groups