Tech Blog

Alma-Primo Locate Tool

The Alma-Primo Locate Tool (APLT) allows you to create and describe libraries and locations to help your users know where your open stacks are located.

It uses the Alma Discovery Interface Integration Profile and the Alma API; it displays a button in Primo – using the c.uresolver.locate label, hence the name – which links to APLT.

The URL looks like this:{location_code}

It works on “Building”and Alma Library level, rather than on shelf level, and is particularly useful for libraries whose locations are spread around a campus or city, with different addresses and opening hours.


With APLT you can:

  • Add Google Maps pointing to the library buildings containing your Alma Locations.
  • Describe buildings and link to useful information.
  • Link to opening hours.
  • Describe Alma Locations, including:
    • Room names
    • Floors
    • Links to useful information.
  • Override Alma Location names.
  • Add alerts to provide your users with up to date information.
  • Display maps of the shelves (beta).


Open Source repository:


Primo button example:

Endpoint example:

Technical Aspects

This app is based on Laravel 7.30.4 and has its same requirements.

PHP requirements

  • PHP >= 7.2.5
  • BCMath PHP Extension
  • Ctype PHP Extension
  • Fileinfo PHP Extension
  • JSON PHP Extension
  • Mbstring PHP Extension
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension

Database requirements

  • MySQL 5.7+
  • PostgreSQL 9.6+
  • SQLite 3.8.8+
  • SQL Server 2017+

As the name suggest, you will need ExLibris’ Primo and Alma to make use of this application. Furthermore, you will need an Alma API key that allows you to access the Alma Locations of your Alma Libraries. Alma API keys can be generated via the ExLibris Developer Network.

Please contact ExLibris for more information about Alma and Primo API keys.


This application has been tested only on a non-VE Primo environment; but we expect our application to work just as well in -ve and non-ve environments.

Alma Code Labels settingsAlma Integration Profile settings

Future developments

Due to its design, APLT is a very flexible application and we are planning to add more functionalities to it:

  • Display Alma Opening Hours – Due to the pandemic opening hours have been changing constantly at Leiden University. Because of this, opening hours have been managed outside Alma. Once the situation will stabilize, we will implement displaying Alma Opening Hours into APLT via the Alma API.
  • Show shelves location – As mentioned, APLT works on Alma Location Level and not on Shelf Level. We want to explore the possibility of pointing to the exact shelf using this application.
  • Improved map uploading for locations – Currently we have implemented a rudimentary tool to upload maps representing the locations. While it works, it can certainly be improved.


The Alma-Primo Locate Tool was developed by Giulio Menna (g.menna[ @ ], Digitale Diensten, Leiden University Libraries, Leiden University. He can be contacted for any question concerning the application functionality and implementation.

Leave a Reply