Delivery Deep Links
Delivery URLs
Parameter | Description | Value |
---|---|---|
delivery load balancer host | load.balancer.del.host in global properties | string |
delivery load balancer port | load.balancer.del.port in global properties | number |
PID | The PID of the delivered object – IE, Representation or File | string |
dps_func | The specific function verb – ‘stream’ or ‘thumbnail’ | string |
Input URL Syntax
Delivery Deep Link (IE or Representation):
https://<delivery load balancer host>:<delivery load balancer port>/delivery/DeliveryManagerServlet?dps_pid=<IE/REP PID>
Delivery Deep Link (File within IE, in IE Viewer):
https://<delivery load balancer host>:<delivery load balancer port>/delivery/DeliveryManagerServlet?dps_pid=<IE/REP PID>&dps_file=<file PID>
Delivery Deep Link (File):
https://<delivery load balancer host>:<delivery load balancer port>/delivery/DeliveryManagerServlet?dps_pid=<file PID>&dps_func=stream
Delivery Deep Link (Thumbnail):
https://<delivery load balancer host>:<delivery load balancer port>/delivery/DeliveryManagerServlet?dps_pid=<file PID>&dps_func=thumbnail
Collection Viewer:
https://<delivery load balancer host>:<delivery load balancer port>/delivery/DeliveryManagerServlet?dps_pid=<collection ID>
IIIF Manifest (IE or REP):
https://<delivery load balancer host>:<delivery load balancer port>/delivery/iiif/presentation/2.1/<IE/REP PID>/manifest
IIIF Canvas (File):
https://<delivery load balancer host>:<delivery load balancer port>/delivery/iiif/presentation/2.1/<IE/REP PID>/canvas/<File PID>
CMS Resolver:
https://<delivery load balancer host>:<delivery load balancer port>/delivery/action/cmsResolver.do?cmsSystem=<system>&cmsRecordId=<recordId>[&displayType=list&columns=<column_a,column_b> | &displayType=thumbnails]
(Note: A CMS Resolver request that yields only one result will be automatically redirected to IE Delivery.)
Input Example
Delivery Deep Link (IE or Representation)
Delivery Deep Link (File)
https://rosetta.exlibrisgroup.com/delivery/DeliveryManagerServlet?dps_pid=FL17981&dps_func=stream
Delivery Deep Link (Thumbnail)
https://rosetta.exlibrisgroup.com/delivery/DeliveryManagerServlet?dps_pid=FL17981&dps_func=thumbnail
CMS Resolver
https://rosetta.exlibrisgroup.com/delivery/action/cmsResolver.do?cmsSystem=USM01&cmsRecordId=000008447-6&displayType=list&columns=dc:title,dc:creator
https://rosetta.exlibrisgroup.com/delivery/action/cmsResolver.do?cmsSystem=USM01&cmsRecordId=000008447-6&displayType=thumbnails
Authentication
Delivery URLs support Basic Authentication (v. 6.3+): A base64 encoded user, institution code and password, sent as an Authorization HTTP header. Decoded string should be {username}-institutionCode-{institutionCode}:{password}, e.g. vickyholmes-institutionCode-INS00:9uQ29kZS1JT.
Access Rights Check
External applications such as viewers or discovery systems can request an Access Rights check without actually delivering the object, by sending a HEAD request to the same delivery URL.
Rosetta returns the following responses:
- 200 – if access is granted
- 401 – if access is denied for user-related reasons (i.e. user login may allow access).
- 403 – if access is denied for other reasons
When a 401 or 403 code is returned, Rosetta includes the reason (defined in the Access Rights Policy) in the X-Denied-Message header. If the reason is represented in multiple languages, the requested language can be specified using change_lng querystring parameter.
Depending on your implementation, CORS headers may be required. Rosetta supports CORS by returning the following headers:
X-Frame-Options: SAMEORIGIN Access-Control-Allow-Origin: * Access-Control-Allow-Methods: GET, OPTIONS, HEAD Access-Control-Expose-Headers: X-Denied-Message Access-Control-Allow-Credentials: true