Ready to Learn?Ex Libris products all provide open APIs

Tech Blog

 

Case-insensitive identifiers and emails in Alma

Josh Weisman on September 20th, 2018

Case sensitivity in computer programs determines how fields values are treated. Case-sensitive means that the computer program only matches values with the same case (lower/upper). Case-insensitive means the program ignores case and matches values regardless of their lower or upper case letters, e.g. "My Name" = "my name"). 

Alma has always treated primary identifiers in user records as case-insensitive. So if you searched for a user with the primary ID of "jsmith", the user record whose primary ID is actually "JSmith" would be found. However, email addresses and additional identifiers were always considered case-sensitive in Alma. When searching for a value you needed to know exactly how it was stored in Alma. From the September 2018 release, two significant changes have been made.

Case-insensitive emails

Now Alma ignore case when searching for email addresses. This means that when searching for an email in Alma in lower case, as below ('josh.weisman@test.com'):

Case insensitive IDs- Find Email

We find the regardless of how the email is stored ('Josh.Weisman@test.com'):

Case insensitive IDs- Find Email Record

 

This is especially important for those who use the "Login via email" option for authentication. Now regardless of which case a user enters their email in the email field, s/he will be able to receive the magic login link to their email mailbox:

Case insensitive IDs- Login via Email

In addition, searching for a user record via the Retrieve Users API will yield results regardless of the case of the email address:

https://api-na.hosted.exlibrisgroup.com/almaws/v1/users?q=email~josh.weisman@test.com

Case-insensitive identifiers

For customers who's first test load occurred after June 2018, Alma will treat additional identifiers as case-insensitive as well. This means that when searching for a student ID which includes letters, you can search a value in any case (i.e. 'BV123456'):

Case insensitive IDs- Find ID

 

And Alma will treat the value as lowercase (i.e. 'bv123456'):

Case insensitive IDs- Find ID Record

This is helpful when searching for user records by additional identifier or when using an additional identifier to authenticate in Alma.

In addition, when searching for a user by additional identifiers using the Retrieve Users API, the record will be found regardless of the case provided:

https://api-na.hosted.exlibrisgroup.com/almaws/v1/users/BV123456

https://api-na.hosted.exlibrisgroup.com/almaws/v1/users/bv123456

 

 

This new behavior should make it easier to work with email address and additional identifiers in Alma user records.