Skip to content

Code Release: New LibCal, LibApps, LibStaffer, LibInsight and LibWizard features coming your way!

These releases are on their way to you next week, and will be live in all regions by the end of the day on Friday, May 21, 2021. Read about LibCal | LibApps | LibStaffer | LibInsight | LibWizard.


Appointment Booking Forms

Our new and improved Appointment Booking Forms are here! Our new booking forms streamline the process of setting up appointment forms across your site, and bring better consistency and flexibility for all of your appointment booking needs. Previously, each user in your site was responsible for setting up their own appointment form, and each user was limited to just one form. Now, we've turned this process on it's head - site admins can now create booking forms and apply them at multiple organizational levels, so you can now have a booking form that applies to certain categories, groups, and/or locations in your site.

Need to ask specific questions any time someone books an instruction session? No problem, our new forms have you covered - just create a custom form, apply it to the "instruction session" appointment category, and you're good to go! Need to ask specific questions any time someone books an appointment in a particular location? Easy peasy, just create your form, apply it to that location, and users will see those questions any time they book an appointment in that location.

To create new booking forms, Admins can head to Admin > Appointments > Booking Forms and create a new form. Once these have been created, you can then assign that booking form to the Appointment location, group and/or category level by heading to the relevant "edit" area (ie edit location, edit category, etc.).

But what happens if an individual user in your site wants to use a different form than the one you've specified? No worries, we've also included an individual user option to override the system-level location, group or category form with a separate form of their choosing. This option is available from our new Booking Forms page at Appointments > Booking Forms. Users can also create new booking forms from this area, so if your individual users would like to create and manage more than one personal booking form, they can create as many as they need.

When determining which form to show in both admin and public pages, we use the following hierarchy (so we will show the first form that we can find, according to the order listed below):

User Category Override > User Group Override > User Location Override > User Default (All Bookings) > Category Default > Group Default > Location Default

Good to know: As part of the transition to the new booking forms, all existing user booking forms will be assigned as a "User Default (All Bookings)" individual user override - this is to help ensure that nothing changes during the transition. In order to see your new site-wide location, group, and category forms applied, you'll need to disable these individual user overrides. To make this easier, we've include a new User Forms Overview list, which admins can view from Admin > Appointments > Booking Forms. This will show you the current user settings for all of your users, and it offers a quick way to jump to the user settings for each user so you can adjust their personal overrides as needed.

NOTE: All existing individual user booking forms will automatically migrate to the new booking form format. Migrated forms will have the booking form name 'User Default (First Name Last Name)' (but don't worry, this won't appear in public forms - this is just a reference so admins can see all of the existing forms and know what they are :). After these forms are migrated, appointment bookings will still work the way they do now, ie. nothing will change as far as the forms used for admin & public bookings. Admins can then start setting up different booking forms for Appointment Locations, Groups and/or Categories.


  • You can now set the time of day to reset the booking window limit for Seats/Spaces categories. No more waiting until midnight until the next day's worth of bookings become available! Head to Admin > Spaces & Equipment > Spaces & Categories > Edit Category > Booking Limits to set the new Rollover Time value.
  • We've added a new 'Check Out' drop-down selection to set how long after the booking end time a user is allowed to check out of a booking. Navigate to Admin > Spaces & Equipment > Edit Location > Seat Space Check In to set the Check Out value.
  • An additional check in grace period has been added if a slot is booked after the start time AND after the late cancellation window (if set).
  • Honeypot logic has been added to the public booking pages for additional security.
  • Rescheduled Appointments with a different user improvements to original booking where the details will now display in the Booking Explorer as to who the Appointment was rescheduled with in the Internal Notes column.
This image has an empty alt attribute
  • The Billing module is now available for all sites! To learn more about the Billing module, check out the following Billing FAQ Springboard.

Upcoming LibCal Training Sessions:

Check out our recorded training sessions, and don't miss the LibCal release notes on the Springshare Lounge! [Back to Top]


LibAuth Authentication User ID Attribute

In a great move for streamlining and reliability, we've added the User ID field to our LibAuth Authentication LDAP, CAS, SAML, OAuth2, SIP2, and Self-Hosted (JSON) protocols, which you can use to define your authentication system's unique User ID field. By choosing to release this information to us, this will pass the unique User ID information into Springshare's systems that support LibAuth (particularly LibCal). This reduces our reliance on user email address as the primary user identifier, and is particularly helpful in sites where users can have more than one email address.

User ID

Upcoming LibGuides Training Sessions:

Also check out our recorded sessions, and don't miss out the LibGuides release notes on the Springshare Lounge! [Back to Top]


  • We've added the ability to create a Multi-Schedule widget! You can now display multiple schedules for public viewing in a single widget, making it easy to embed information about multiple staffing calendars in an external site. Please note, widgets can display data from up to 5 schedules. Head to Admin > Widgets & API > Widgets to set up your Multi-Schedule widgets!
  • We've increased the font size when printing schedules, to help keep things legible and easy to read. To see this in action head to Schedules from the main menu, select your schedule, click on the Cog/Settings icon and select the Print Page option.
  • We've added the ability to include a visibility date range when adding a note to a schedule. When you choose to include a date range, the note you create will only display during the date(s) you indicate, which is helpful for announcements and reminders that only need to be included during a specific time period. To create a note that spans multiple days, navigate to Admin > Notes > +Create Note and set a date range.
  • We've improved the 'Given Up Shift' email to display which admin user has given up a shift on behalf of another user if the original user who was assigned the shift does not give it up themselves.

Upcoming LibStaffer Training Sessions:

Want to learn how to best use LibStaffer's features? Check out our recorded sessions, and don't miss the LibStaffer release notes on the Springshare Lounge! [Back to Top]


Time-Based Sums/Averages for Numeric Fields up to 60 Days

If your custom and shared datasets include numeric fields, good news - the time-based analysis tab can now calculate the hourly sums and averages for these fields for up to 60 days! Previously it was possible to run these averages for up to 7 days, but with this release we're expanding to support calculating averages and sums for up to 2 months. 🙂 To see this in action, head to a Custom or Shared datasets and select Analyze > Generate Report (use a date range filter up to 60 days) > Time-Based Analysis tab > Select Numeric Field + Hourly Filter and Click "Draw Chart"

Time-Based Hourly Average

Upcoming LibInsight Training Sessions:

Check out the LibInsight release notes on the Springshare Lounge! [Back to Top]


Updates on Post-Submission

This long standing Post-Submission feature was actually "posting" results using the GET method rather than the POST method. We have updated this feature to finally use the correct POST method. We've also removed the following POST Formats: Key-value pairs and Comma separated values (CSV). Submissions are now posted using the default JSON object format.

post results to

[Back to Top]

That's it for this round of updates from Springy HQ. We would like to thank you, our user community, for sharing all your great ideas with us! We love making them a reality and look forward to bringing you many more improvements in 2021. We are always here for you if have any suggestions or questions.

5 thoughts on “Code Release: New LibCal, LibApps, LibStaffer, LibInsight and LibWizard features coming your way!”

  1. Could you elaborate on this new LibAuth Authentication User ID Attribute feature? For example could public libraries use a LibAuth/SIP2 connection’s User ID Attribute to use say patron record number or library card number as the borrower limits in LibCal instead of the email address? The current case us problem is for families that share the same email address it would be great to follow the borrowing limits to the specific patron.

    1. Hi Jennifer,

      If you map the User ID Attribute to record this value for bookings, the limits will consider the User ID as what to check against for any restrictions that are in place. Right now, as things stand (since this mapping was/is not available), we write the email address to the accountID field in our database which is the one that gets checked for limits. So, this should resolve the problem where families share the same email address and give you the flexibility to have the limits apply to each individual patron. You will want to however figure out the best time to start mapping this field (weekly limits are counted from Sunday-Saturday). Hope this helps and please let me know if you have any additional questions (or if this did not fully answer your question). Thanks Jennifer!


    1. Hi Brendon,

      Excellent! Thanks for the feedback and glad to hear that this will help resolve a sticking point with Appointments. Please feel free to share any feedback after this feature is released for any further potential improvements to the new booking forms management for Appointments.



  2. I just wanted to affirm the addition of the User ID attribute in LibAuth authentication as a step in the right direction. I would like to see this attribute as an optional primary login for staff accounts instead of an email address.

    As one of those institutions with staff having multiple email addresses, I can say that the one returned by our CAS isn’t always preferable. Having a login name (i.e. username) independent from email would allow greater account stability and notification flexibility. [I’m specifically thinking about the possibility for an account holder to input their preferred email address to route notifications.]


Leave a Reply

Your email address will not be published. Required fields are marked *

Confirm you aren't spamming: * Time limit is exhausted. Please reload the CAPTCHA.