# IUG 2026 Conference Notes > https://rayvoelker.github.io/iug2026-shared Conference knowledge base with session notes, technical guides, and speaker data. ## Pages - [IUG 2026 Conference Notes](index.html): Notes from the Innovative Users Group 2026 conference in Chicago — 412 attendees, 4 days, 5 tracks covering Sierra, Polaris, and Vega platforms. - [Speaker Cards](speakers.html): IUG conference speaker cards — presentation history, stats, and personality across all IUG years. ## Day Overviews - [Sunday, April 12](sunday.html): Pre-conference day: The Great ILS-Data Pre-Conference, Hackathon, Vega LX Academy, and Welcome Reception at Chicago Marriott. - [Monday, April 13](monday.html): Opening session highlights: Beacon Award, Responsible AI Framework, Innovation Awards, Sierra roadmap, hackathon awards, and IUG 2027 Boston announcement. - [Tuesday, April 14](tuesday.html): Breakout sessions across General, Sierra, Polaris, and Vega tracks: SQL/Python automation, floating collections, Sierra Year in Review, and Vega Reports. - [Wednesday, April 15](wednesday.html): Final day: Executive Leadership Panel, Lightning Rounds, forums (Acquisitions, Consortia, Public Services, System Admin), API onboarding, and Trivia Night. ## Sessions - [Amazon Business EDI Integration](amazon-business.html): Amazon Business EDI integration with Sierra — Cincinnati Public Library as early adopter, implementation strategy and best practices for acquisitions workflows. [monday] - [IUG 2026 Hackathon Awards](hackathon-awards.html): Six hackathon projects solving real library problems: FindIt, Browsr, Shelf Defense (winner), Leap SQL, Auto-Suggest-a-Purchase, and Microprojects. [monday] - [Sierra Roadmap](sierra-roadmap.html): 3-year Sierra roadmap: 22 releases, 98 new features. May and November 2026 releases, Admin Corner migration, ERM to Alma Starter transition, and API expansions. [monday] - [AI The Right Way: Smarter Tools, Stronger Outcomes](ai-the-right-way.html): Clarivate's Responsible AI framework (Transparent, Ethical, Safe), product roadmap (Data Explorer, Metadata Assistant, Acquisitions Agent), Pulse of the Library 2025 data, and audience Q&A. [tuesday] - [How Could New Analytics Tools Help Multi-Branch Sierra Systems with Floating Collections?](floating-collections-bof.html): Roundtable on floating collections in multi-branch Sierra systems: analytics gaps, bulk hold workflows via API, smart routing at check-in, and Vega Reports potential. [tuesday] - [MEEP (Member-Exclusive Enhancement Process)](meep.html): How IUG members vote on product enhancements: Idea Exchange submissions, working group review, point sizing, ranked-choice elections, and guaranteed 12-month delivery. [tuesday] - [Resource Sharing Update](resource-sharing.html): Rapido resource sharing: consortial borrowing across SearchOhio/OhioLINK (110+ libraries), Rapido stand-alone for academics (5.5M requests, 96% fill rate). [tuesday] - [Sierra Year in Review](sierra-year-in-review.html): Sierra 6.4 and 6.5 release highlights: patron checkout limits, inventory check-in at circulation, Admin Corner migration, Create Lists navigation, and IMMS enhancements. [tuesday] - [Vega Reports for Discover and Beyond](vega-reports.html): Jovana Raskovic introduces Vega Reports: a unified BI platform powered by Metabase for Discover, Polaris, and Sierra. Covers dashboards, custom SQL queries, OverDrive integration, Metabot AI proof of concept, and the 2026 rollout roadmap. [tuesday] - [Cloudflare Protection for Sierra ILS](cloudflare-sierra-guide.html): Practical guide for library sys admins on putting Sierra's web OPAC behind Cloudflare: what works, what breaks, and what to watch out for. [wednesday] - [Executive Leadership Panel](executive-panel.html): Open Q&A with Clarivate executive leadership on Sierra's future, Vega platform strategy, public library headwinds, AI investments, mobile apps, and improved communication with the customer community. [wednesday] - [Kicking the Elephant out of the Room: Cataloging without OCLC](cataloging-without-oclc.html): How an 11-library Polaris consortium in Idaho left OCLC, transitioned through BTCat, and landed on BookWhere Suite — dropping cataloging costs from six figures to five. [wednesday] - [Sierra SSO Technical Implementation Guide](sierra-sso-guide.html): Technical deep-dive on SAML SSO for Sierra staff authentication: protocol fundamentals, IdP setup, Sierra configuration, Keycloak, SCIM provisioning, MFA, passwordless auth, conditional access, and SAML debugging. [wednesday] - [Sierra Staff and Single Sign-On](sierra-sso.html): Session recap from IUG 2026: implementing SAML SSO for Sierra staff and patron authentication, MFA practices, shared accounts, identity providers, and Keycloak as a potential unified identity layer. [wednesday] - [Sierra Sys Admin Forum](sierra-sys-admin-forum.html): Open forum for Sierra system administrators covering migration considerations, bot protection, paging lists, accessibility, SDA vs. Sierra Web, and more. [wednesday] ## Guides - [About This Site](about.html): About the IUG 2026 conference notes site — who built it, how it works, and what it contains. - [Suggest-a-Purchase](suggest-a-purchase.html): Comparing two patron purchase suggestion systems: Jacksonville's Auto-Suggest-a-Purchase (Polaris) vs. chimpy-me (Sierra, Datasette-based evidence extraction). ## Structured Data - [speakers.json](speakers-data.json): Full speaker database with session history ## Corrections & Contributions Found an error or want to suggest a correction? - **File an issue:** https://github.com/rayvoelker/iug2026-shared/issues/new?title=Correction&body=Page:%20(which%20page)%0A%0ACorrection:%20(describe%20the%20issue) - **Browse open issues:** https://github.com/rayvoelker/iug2026-shared/issues - **Submit a pull request:** Fork https://github.com/rayvoelker/iug2026-shared, edit the relevant markdown file in `content/`, and open a PR. Content source files are markdown with YAML frontmatter in the `content/` directory. --- # About This Site URL: about.html Description: About the IUG 2026 conference notes site — who built it, how it works, and what it contains.
Ray Voelker is a library technology professional and IUG conference attendee. He works with Sierra ILS, library data systems, and open-source tools like Datasette. You can find him on GitHub at @rayvoelker, or reach him at ray.voelker@gmail.com / ray.voelker@chpl.org.
At IUG 2026, Ray presented two talks at the Great ILS-Data Pre-Conference: Datasette at the Library and Building a Data Lake.
Detailed notes from 15+ sessions across all four days — keynotes, breakout sessions, forums, and birds-of-a-feather discussions covering Sierra, Polaris, Vega, and cross-platform topics.
Deep-dive reference guides written up from session content — including a Cloudflare protection guide for Sierra, an SSO implementation guide, and a Suggest-a-Purchase comparison.
A gallery of 150 speakers with session history, stats, and rarity tiers spanning multiple IUG years.
Auto-generated llms.txt and llms-full.txt files so AI agents can navigate and understand the site content.
A Python static site generator: 22 markdown+frontmatter content files, 6 Jinja2 templates, a ~350-line build script, and a YAML site config. Content is the source of truth; presentation is separated into templates and CSS.
Speaker data was scraped from sched.com, parsed, enriched with rarity tiers and session history, and merged with hand-edited fields (quotes, affiliations). The result is a 150-speaker JSON database that powers the speaker cards gallery.
The build script outputs static HTML to a docs/ directory, served by GitHub Pages. A dev server with file watching supports live editing.
A pytest test suite verifies build completeness, catches HTML rendering issues, detects duplicate content, and validates all inter-page links and speaker references.
The source code is open: github.com/rayvoelker/iug2026-shared. Corrections and contributions welcome — file an issue or open a PR.
Ashley Barey presented Clarivate’s approach to AI across the Innovative product suite — the Responsible AI framework (Transparent, Ethical, Safe), current and upcoming AI capabilities, and data from the 2025 Pulse of the Library survey.
Ashley opened by challenging the common comparison of AI to cloud computing or Google search, arguing that AI is fundamentally different in three ways:
A bad Google search just returns wrong results — you can tell. A bad AI output can come across as very convincing and fluent. Not knowing whether the AI is wrong is the real danger.
AI reasons, makes decisions, and builds on prior context — it’s not just infrastructure and retrieval. Google search doesn’t assume anything; AI is asking and answering questions.
AI raises all the prior concerns (antitrust, privacy) plus new ones: bias, autonomy, misinformation at scale, and existential risks.
Ashley referenced jobs and AI displacement — reskilling and job transformation, not wholesale replacement. 📎
Ashley showed a slide of book covers and made the point that our collective perception of AI is deeply shaped by fiction — from Samuel Butler’s Erewhon, to Asimov’s Three Laws of Robotics, to Arthur C. Clarke’s HAL 9000, to The Terminator. 📎
“Your patrons have been watching all of that too. They don’t know how to interpret AI. Libraries are the best civic hub — the place to go to get good information, to use those trusted advisors for teaching and leadership.”
Data from the Clarivate Pulse of the Library 2025 survey (2,000+ librarians across 109 countries; 400+ public library responses). 📎
“Where does the information go?” — the top concern across public libraries. Use of public LLMs with library data is a governance issue.
Came up at PLA from 3 different customers, largely in areas where data centers are being built. Ashley offered a counterpoint: data centers were already being built during the Big Data era, and AI may actually help reduce environmental impact through efficiencies (e.g., supply chain emissions reduction via prescriptive analytics).
All current Clarivate AI features (Data Explorer, Metadata Assistant, etc.) are included under existing licenses — no extra cost. Ashley acknowledged this is a “golden age” of cost vs. value.
Key quote from survey: “Getting beyond initial exploration and into problem solving with AI will therefore be essential to libraries taking a positive long term strategic approach.”
Libraries that have identified someone to champion AI — making decisions, setting guidelines, working on policy — are seeing more successful adoption.
Clarivate has invested heavily in internal AI training over the past year. Libraries seeing success are doing the same — upskilling staff to understand business problems and apply tools effectively.
Don’t dive in with scattershot AI adoption. Understand your business problems first, then run focused proof of concepts. It’s OK if a POC isn’t successful — that’s the point.
Clear indication of AI features. Clear information about what data is used and how. Data is not stored with AI agents.
AI with a purpose — solving real problems, not playing around. Measures to reduce bad information. Collaboration with industry organizations and the Customer Advisory Board on responsible AI implementations.
Human in the loop. Uphold privacy & security standards. Adherence to evolving global regulations. Referenced the NIST AI Risk Management Framework. 📎
Launching in the latter half of 2026. Clarivate’s academic side already has an AI Advisory Board; the public board follows that model.
AI-assisted content generation for newsletters and community outreach. On-demand AI image generation.
AI-enhanced web experiences (available as an option).
Generate SQL via natural language search. Early access coming by end of year.
Generates MARC suggestions, saving libraries 20–180 minutes per record.
Conversational AI for reporting and analytics. Supports AI for Polaris and Sierra as well.
Showcase generation. Natural Language Search and Chat POCs.
Handles purchasing and invoicing workflows.
Clarivate’s academic side is ahead on AI adoption, and the public side benefits from their learnings. Key product:
Nexus — a browser extension that works inside ChatGPT, Claude, and Gemini. Scans AI responses for scholarly references and verifies them against Web of Science, ProQuest, and Primo/Summon. 📎
Audience member commented on the value of achieving a failure state quickly — it’s much quicker to develop and test ideas with AI. “What didn’t work is sometimes a lot more valuable than anything else.” Ashley agreed and noted AI is also excellent for problem refinement: “Here is the problem I’m having — what are the data points or KPIs I need?”
Question raised about a “bring your own agent” model — making catalogs more agent-friendly rather than having agents scrape them in uncontrolled ways. Ashley acknowledged this is a security concern: “These things are so hungry for data, and your catalog is an obvious source.” Need guardrails to prevent agents from bringing down existing infrastructure.
Will AI features eventually cost extra? Ashley: “We’re in a golden age of cost vs. value.” AI providers are already “turning up the dial.” Current features won’t have added costs, but more advanced capabilities may. “We’re very hesitant in the environment we find ourselves in.”
Holbrook Sample — CTLO, Public Library of Cincinnati and Hamilton County (CHPL)
Moses Lai — Sr. Technical Product Manager, Amazon
Order books from Amazon Business, download brief MARC records with order info, load into the ILS. EDI is the backbone.
Amazon's "grid" technology lets libraries add structured metadata — fund codes, locations, processing instructions — to orders before they flow into EDI.
Sierra acquisitions API is being developed on the III side to support this integration.
Amazon has had procurement tools broadly, but has been focused on libraries for less than 1 year.
MARC record quality has been improved. More features coming. Looking for additional partnerships.
Positions Amazon as a primary materials vendor (competing with B&T), not just a la carte.
Patron-driven acquisitions mentioned as a future possibility.
Acquisitions/selection experts on CHPL staff. Early meetings included cataloging, processing, fiscal office, MSA, and cataloging teams.
Outsource MARC records (brief records from Amazon supplemented).
Launched mid-April 2026.
Half the budget goes to physical materials. Purchase order driven workflow. EDI enforces the structure — the more methodical the work, the better.
Selectors still use Library Hub for pre-pub work. Currently working out fund mapping between Amazon and ILS.
Aligning Amazon Business tools with existing workflows was essential.
How an 11-library Polaris consortium in Idaho walked away from a six-figure OCLC contract, survived the collapse of BTCat when Baker & Taylor filed for bankruptcy, and landed on BookWhere Suite — a Z39.50 copy cataloging client that dropped their total cataloging costs to five figures. A candid, at times fiery session covering the practical realities of cataloging without OCLC: ILL trade-offs, staff retraining, record quality, macro limitations, and the legal flashpoint of OCLC record ownership.
Elaine’s consortium of 11 Polaris libraries in Idaho was paying six figures annually to OCLC. The cost was the primary motivation to leave. Their state does not have a statewide library lending service, which simplified the ILL question.
ILL was the biggest hurdle. The consortium libraries performed cost analyses and found that the number of patrons who actually used ILL was a much smaller portion of the cardholder base than expected. Most libraries in the consortium made the controversial decision to discontinue ILL entirely.
One library took a creative approach: instead of paying $5+ each way to mail items, they redirected their ILL budget into purchasing items directly — still serving those patrons, just buying the $20 book rather than spending $10+ to borrow it.
The consortium also has courier routes between all 11 libraries, so members can still borrow from each other without OCLC. The few libraries that kept ILL service search the online WorldCat database and send requests directly to holding libraries.
Once ILL was off the table, leaving OCLC became much easier.
| Date | Event |
|---|---|
| June 2025 | OCLC contract ended; switched to BTCat (Baker & Taylor) |
| Oct 2025 | Baker & Taylor announced cessation of library services operations |
| Nov 2025 | ~1 month to evaluate alternatives (SkyRiver, BestMARC, BookWhere) |
| Dec 2025 | Went live on BookWhere Suite |
| Mar 2026 | Baker & Taylor filed Chapter 11 bankruptcy |
BTCat had incredible macro functionality with conditional statements — something no other vendor has replicated. The consortium only used BTCat for about six months before Baker & Taylor shut down. The loss was clearly felt: “All right, baby cat” — an affectionate play on “BTCat.”
From the research that Elaine’s consortium did, no other vendor offers customizable macros the way BTCat did. It remains the feature they miss the most.
With roughly one month to decide, the consortium evaluated three products:
A web-based product. The consortium administrator preferred this option, but when staff tested it, they “kind of hated it” — they found it clunky, hard to use, and the hit rate wasn’t great. Most staff were still accustomed to client-based interfaces (Connexion, BTCat), so the web-based approach didn’t resonate.
SkyRiver hadn’t been actively selling until BTCat announced discontinuation. Its interface looks and acts like Connexion client, which was a point in its favor. However, several issues emerged:
BookWhere Suite had the best hit rate of anything tested — the speaker thinks it’s actually better than BTCat. Its client-based interface was familiar to staff who were already using Polaris client rather than Leap. And with Z39.50 access to thousands of libraries, it offered far more variety of records than SkyRiver’s limited pool.
BookWhere connects to approximately 2,400 libraries over Z39.50 (the vendor advertises 3,000+ targets in their current marketing). Searching all 2,400 at once is impractical — too many hits, too slow. Instead, the consortium created curated database groups:
The search interface “looks like it’s from the 1990s” — not pretty, but it works. You can search by virtually any MARC field, which is both extensive and daunting.
BookWhere ranks search results by RDA score and MARC 21 score, displayed as colored boxes alongside a numerical ranking. The consortium guideline is to choose records scoring 50 or above when possible. This was similar to BTCat’s ranking system, which eased the staff transition.
BookWhere Suite does have macros, but they lack conditional statements — the key feature that made BTCat’s macros special. BookWhere macros are basic “remove this” / “add this” operations, with notable limitations:
Coming from BTCat’s conditional macros, this was the most painful part of the transition.
The built-in editor is “as utilitarian as it gets.” It works, but editing leader fields is a nightmare — there are no positional guides, so it’s very easy to get a space in the wrong place and throw everything off. The recommendation is to export records into Polaris for leader editing, where the positional guides make it much clearer.
On the plus side, you can open multiple records simultaneously in the editor, drag-and-drop fields between them, and do comparison work. This is particularly useful for copy catalogers piecing together records.
Configuration is stored in XML files that can be distributed to workstations — staff drops them into a folder. It’s not as seamless as web-based administration, but at least each user doesn’t have to change individual settings. Managing this across ~50 workstations in a consortium is painful but workable.
Licensing requires a per-PC key that must be deactivated and reactivated when hardware is replaced. Individual licenses run in the hundreds of dollars; site licenses in the thousands. The total consortium cost dropped from six figures (OCLC) to five figures — significant savings.
BookWhere Online (the web version) is a completely different product from the Suite — less functionality, no macros, different interface. The speaker was emphatic: “the online version is truly awful.” Crowdsourced advice from catalogers on Facebook confirmed this. If you’re evaluating BookWhere, look at the Suite first.
BookWhere has not been sued by OCLC despite being in business for 25+ years. Their strategy, whether intentional or not, is legally sound: they save nothing and have no record repository. They only facilitate Z39.50 connections between libraries. BTCat, by contrast, had its own “community records” database, which contributed to OCLC’s case against them. BookWhere’s position: “there’s nothing to sue.”
The speaker noted that OCLC record quality has gone down, particularly in the last five years. Because of this, the additional vetting required when using BookWhere isn’t as dramatic a change as it would have been a decade ago.
One practical issue: records retrieved via Z39.50 include more localized fields that OCLC and BTCat used to strip out automatically. The consortium had to beef up their Polaris import profiles to handle fields they “never would have expected to come in.”
The speaker does original cataloging in BookWhere’s MARC Notepad editor, piecing records together. Others in the consortium do it directly in Polaris.
The downside is clear: original records stay local. You can’t share them back to WorldCat the way you could with Connexion. “That was a bummer for me for leaving OCLC,” the speaker acknowledged.
The upside: anyone with your Z39.50 connection open can access your records. “Bibliographic data is not proprietary and should be shared,” the speaker said — a philosophy that informs their willingness to leave their Z39.50 server open for other libraries.
This was the most heated part of the session.
When using BTCat, the consortium ran a macro to remove 035 fields containing OCLC numbers before importing records. After switching to BookWhere, they didn’t remove existing OCLC numbers from their catalog — “maybe we should have.”
The speaker asked Marshall Breeding on Monday (at the conference) about this. His assessment: even removing OCLC numbers wouldn’t matter because the records are still “marked as proprietary.”
The speaker’s response, on the record. She expects the consortium may receive a cease-and-desist at some point, and expressed concern that individual libraries don’t have the resources to fight OCLC in court. OCLC has already prevailed against BTCat and MetaDoor.
Her position: “For people that have stopped using OCLC, those records really don’t belong to them. We should still be able to share them, no matter what OCLC says.”
An audience member suggested starting an alternative: “NOclc” — which got a good laugh.
Loss of familiarity. Staff had been on OCLC for 20+ years and had never used anything else. The other hurdle was retraining staff to evaluate bibliographic record content holistically — many had relied on the presence of an OCLC number as a proxy for quality, which “obviously wasn’t always the case.”
Staff time has gone up overall. It increased when they moved to BTCat (new system) and again when they moved to BookWhere (different system + more careful record evaluation). However, staff actually settled into BookWhere faster than BTCat, likely because the client-based interface felt familiar.
Not exactly. The macros only do basic add/remove operations, and you have to enter remove commands multiple times per field. It’s not a true import profile in the OCLC sense.
The speaker’s library uses Collection Manager for their O’Reilly database — it’s part of the O’Reilly subscription, separate from OCLC, so it still works. “OCLC doesn’t love it because they’re losing part of your subscription, but it is possible.”
The consortium uses Backstage Library Works and has for years — that didn’t change when they left OCLC. “If any of you need authority work, check out Backstage. They’re the best.”
Occasional individual library connections go down, but with thousands of alternatives, it’s never been a real issue. However, setting up client-to-client connections across a consortium can be an IT nightmare — non-standard ports, firewall rules that need to be configured per library. The speaker’s assistant administrator Brad managed this across the 11 organizations.
The consortium looked at MarcEdit but decided it was too complicated for copy catalogers, especially given their tight evaluation timeframe. An audience member noted that Polaris’s built-in Z39.50 client is another option, but the speaker didn’t like that records save immediately to the system with no staging area.
No. BookWhere is purely a connection service — “they don’t offer full cataloging. They are just a connection service.”
Audience discussion: Amazon vendor records “have gotten progressively better, and they’ve gotten better faster than I ever expected.” But the consensus was they’re still poor quality — an audience member’s description was more colorful.
An academic library commenter expressed significant frustration with OCLC: turnaround time on paperwork is “abysmal” (5+ weeks), their county council red-lined OCLC contract terms, and OCLC refused to negotiate. The commenter questioned why they even maintain a contract.
Additional context gathered during the session to supplement the speaker’s presentation.
A comprehensive guide to putting Sierra’s web OPAC behind Cloudflare: what works, what breaks, and what to watch out for. Compiled from the IUG 2026 Sys Admin Forum discussion and follow-up research.
AI bot scraping became a serious problem for libraries starting in late 2024. The scale is unprecedented.
Bots don’t identify themselves as GPTBot/GoogleBot/BingBot, they ignore robots.txt, they use residential proxies, and they crawl at rates that overwhelm library infrastructure not designed for that load.
Bottom line: Any library running a public-facing OPAC or catalog is a target. Sierra WebPAC is no exception.
Cloudflare acts as a reverse proxy. All HTTP/HTTPS traffic to your OPAC domain flows through Cloudflare’s network before reaching your Sierra server. This gives Cloudflare the ability to:
Cloudflare’s standard proxy only handles HTTP/HTTPS traffic on specific ports. It does not protect:
Cloudflare-supported HTTP ports: 80, 8080, 8880, 2052, 2082, 2086, 2095
Cloudflare-supported HTTPS ports: 443, 2053, 2083, 2087, 2096, 8443
Note: Sierra’s WebPAC staging server runs on port 2082, which happens to be a Cloudflare-supported HTTP port. The live WebPAC typically runs on port 80/443.
For non-HTTP protocols on arbitrary ports, Cloudflare Spectrum (Enterprise only) can proxy TCP/UDP traffic. This is the only way to protect Z39.50 or SIP2 through Cloudflare — and it requires an Enterprise plan.
| Deployment | Cloudflare Setup |
|---|---|
| Self-hosted / on-premise | Full control — point DNS to Cloudflare, configure as needed |
| III cloud-hosted | May need to coordinate with III — you may not control DNS or the web server directly |
| Vega Discover (SaaS) | Likely already behind III’s own CDN/WAF — limited customization |
Critical: Only proxy the web OPAC record. Leave other records as DNS-only (gray cloud) for:
Set encryption mode to Full (Strict). This encrypts traffic both:
Recommendation: Use a Cloudflare Origin CA cert if you’re committed to keeping all traffic through Cloudflare. Use Let’s Encrypt if you want flexibility to bypass Cloudflare temporarily for troubleshooting.
Never use “Flexible” SSL mode — this leaves the Cloudflare-to-origin connection unencrypted, which is a security risk, especially for patron login traffic.
When Sierra sits behind Cloudflare, all requests appear to come from Cloudflare’s IP addresses. You need to restore the real visitor IP for:
Cloudflare sends the real IP in the CF-Connecting-IP header and also appends to X-Forwarded-For. Configure your web server (Apache/Nginx in front of Sierra) to trust these headers from Cloudflare’s IP ranges.
| Path Pattern | Function | Sensitivity |
|---|---|---|
/ |
Main menu, resets session | Public |
/search/... |
Catalog search (by index) | Public, high traffic |
/patroninfo/... |
Patron account (My Account) | Authenticated — protect |
/record/... |
Individual bib/item records | Public |
/xrecord/... |
XML record export | Public but abusable |
/iii/sierra-api/... |
REST API (v5/v6) | Authenticated — protect |
/screens/... |
WebPAC template files | Static assets |
Action: Managed Challenge
(http.request.uri.path contains "/patroninfo" and not cf.bot_management.verified_bot)
Action: Block
(http.request.uri.path contains "/iii/sierra-api" and not ip.src in {YOUR_TRUSTED_IPS})
Action: Block
(http.request.uri.path contains "/search" and (http.user_agent contains "python" or http.user_agent contains "curl" or http.user_agent contains "wget" or http.user_agent contains "scrapy") and not cf.bot_management.verified_bot)
Action: Managed Challenge
(http.request.uri.path contains "/xrecord" and not ip.src in {OCLC_IPS DISCOVERY_IPS})
| Feature | Free | Pro (~$20–25/mo) | Business (~$200–250/mo) | Enterprise |
|---|---|---|---|---|
| Bot Fight Mode | Basic | — | — | — |
| Super Bot Fight Mode | — | Yes | Yes | — |
| Bot Management (full) | — | — | — | Yes |
| Verified bot allowlist | — | Yes | Yes | Yes |
| Bot score analytics | — | Yes | Yes | Yes |
| AI Scrapers one-click block | Yes | Yes | Yes | Yes |
Navigate to Security → Bots and enable “AI Scrapers and Crawlers” toggle. This blocks known AI crawlers (GPTBot, CCBot, etc.) and is updated by Cloudflare as new bot signatures are identified. Available on all plans including free.
As of July 2025, Cloudflare blocks AI crawlers by default for new zones.
Cloudflare maintains a verified bots directory of known good bots (Googlebot, Bingbot, etc.) verified via reverse DNS. The concern for libraries is that library-specific bots are generally NOT on this list.
| Service | Bot Behavior | On Cloudflare Verified List? | Mitigation |
|---|---|---|---|
| Googlebot | Crawls OPAC for search indexing | Yes | Auto-allowed |
| Bingbot | Same | Yes | Auto-allowed |
| OCLC WorldCat harvesting | Harvests MARC records | Unlikely | Allowlist by IP |
| EBSCO EDS connector | Queries OPAC for discovery | No | Allowlist by IP |
| Ex Libris Primo/Summon | Queries OPAC for discovery | No | Allowlist by IP |
| EZproxy | Proxies patron requests | No | Allowlist by IP |
| Link resolvers (SFX, 360 Link) | Checks availability | No | Allowlist by IP |
| Google Scholar | Crawls for academic citations | Check verified list | Usually verified |
OCLC explicitly documents this: “You can use Cloudflare with EZproxy. Make sure you list your on-campus IP addresses, EZproxy Server IP address, and EZproxy name with Cloudflare.” If you don’t allowlist your EZproxy server IP, Cloudflare will challenge EZproxy traffic and potentially block patron access to the catalog from off-campus.
Create a WAF rule:
(ip.src in {EZPROXY_IP ON_CAMPUS_RANGES OCLC_IPS DISCOVERY_LAYER_IPS})
Action: Skip (all remaining rules)
Place this rule first in your rule order so trusted traffic bypasses all challenges.
Sierra serves a mix of public catalog pages and authenticated patron content. The caching strategy must be careful.
| Content Type | Cache? | Notes |
|---|---|---|
| Static assets (CSS, JS, images) | Yes | Long TTL (1 day+) |
/screens/... template files |
Yes | WebPAC templates |
Catalog search results /search/... |
Maybe | Short TTL (5 min) if desired, but dynamic content — test carefully |
Individual bib records /record/... |
Maybe | Short TTL, but patron-specific elements may appear |
/patroninfo/... |
NEVER | Authenticated patron data |
/iii/sierra-api/... |
NEVER | API responses with patron PII |
| MARC downloads | No | Dynamic, binary content |
Match: URI path contains /patroninfo OR URI path contains /sierra-api
Setting: Bypass Cache
Match: Cookie contains III_SESSION (or your Sierra session cookie name)
Setting: Bypass Cache
Note: “Bypass Cache on Cookie” requires a Business plan or a Cloudflare Worker on lower plans.
Match: URI path contains /screens/ OR file extension in {css js png jpg gif ico svg woff woff2}
Setting: Cache Everything, Edge TTL 1 day, Browser TTL 4 hours
By default, Cloudflare only caches static file extensions (images, CSS, JS, fonts). It does not cache HTML pages unless you explicitly tell it to. This is actually a safe default for Sierra — it means patron pages won’t be accidentally cached.
Rate limiting rules are available on all plans (IP-based). Advanced grouping by cookie/header/ASN requires Business+. Here are sensible defaults for a library OPAC.
(http.request.uri.path contains "/patroninfo" and http.request.method eq "POST")
Characteristics: IP · Period: 1 minute · Requests: 5 · Action: Managed Challenge · Duration: 15 minutes
Mirrors Cloudflare’s built-in “Protect My Login” pattern: 5 attempts per minute, then challenge for 15 minutes.
(http.request.uri.path contains "/search")
Characteristics: IP · Period: 1 minute · Requests: 30 · Action: Managed Challenge · Duration: 10 minutes
A human doing catalog searches will rarely exceed 30 per minute. A scraper will hit this quickly.
(http.request.uri.path contains "/iii/sierra-api")
Characteristics: IP · Period: 1 minute · Requests: 60 · Action: Block · Duration: 10 minutes
(http.request.uri.path ne "/")
Characteristics: IP · Period: 10 seconds · Requests: 50 · Action: Managed Challenge · Duration: 10 minutes
Any single IP making 50+ requests in 10 seconds is almost certainly not a human.
Important: Rate limiting counters may have a delay of a few seconds. Don’t rely on rate limiting for precise request counts — it’s a backstop, not a metering system.
Cloudflare is migrating from legacy Page Rules to the newer Rules products (Cache Rules, Configuration Rules, Transform Rules, Origin Rules, Redirect Rules). Use the new system if available.
Match: URI path contains /patroninfo
Setting: Security Level = High
Sets a higher threshold for challenges on authenticated pages.
Match: scheme eq "http"
Action: Redirect to HTTPS (301)
All OPAC traffic should be HTTPS, especially patron login.
Present a library-branded error page instead of Cloudflare’s generic challenge page. This reduces patron confusion when they encounter a bot challenge.
Match: URI path contains /iii/sierra-api
Settings: Disable Performance, Disable Apps, Disable Minification
API responses should not be modified by Cloudflare’s optimization features.
Sierra WebPAC uses cookies for session management, falling back to IP-based sessions if cookies aren’t available. Behind Cloudflare:
__cflb for load balancing, __cf_bm for bot management, cf_clearance for challenge bypass). These should not conflict with Sierra’s session cookies but increase cookie header size.Cloudflare’s proxy cannot handle Z39.50. It’s not HTTP. Options:
Same situation as Z39.50 — SIP2 is a raw TCP protocol. Self-checkout machines, automated materials handling, and other SIP2 clients must connect to a DNS-only record or directly to the server IP.
The Sierra API (v5/v6) runs over HTTPS, so it can go through Cloudflare. However:
X-Forwarded-For issues — if your API implementation uses client IP for anything, ensure you’re reading CF-Connecting-IPMARC downloads from the OPAC (.mrc binary files) should work through Cloudflare, but:
Cloudflare’s Managed Challenges and JS Challenges require a browser environment to solve. Any service that accesses your OPAC without a full browser will fail:
You must allowlist these services by IP before enabling aggressive bot protection.
Sierra’s staging WebPAC runs on port 2082. This is a Cloudflare-supported HTTP port, so it could be proxied. However, you probably want to keep staging access restricted — either leave it DNS-only or add a WAF rule blocking external access to port 2082.
If you’re running Encore or Vega Discover in addition to WebPAC:
| Feature | Free | Pro (~$20–25/mo) | Business (~$200–250/mo) | Enterprise |
|---|---|---|---|---|
| DDoS protection | Unmetered | Unmetered | Unmetered | Unmetered |
| SSL/TLS (Universal) | Yes | Yes | Yes | Yes |
| AI Scraper blocking (1-click) | Yes | Yes | Yes | Yes |
| Bot Fight Mode | Basic | Super Bot Fight Mode | Super Bot Fight Mode | Full Bot Management |
| WAF custom rules | 5 | 20 | 100 | 1000 |
| WAF managed rules (free ruleset) | Yes | Yes | Yes | Yes |
| OWASP Core Ruleset | No | Yes | Yes | Yes |
| Rate limiting (IP-based) | Yes | Yes | Yes | Yes |
| Rate limiting (advanced grouping) | No | No | Yes | Yes |
| Bypass cache on cookie | No | No | Yes | Yes |
| Custom error pages | No | No | Yes | Yes |
| Spectrum (non-HTTP proxy) | No | No | No | Yes |
| Bot score analytics | No | Yes | Yes | Yes |
Free tier gives you DDoS protection, basic bot fighting, AI scraper blocking, 5 WAF rules, and rate limiting. This is already a massive improvement over no protection.
Pro (~$20–25/mo) adds OWASP rules, 20 WAF rules, Super Bot Fight Mode with verified bot allowlisting, and bot analytics. Best value for most Sierra installations.
Business (~$200–250/mo) adds bypass-cache-on-cookie (important for patron sessions), 100 WAF rules, advanced rate limiting, and custom error pages.
Enterprise if you need Spectrum for Z39.50/SIP2 protection or full Bot Management with bot score granularity.
Cloudflare’s Project Galileo provides Business and Enterprise-tier features for free to qualifying organizations facing cyber threats. Participants get Bot Management, AI Crawl Control, and Zero Trust security products at no cost. It’s designed for journalism, human rights, and civil society groups. Public libraries may qualify depending on circumstances — worth applying if your library has been targeted by attacks.
This was discussed at the IUG 2026 Sys Admin Forum. Jeff reported his library uses F5 with fail2ban and has “had good luck.” Here’s how the approaches compare.
| Aspect | Cloudflare | F5 + fail2ban |
|---|---|---|
| Cost | Free tier available; Pro ~$20–25/mo | F5 hardware: $10K–$100K+; fail2ban: free |
| Setup complexity | DNS change + dashboard config | Network appliance + Linux server + custom filters |
| DDoS protection | Absorbs at edge (Cloudflare network) | Limited to your bandwidth/hardware |
| Bot intelligence | Global threat data, ML models, verified bot list | Pattern matching on your logs only |
| AI scraper blocking | One-click, continuously updated signatures | Manual rules, you maintain signatures |
| Rate limiting | Built-in, configurable per path | Custom fail2ban jails per log pattern |
| WAF rules | Managed rulesets + custom rules | F5 ASM (separate license) or manual |
| Handles distributed bots | Yes (global anycast network) | Poorly (each IP seen briefly, jail never triggers) |
| Non-HTTP protocols | No (unless Enterprise Spectrum) | Yes (F5 handles any TCP/UDP) |
| Latency | Adds ~1–5ms (edge PoP nearby) | Depends on network topology |
| Maintenance | Cloudflare updates rules/signatures | You maintain fail2ban filters and F5 configs |
| fail2ban + Cloudflare | Can combine: fail2ban triggers Cloudflare API to block IPs at edge | N/A |
The AI bot problem is distributed — bots use thousands of residential proxy IPs, each making only a few requests. fail2ban’s strength is banning IPs that show repeated bad behavior, but if each IP only makes 5 requests before rotating, the jail threshold is never reached.
Cloudflare’s ML-based bot detection looks at behavioral signals beyond IP: TLS fingerprint, HTTP/2 settings, mouse movement patterns, JavaScript execution behavior. This catches distributed bots that fail2ban misses.
Yes. fail2ban can call the Cloudflare API to push blocks to the Cloudflare edge. This gives you defense-in-depth:
The Cloudflare API for fail2ban is documented but has had compatibility issues (check the Cloudflare Community thread for current status).
Anubis is an open-source reverse proxy that presents a proof-of-work JavaScript challenge before allowing access. It’s being adopted by libraries as a Cloudflare alternative or complement.
Anubis sits in front of your web server. First-time visitors get a small JS challenge (SHA-256 proof of work, ~2 seconds in a browser). Bots running with minimal compute resources can’t solve it economically at scale.
Anubis is a good complement to Cloudflare for specific high-traffic paths, or a standalone option when Cloudflare isn’t feasible. It’s not a full replacement for Cloudflare’s broader security suite.
/patroninfo (login) and /search pathsConsider adding Cloudflare in front of the F5 (Cloudflare → F5 → Sierra):
Then iterate on WAF rules, rate limiting, and caching as time allows.
CF-Connecting-IP header restorationAn open Q&A session with Clarivate’s executive leadership team for the Innovative/public-library side of the Software Group. Topics ranged from Sierra’s future and the Vega platform strategy to public library headwinds, AI investments, and conference feedback. Multiple panelists emphasized a theme of improved communication with the customer community.
Panelists:
Panelist roster confirmed by Mike Dicus (Clarivate). Some Q&A attributions below appear as “Yoav” — per Mike, that refers to either Yoel Goldenberg or Yariv Kursh; the transcript could not be definitively disambiguated.
Each panelist introduced themselves. Yoav opened by noting the uniqueness of IUG compared to other Clarivate events (IGeLU, Lona/North American academic event), calling IUG a standout community. Several panelists were attending IUG for the first time. Caitlin Spears plugged her support restructure session at 1:30 PM and Ashley Barey encouraged attendees to attend the UX session before leaving.
A (Yoav): As a publicly listed company, Clarivate is bound by strict policies and legislation on when and how organizational changes can be disclosed. Leadership rotations happen intentionally about once a year to share expertise across the business. The company communicates changes to the IUG steering committee first, then uses forums like this conference to announce to customers. There is no intent to hide changes — it is a compliance-driven format.
Key points from multiple panelists:
Q: Our consortium is mixed — mostly public but includes smaller academic institutions. Alma is not a good fit for us. What about continued support for academic features in Sierra?
(LX Starter for email notifications, Interact for SMS, Promote for marketing, Discover for OPAC)
Acknowledged the current state honestly — Vega is a “work in progress” (used the metaphor of a “mason” — the building blocks are there but not fully connected yet). Investment is being made in three pillars:
Road maps will be overhauled in the June time frame — more uniform presentation, three items per card plus comments, borrowing from the academic side’s approach. Plans to add more ethnographic research to the roadmap process so customers can “see themselves” in planned features.
The platform approach means building shared foundations — e.g., Vega Reports serves both Polaris and Sierra without needing separate development. The goal is that individual Vega products (LX Starter, Interact, etc.) will eventually be a seamless out-of-the-box experience — “a click of a button, you don’t need to install anything.” Focused on creating solutions that work for both Polaris and Sierra customer bases.
No current plans to build a first-party mobile app (aside from mobile work lists, which were recently released). Rationale: mobile app development is not Clarivate’s core competency; third-party specialists deliver richer functionality.
Planned improvements for 2026:
Other Clarivate mobile apps exist on the academic side (Campus, etc.) but no crossover plans for 2026.
After COVID, Clarivate set a goal to unify everything a library needs — ILS through engagement tools — into a single ecosystem. Claims to be the only company in the market that brought physical and virtual library space together under one platform vision. Competitors referenced (without naming specifics): some have strong ILS but weak engagement tools; others have strong engagement but weak ILS. The vision continues: best-in-class ILS combined with patron experience management for both physical and digital interactions, across public and academic.
Public libraries are facing existential crises — the question asked what to watch for.
Budget cuts are impacting both public and academic libraries globally, not just in the U.S. Academic libraries increasingly need help demonstrating their value to their institutions. This pressure flows through to Clarivate’s business as well.
AI is reshaping the landscape — Clarivate is committed to leveraging AI rather than suffering from it. Using AI internally to become more efficient. Implementing AI in products carefully and responsibly (see: AI The Right Way session). “If you will not do it, you’ll stop being relevant” — Clarivate has been tracking this since the initial ChatGPT release (~2.5 years ago).
How patrons interact with libraries is shifting — Clarivate is researching this carefully. Goal: give libraries the tools and capabilities to service patrons broadly across different segments. Also helping libraries market their services to their communities.
A recurring theme across multiple questions and comments:
Attendees expressed appreciation for the server status page being made available — “for me, that is golden.” “It’s okay to be broken. You just need to know.”
Expanding the known issues portal to more products (Polaris and Discover coming). Helps reduce duplicate support tickets for already-identified problems. Encourages proactive transparency.
Soft-launched the week prior — a modern platform for product documentation, release notes, and product-related information. Features an AI-assisted chat that answers questions based on documentation content. Feedback function on every page. Community resource directory — libraries can nominate their own documentation, best practices, and tips for inclusion. Accessible via banners on existing documentation sites.
Roadmaps will be overhauled in June for better uniformity and clarity. Clarivate steering committee members meeting over lunch to discuss further communication improvements. Interest in reviving Strategic Partners / Vega meetings, consortium-specific gatherings, and release-focused webinars. Recently launched a cloud webinar series; more tools coming.
A roundtable discussion among Sierra libraries of varying sizes — from 12-branch systems to a 129-library consortium — sharing practical experience with floating collections, the tools they've built or adopted, and the gaps that remain. An Innovative staff member joined to gather input on Vega Reports priorities.
| System Size | Float Status | Key Tools |
|---|---|---|
| 79 locations / 39 branches | Active float, fully mapped | Library IQ |
| 24 branches (Tulsa City County) | Active float | Library IQ, vendor grids |
| 12 locations (growing to 14) | Pilot projects | Custom Sierra API tools |
| 129-library consortium | Exploring — potential new member | Sierra float rules |
| Cincinnati & Hamilton County PL | API development | Custom bulk-hold web app |
Multiple libraries use Library IQ to map entire collections and set optimal shelf sizes per area. Librarians see which branches are "pooling" (over capacity) and which are in "drought" (under capacity). CollectionHQ (Baker & Taylor) is also in use for evidence-based stock management.
In 2024, Innovative partnered with Library IQ to offer analytics within the Vega LX portfolio. Decision Center (Innovative's legacy analytics product) was discussed but is being de-emphasized.
Knowing you need to move 10 items from branch A to B is helpful, but no tool provides good criteria for which specific items to move. Participants wanted filters based on: last checkout date, item created date, total circulations (including zero-circ items), and whether the receiving branch has seen the title recently.
All branches mapped with defined shelf capacity. Staff instructions for pulls: "Send 100 picture books. Pull A through Z. Don't pull everything from one area. Avoid duplicates." Typical float volume: 50–300 items between branches. Title-level pick lists were abandoned — nobody has time to process item-by-item lists at that scale.
Initial resistance is strong, but libraries don't want to go back. Branch staff have deep ownership of "their" shelves. If you say "pull 20 items," staff will pull the worst — they want to keep the best for their customers. One system avoided floating juvenile nonfiction because they feared staff would game the system.
But after about a year of floating, one system offered to let branches opt out. They unanimously refused. The constant refreshment of paperbacks, media, and large print was too valuable.
Float timing is constrained by delivery schedules. One system sends requests Monday (busiest delivery day) so staff can start sending Wednesday when trucks are lighter. The day with the lowest delivery volume is the best day to trigger automated float requests.
When branches need items for programs, displays, or to fill collection gaps, the standard answer is "just place holds." But this is tedious — staff have to search individually, find available copies at other branches, and place holds one at a time. Several libraries have built API-driven tools to automate this.
A web application using the Sierra REST API allows staff to import a list of barcodes (a "shopping list") and place bulk item-level holds to route everything to a target branch.
Key innovation: Sierra enforces a ~2,000 hold limit per patron card. Rather than juggling multiple admin cards, this tool creates a temporary patron account on the fly via the API — patron expiration and "not needed after" date both set to 30 days. Each batch is a self-contained, trackable unit. After 30 days, the patron and unfilled holds auto-expire.
A consortium participant shared two complementary tools:
For their floating pilot, they automated return-to-home with a weekly script: any item on the shelf longer than X days gets a hold placed to send it home. Set to run on the lowest-delivery day to avoid overwhelming staff.
Several participants raised concerns about hold contention — bulk holds can impact patron access and add paging burden. The group discussed using item status codes instead: a dynamic "shopping" status with auto-expiration (similar to how "missing" has stages). Sierra's Circa tool already supports batch status changes via barcode scanning.
The blocker: Sierra Scheduler can't currently execute API calls. If it could, libraries could chain Create Lists queries with API-driven status changes on a schedule.
When you place a hold via the Sierra REST API's POST endpoint, the response is HTTP 204 No Content — the body is empty and no hold ID is returned. Since holds aren't a first-class record type in Sierra, there's no reliable way to programmatically track a specific hold after placement.
Workaround: immediately GET the patron's hold list and identify the new hold by timestamp or record number. This is fragile and doesn't scale well for bulk operations.
Sierra API docs: Documentation (v6.6) · Interactive sandbox · Developer portal
Sierra stores only current state for item locations. There is no built-in way to answer: Where has this item been over the last year? How long does it take to get from branch A to B? What is the actual flow pattern of our floating collection?
"Administration always asks how long it takes to get from A to B. And you can't answer that."
Items passing through a sorter while already checked in produce no circulation transaction — no status change means nothing is recorded. There's no shipping/tracking log for physical items.
| Approach | How It Works | Limitations |
|---|---|---|
| Collection snapshots | Dump entire collection locations at regular intervals, diff over time | Storage-heavy, requires custom tooling |
| Annual checkout rankings | Rank branches by format checkout frequency to inform float decisions | Only annual granularity, reactive |
| Inventory check-in analysis | Check in every item over a month; analyze where things ended up | Recent improvement — now creates transactions |
Vega Reports (launched April 7, 2026) is expected to create a data lake with regular snapshots of ILS data. If it captures item location changes over time, it could solve the historical tracking problem. Currently surfaces Vega Discover data; Sierra ILS integration is on the roadmap.
The concept: Instead of float rules that simply say "this item type floats between these locations," the system makes intelligent routing decisions at check-in based on real-time collection state.
Example: A copy is returned at Branch A, which already has 8 copies. Branch B has only 2 and hasn't seen this title in 18 months. The system creates a transit request to send it to Branch B.
Automated sorters already implement routing logic at check-in. Polaris has related functionality. Lyngsoe Systems' IMMS is an RFID-based platform that tracks every item movement and supports automated routing — a hardware-based version of what this group wants in software.
Sierra's own floating collection configuration supports rule-based float at check-in, but lacks the dupe-aware, capacity-aware intelligence discussed here.
Elizabeth Wright committed to submitting this as an Idea Exchange enhancement request. The group's advice: don't just click the vote button — write a comment with your library's specific use case. Reach out to other floating libraries to build support. Even contact non-floating libraries: "You might want to float someday."
How do you ensure new acquisitions are distributed fairly when items naturally drift toward high-demand branches? Small branches with heavy reader populations see popular items float away quickly.
| Strategy | How It Works |
|---|---|
| Rotating vendor grids | Acquisitions grids cycle through branches — small branches get the same percentage of new items as large ones |
| Assign to one branch | For high-hold items (Lucky Day / Quick Picks), assign to one branch — holds will distribute them naturally |
| Percentage-based allocation | Allocate new items proportionally so no branch feels underserved |
A library with an existing floating collection wants to join a 129-library consortium where no one else floats.
Sierra's float rules are scoped to the floating library's own locations. When a floating library's item is returned at a non-floating consortium member, it goes in transit back to its owning location — the same behavior that already happens for all non-floating consortium items. The floating library sets up float rules for their own branches; the rest of the consortium is unaffected.
An Innovative staff member gathered input on reporting priorities. See also: Vega Reports announcement
| Component | Detail |
|---|---|
| Platform | Metabase — open-source BI tool (GitHub) |
| Query builder | Visual drag-and-drop; generates SQL behind the scenes |
| SQL access | Direct SQL editor for power users (role-dependent) |
| Current data | Vega Discover metrics (visitors, engagement, search activity) |
| Roadmap | Polaris ILS, OverDrive checkout data, Sierra ILS |
Datasette (GitHub) by Simon Willison was mentioned as a comparable open-source tool already in use at one library. Publishes any SQLite database as an explorable website with faceted browsing, full-text search, and a JSON API. Companion tool sqlite-utils converts CSV/JSON into SQLite from the command line — a lightweight alternative to a full BI stack.
Libraries that float are committed to it, but Sierra's tooling — especially around intelligent routing, item tracking, and bulk operations — lags behind operational needs.
Multiple participants have built custom applications using the Sierra REST API: bulk hold placement, automated return-to-home scripts, collection movement tracking. A testament to the API's value and an indicator of unmet product needs.
Every library at the table wanted to know where items have been, not just where they are now. Vega Reports' data lake could address this if it captures location snapshots over time.
Capacity-aware, dupe-aware routing that doesn't require hardware sorters was the consensus top priority for the Idea Exchange.
Libraries with data analysts can get what they need via SQL. The first release of any new reporting tool should prioritize ready-to-use reports for smaller libraries without dedicated technical staff.
Gabrielle Gosselin and Mike Dicus
Six teams presented projects built during the IUG Hackathon pre-conference. All projects solve real operational problems for libraries using Polaris, Sierra, or standard protocols like SIP2.
By Wes and Bryan. SIP2-based offline checkout system built on PocketBase. Details below ↓
Rochester Hills Public Library · GitHub (MIT)
Adds interactive floor maps to the Vega Discover catalog. Patrons search, find an item, and see exactly where it sits on the shelf. Search → Find → Go Get It.
Three components:
map.rhpl.org. Supports kiosk mode for Chrome OS devices.Tech: Vanilla JS (zero dependencies, no build step), Python/Flask, Polaris PAPI (HMAC-SHA1), Google Workspace OAuth
Key design choice: Zero framework dependencies so any library can deploy regardless of technical capacity. Self-host mandate — each library hosts its own copy. Data/code separation — staff update shelf mappings without touching JavaScript.
Photos: Presentation slides
Andrew
Allows patrons to browse through a smaller, curated collection. Built on the Polaris PAPI.
Wes and Bryan
A better offline tool for library checkouts. When the network goes down, staff can still circulate items and reconcile later. Started as a complex idea and was narrowed down during the hackathon.
Tech: PocketBase (single-file backend — database, auth, and API in one binary), SIP2
Built with: Claude Code and ChatGPT
Photos: Presentation slides
Kalee Gulosh and Mike Parks
Parameterized SQL searches for library staff who don't write SQL. Pick a saved template, fill in a form, run the query. Built for consortium environments where member libraries share query templates with each other.
Tech: ASP.NET / C#, Polaris SQL
Photos: Presentation slides
Somalia Jamall — Jacksonville Public Library · GitHub
Patron-facing purchase suggestion tool that takes work off the collection development team's plate. A nightly script processes suggestions and emails patrons with updates.
Tech: PHP, JavaScript, Python
Victor Zuniga
Bulk record editing via the Sierra API's Create Lists and Review Files endpoints. Edit multiple variable-length and fixed-length fields at once — no more record-by-record work in the Sierra client.
Photos: Presentation slides
Katie LeBlanc (Clinton-Macomb Public Library, MI — Polaris) and Alex Vancina (Helen Plum Library, Lombard, IL — Sierra) are both members at large on the IUG steering committee. They walked through the full lifecycle of an enhancement idea — from initial submission through working group review, point sizing, ranked-choice election, and guaranteed 12-month delivery.
See also: Sierra Year in Review for recent MEEP winners delivered in Sierra 6.4–6.7.
Idea Exchange is a platform hosted by Innovative — not exclusive to IUG members. Any Innovative customer can:
| Product | Annual Points | Elections/Year |
|---|---|---|
| Sierra | 1,000 (2 × 500) | 2 |
| Polaris | 1,000 (2 × 500) | 2 |
| Vega Discover | 1,000 | 1 |
| Vega Promote | 500 | 1 |
| LX Starter | 100 | 1 |
The previous process used pairwise voting — members had to evaluate 80+ head-to-head combinations. Even when a winning idea emerged, there was no contractual commitment to implement it. Ideas could wait years or never be built. MEEP replaced that with a binding agreement: if it wins the vote, it ships within 12 months.
Some items partially obscured from slide photo.
### Polaris 8.0 - Better Handling of "Display" Items - Enables Notices - Fix the Label Bibliographic Print Tool Report to use ... ### Polaris 8.1 - Labels: Print Tool windows and New table from Find Tool & Lists - Directed Sorting - Add ability to enter a reason when canceling a Hold - Return to where you were when search finishes ### Polaris 8.2 - Ability to place holds on all items in a record set - Create Multiple Items in LEAP - Create a new status of Lost and Paid ### Sierra 6.6 - View history of item and volume records - Separate permissions to create/edit/delete notice jobs and prepare/run notices ### Sierra 6.7 - Automatic SSL Certificate Renewal - REST API endpoint to update patron "last circ activity date" - Allow use of spine label print templates in Create Lists ### Vega Discover - *(partially obscured)* - Sort Basket Results by Relevance or Record Count / Library - *(partially obscured)* - Enable New Return Material Notification Text ### Polaris Libraries - *(partially obscured — 2 items)* ### Vega LX Starter - Add message to account when marked as spam ## Key Themes1. The process works — and has teeth. Unlike previous IUG enhancement voting, MEEP has a contractual 12-month delivery guarantee. Every winner so far has shipped on time.
2. Comments matter more than votes. Substantive use-case comments on Idea Exchange influence both working group selection and product manager roadmap decisions — even for ideas that never enter the MEEP pipeline.
3. Strategic participation pays off. Understanding how ranked-choice voting works, knowing your site contact, and mobilizing colleagues to comment/vote all increase your library’s influence on the product direction.
4. Working groups need fresh voices. The 50% annual rotation is deliberate — diverse representation ensures the ballot reflects community-wide needs, not just power users. Vega Promote in particular needs more participants.
5. The boundary between MEEP and the roadmap is porous. Product managers actively monitor Idea Exchange independently. Good ideas with strong engagement can get picked up outside the formal election process.
Clarivate presented AI principles guided by the public library community: Transparent, Ethical, Safe (human in the loop). 2026 AI focus: Polaris Data Explorer, Content Creation, Natural Language Analytics. Pursuing natural language search and AI agents/chat in Discover.
Vega Promote July release for libraries and consortia. Scaled mass email, 1000+ integrations, triggered automations, personalization. SSO with Vega Staff and AI tools.
Rapido Consortial Borrowing with SearchOhio and OhioLINK. 1,000 requests/day since launch, connecting 120+ libraries across 4 different ILSs. Vega Discover as the central request interface.
Known Issues Portal — AI-powered, went live April 12. Browse, subscribe, track issues. Unified Knowledge Portal — new docs experience, goes live April 15.
91 new Vega Discover features. 27 new Sierra features. 32% reduction in case resolution time. 42% reduction in case backlog (126 Discover PRs fixed). 60 Ideas Exchange suggestions implemented.
The first-ever Clarivate Library Innovation Awards — 50+ entries from 11 countries. Winner: Rochester Hills Public Library for themed Vega catalogs creating developmentally-appropriate discovery for children through teenagers. Finalists: Santa Clarita PL (mobile library) and Suffolk PL (rural branch expansion). (finalists)
Next year's conference: Boston, MA — April 1–3, 2027.
Presented by previous IUG Chair Jeff Campbell. Rhonda is Assistant Dean & Associate Professor at Kraemer Family Library, UCCS, and former IUG Chair who led the first all-virtual conference in 2021.
Yoel Goldenberg, new SVP & GM of Library Software Solutions.
Joins from the enterprise AI space — previously CPO at Jacada (conversational AI) and SVP Product Management at Uniphore (AI agents & conversational analytics).
Mike Dicus presented the Sierra roadmap: 22 releases and 98 new features over 3 years, serving 129M patrons. Two releases planned for 2026 with four pillars: customer-driven enhancements, simplified operations, modernized solutions (Admin Corner → Sierra client), and expanded APIs/integrations. ERM replaced by Alma Starter. Vega Interact for SMS/voice notifications. UPC-based cover images coming for non-book materials. Full writeup →
Six teams demoed projects from the IUG Hackathon pre-conference. Winner: Shelf Defense (Wes & Bryan) — a SIP2-based offline circulation tool built on PocketBase. Other projects: FindIt (shelf mapping for Vega), Browsr (collection browsing), Leap SQL Template Manager (parameterized SQL for consortia), Auto-Suggest-a-Purchase (patron requests), and Microprojects (Sierra bulk editing via API). Full writeup →
Amazon Business EDI integration — CHPL (Cincinnati) launched mid-April as early adopter. Full writeup →
Libby / OverDrive — print copy availability when eBook/audio unavailable; combined ILS + OverDrive circulation reporting. Seeking early access partners.
Vega Reports launched April 7, built on a data lakehouse architecture. Pre-built dashboards, custom reports, visitor engagement tracking. (iii.com)
Two-part session covering the Rapido resource sharing platform: Rapido CB (Consortial Borrowing) for cross-ILS lending, and Rapido stand-alone for academic institutions. Features the SearchOhio/OhioLINK deployment — the largest cross-ILS Rapido implementation to date.
Presented by Hope Harley
February 5, 2026 — SearchOhio soft launch (go-live)
March 2026 — Connected with OhioLINK (88 Alma academic institutions)
Met with staff from 8 libraries to work through a prioritized list of challenges. Feedback used to strengthen the solution — a Clarivate investment.
| INN-Reach (old) | Rapido CB (new) | |
|---|---|---|
| Infrastructure | Local server | Cloud-based architecture |
| Catalog | Separate union catalog | Integrated catalog — single search across SearchOhio + OhioLINK |
| Request interface | Per-ILS | Vega CRI (Central Request Interface) |
| Holdings data | Stored in union catalog | Tracks bibs only — real-time callbacks to each ILS for item availability |
Sierra and Polaris staff stay in their native catalog — workflows unchanged. ILS-specific operations remain in each system.
Rapido CB does not readily show holdings because it only stores bibs and does real-time lookups. This is a recognized issue actively being worked on.
Ability for staff to place requests on behalf of patrons.
Fixing the visibility gap — making holdings data visible in the interface.
SearchOhio/OhioLINK results surfaced directly in each library's own Vega Discover instance — patrons never need to leave their home catalog.
Many member libraries still use barcode-only auth. Rapido requires PIN-based auth via Vega Discover. Focus is on minimizing disruption during migration.
Using Clarivate's Idea Exchange as the feedback channel for Rapido CB feature requests and prioritization.
San Diego circuit is the next group of libraries to deploy Rapido CB resource sharing.
Target go-live: late June 2026
Presented by Katy Aranoff
A resource sharing solution integrated with the library system that streamlines the user experience. Primarily aimed at academic library partners.
Rapido automatically imports metadata for articles and physical books when patrons place requests — easing the process and improving fill rates. No more manual citation entry.
Users see request status and progress directly in their library card using familiar language — not ILL jargon.
Routine requests handled automatically. Staff focus on mediating complex requests. Libraries configure workflows to match their own policies. Enables handling higher volume without adding staff.
Requests route to partners in active timezones for faster fulfillment — not just proximity-based.
Global community: Rapido is active across 20 countries spanning USA/Canada, Latin America, EMEA, APAC, Africa, and Australia/New Zealand.
Distinguishing item types (e.g., DVD vs. Blu-ray) is one of the top features requested at listening sessions. Patrons need to tell formats apart when requesting through Rapido.
Not rushing anyone off INN-Reach, but the two systems do not interoperate and likely never will. No plans to build a bridge. When a consortium moves to Rapido, it's a full cutover.
Trend toward fewer OCLC resource sharing platforms and reducing dependency on OCLC ILL. Rapido offers customizable workflow management that puts more control in the hands of staff users.
Amazon highlighted as a major new EDI vendor. Several other notable vendors added. "Quick click" workflow — start at the vendor site. EDIFACT invoice support.
Sierra ERM is being replaced by Alma Starter as the new product.
SMS and voice notification product — patrons can call in. Related session: "Managing a Cohesive."
Released April 7, 2026. Early access coming later for Sierra libraries.
| Customer-driven Enhancements | Simplify Operations | Modernize Solutions | APIs & Integrations |
|---|---|---|---|
| View history for item and volume records (Record History button) | Override patron block workflow for bookings | Admin Corner → Sierra: catalog database status, circulation status, system information | Sierra API endpoints for ILL requests |
| New permissions to delete notice jobs | Run notice jobs automatically | Admin Console for Vega Reports | Enhance support for exhibitions in IMMS |
| Customize SAML login forms (webmaster-controlled branding). | Accessibility improvements in staff client and WebPAC | Group call numbers for statistical reports (stat groups) | Rapido / consortial borrowing — pickup location data, filling gaps |
| Scoping authority records in Sierra client | |||
| Maintain record links & daily record link maintenance |
| Customer-driven Enhancements | Simplify Operations | Modernize Solutions | APIs & Integrations |
|---|---|---|---|
| Cover images via UPC (not just ISBN) — for board games, video games, etc. | Accessibility improvements in staff client | Acquisitions & serials status in admin app | Vega Discover |
| Display birth date in patron search results (optional) | Jaspersoft Studio update to v6 for print templates | Manage locations served in Sierra admin | LX Starter — item cost in overdue notice templates |
| Prioritized via MEEP, Idea Exchange, market | Streamlined operations | Limit network access in admin app | Vega Interact |
| Continued Admin Corner migration | Vega Reports |
Just released April 2026 — along with a Known Issues Portal. Available for Sierra and Polaris now; Vega later.
A deep-dive companion to the Sierra Staff and Single Sign-On session notes from IUG 2026. This guide is aimed at library systems administrators considering or actively implementing SAML SSO for Sierra staff authentication. It covers the full stack: SAML protocol fundamentals, identity provider setup, Sierra-specific configuration, Keycloak’s emerging role, automated provisioning, MFA hardening, passwordless authentication, conditional access policies, and SAML debugging.
SAML (Security Assertion Markup Language) is an XML-based standard for exchanging authentication data between two parties:
Sierra acts as the SP. Your organization’s directory service acts as the IdP.
Staff member Sierra (SP) Your IdP
| | |
|-- launches Sierra ------->| |
| |-- AuthnRequest -------->|
| | (base64-encoded XML) |
| | |
|<------------- redirect to IdP login page -----------|
| |
|-- enters credentials + MFA ----------------------->|
| |
| |<-- SAML Response -------|
| | (signed XML assertion)|
| | |
| |-- validates signature |
| |-- extracts SSO ID |
| |-- matches to staff acct |
| | |
|<-- logged in -------------| |
The key thing: Sierra never sees the user’s password. It only receives a signed assertion from your IdP saying “this person authenticated successfully, and their username/email/uid is X.”
User starts at the IdP portal (Azure MyApps, Google apps launcher, Okta dashboard) and clicks a Sierra tile. The IdP generates a SAML Response directly without a preceding AuthnRequest. This works but is less secure — there’s no request-response correlation, making replay attacks easier. SP-initiated (what Sierra does) is preferred.
Before SSO works, the SP and IdP need to exchange metadata — XML documents describing each party’s configuration:
SP Metadata (Sierra provides this):
entityID — Sierra’s unique identifier (a URL)AssertionConsumerService — the ACS URL where the IdP sends responsesIdP Metadata (your IdP provides this):
entityID — your IdP’s unique identifierSingleSignOnService — the URL Sierra sends AuthnRequests toIn Sierra’s admin interface, you paste in your IdP’s metadata URL. Sierra generates its own SP metadata URL that you give to your IdP admin.
The signed XML assertion the IdP sends back contains:
<saml:Assertion>
<saml:Issuer>https://idp.yourlibrary.org</saml:Issuer>
<ds:Signature>...</ds:Signature>
<saml:Subject>
<saml:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress">
jsmith@library.org
</saml:NameID>
<saml:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer">
<saml:SubjectConfirmationData
Recipient="https://sierra.library.org/saml/acs"
NotOnOrAfter="2026-04-15T14:35:00Z"/>
</saml:SubjectConfirmation>
</saml:Subject>
<saml:Conditions NotBefore="2026-04-15T14:29:00Z"
NotOnOrAfter="2026-04-15T14:35:00Z">
<saml:AudienceRestriction>
<saml:Audience>https://sierra.library.org/saml/metadata</saml:Audience>
</saml:AudienceRestriction>
</saml:Conditions>
<saml:AttributeStatement>
<saml:Attribute Name="uid">
<saml:AttributeValue>jsmith</saml:AttributeValue>
</saml:Attribute>
<saml:Attribute Name="email">
<saml:AttributeValue>jsmith@library.org</saml:AttributeValue>
</saml:Attribute>
</saml:AttributeStatement>
</saml:Assertion>
The critical parts:
| Format | When to Use |
|---|---|
emailAddress |
Most common; user’s email as identifier |
persistent |
Opaque pairwise ID; good for privacy |
unspecified |
Let the IdP decide |
For Sierra, emailAddress or unspecified with a uid attribute is typical.
Available on all paid editions (Business, Education, Nonprofits).
https://accounts.google.com/o/saml2/idp?idpid=<your_id>https://accounts.google.com/o/saml2?idpid=<your_id>EMAIL (or PERSISTENT)uid mapped to Primary email or Username)Gotcha for free nonprofit tier: No bulk YubiKey management — each key must be registered per-account manually in the admin console.
Reference: Google — Set up custom SAML app
uid mapped to user.userprincipalname or user.mailnickname)Reference: Microsoft — SAML SSO for apps
What RIT uses (as discussed in the session). Shibboleth is the standard in academic libraries.
Reference: Shibboleth IdP Documentation
Sierra supports any SAML 2.0 compliant IdP. The general process is always:
Requirements:
Back End Management > SAML Configuration > Identity Providers tab > ADD:
| Field | Description | Notes |
|---|---|---|
| Name | Unique identifier (min 3 chars) | Displayed on the login button. Immutable once created. |
| Usage | Patrons, Staff, or Both | Can have separate IdPs for patron vs. staff |
| Metadata URL | Your IdP’s metadata endpoint | Must be HTTPS, min 12 chars |
| Attribute | IdP response attribute to match against SSO IDs | e.g., uid, email, username |
| Duration in Seconds | Session validity | Default 3600; align with IdP session settings |
username,sso_id (header row ignored)username = Sierra login name (case-sensitive)sso_id = matching attribute from IdP (case-sensitive, must be unique)You can configure and test SAML without affecting production. Set up the IdP, upload SSO IDs, and test the flow before clicking ENABLE. Justin Newcomer specifically mentioned this in the session: “It’s self-service now. You can just go into the admin website and set it up yourself in test mode without interfering with production.”
| Application | SSO Support | Workaround |
|---|---|---|
| Sierra Desktop Client | Yes (6.1+) | — |
| Sierra Web | Yes (6.0+) | — |
| Admin App | Yes (6.0+) | — |
| Web Management Reports | Yes (6.1+) | — |
| Decision Center | No | Must have legacy password |
| Circa | No | Must have legacy password; Justin considering vibe-coding a replacement |
| Circulation overrides | Legacy only | Supervisor override pop-up uses legacy credentials |
| Innovative mobile worklists | No | On the roadmap |
| Vega mobile worklists | No | On the roadmap |
Keycloak is an open-source Identity and Access Management (IAM) server maintained by CNCF (formerly Red Hat). It provides SSO, identity brokering, user federation (LDAP/AD), support for OIDC, OAuth 2.0, and SAML 2.0, fine-grained authorization, and multi-tenancy via “realms.”
At the SSO session, an attendee (appearing to be from Innovative’s engineering side) mentioned that Vega currently runs through Keycloak and that there are plans to make Keycloak a shared service across Polaris and Sierra. If enough customers request this via IdeaLab, it could accelerate adoption.
[Keycloak]
/ | \
/ | \
[Sierra] [Polaris] [Vega]
SAML OIDC OIDC
Identity Brokering — Keycloak sits between your apps and your IdP:
[Sierra] <--SAML--> [Keycloak] <--OIDC--> [Azure AD]
<--SAML--> [Shibboleth]
<--OIDC--> [Google]
<--LDAP--> [Active Directory]
Benefits:
| Concept | What It Is |
|---|---|
| Realm | Isolated tenant — own users, groups, clients, IdPs. Think of it as a separate identity domain per library system. |
| Client | An application registered in Keycloak (Sierra would be a SAML client, Vega an OIDC client) |
| Identity Broker | Configuration to delegate auth to an external IdP (Azure AD, Google, Shibboleth, etc.) |
| User Federation | Direct connection to LDAP/AD — Keycloak queries the directory at login time |
| Protocol Mappers | Rules for which attributes/claims appear in tokens and assertions sent to clients |
Reference: Keycloak Server Administration Guide
The problem: Right now, Sierra SSO ID management is manual — upload a CSV of username,sso_id pairs, or set the SSO ID individually per staff record. When someone leaves, manually remove their account. No automatic group/permission mapping from your IdP.
SCIM (System for Cross-domain Identity Management) is a REST API standard (RFC 7643/7644) for automatically syncing users and groups between your IdP and applications. Sierra does not support SCIM today — this is aspirational and worth requesting via IdeaLab.
[HR System] --> [IdP (Azure/Okta/Google)] --> SCIM API --> [Sierra]
- Create user
- Set SSO ID
- Assign permissions
- Deactivate on departure
| Endpoint | Method | What It Does |
|---|---|---|
/Users |
POST |
Create a new staff account |
/Users/{id} |
GET |
Retrieve a staff account |
/Users/{id} |
PATCH |
Update attributes (name change, department transfer) |
/Users/{id} |
DELETE |
Deprovisioning (staff departure) |
/Groups |
POST/PATCH |
Create/update permission groups |
/Groups/{id} |
PATCH |
Add/remove members from groups |
| CSV Upload (current) | SCIM (aspirational) | |
|---|---|---|
| Timing | Batch (manual trigger) | Real-time |
| Deprovisioning | Often forgotten | Automatic when user deactivated in IdP |
| Group/permissions | Managed separately in Sierra | Could map IdP groups to Sierra permissions |
| Error handling | Errors block entire upload | Per-record HTTP error responses |
| Audit trail | Spreadsheet-level | Full HTTP request/response logs |
| Effort for 10 new hires | ~30 min manual work | Zero — automatic |
If Keycloak becomes the shared identity layer, Keycloak does have SCIM support that could potentially bridge the gap.
Standard push sends a simple “Approve / Deny” notification. This is vulnerable to MFA fatigue (prompt bombing):
| Organization | Date | What Happened |
|---|---|---|
| Uber | Sep 2022 | Lapsus$ bombarded a contractor’s phone + posed as IT via WhatsApp |
| Cisco | May 2022 | Voice phishing combined with push bombing; gained VPN access |
| Microsoft | Mar 2022 | Lapsus$ used MFA fatigue + session token replay; 37 GB source code stolen |
What RIT uses (Duo “Verified Push”). Microsoft calls it “number matching.”
Why it works: The user must be actively looking at both the login screen AND their phone. An attacker triggering prompts from their own browser sees a different number — the victim has no number to enter, so there’s nothing to mindlessly approve.
| Platform | Feature Name | Status |
|---|---|---|
| Microsoft Authenticator | Number matching | Mandatory for all tenants since May 2023 |
| Cisco Duo | Verified Duo Push | Available in Duo 4.x+; enable per policy |
| Okta Verify | Number Challenge | Configurable per policy |
| Risk-based challenges | Similar protection via context, not explicit number matching |
References:
This came up in the session discussion. Justin is interested but cautious. Passwordless happens at the IdP layer, not in Sierra — no changes to Sierra are required to go passwordless.
Registration:
Authentication:
Why it’s phishing-resistant: The credential is bound to the exact origin (e.g., https://sierra.library.org). A phishing site at https://sierra-library.evil.com simply can’t trigger the credential.
| Type | Examples | Pros | Cons |
|---|---|---|---|
| Hardware security keys | YubiKey 5, Google Titan, Feitian | Strongest security; hardware-bound; no battery | Must carry it; costs $25–70/key; limited credential slots (25 on YubiKey 5) |
| Platform authenticators | Windows Hello, Touch ID, Face ID | Very convenient; built into device | Tied to one device |
| Synced passkeys | iCloud Keychain, Google Password Manager, 1Password | Sync across devices | Less secure than hardware-bound (cloud compromise risk) |
Justin’s concern from the session: “If somebody didn’t have a password and all they needed was the YubiKey, and they know who the user is… I don’t like that.”
The answer: YubiKeys require a FIDO2 PIN.
Modern standard (what RIT does, per NIST SP 800-63B):
An attendee described this setup: MFA required off-network, skipped on the library’s network. “If somebody forgets their phone, they’re not going to be unable to work when they get in.”
Step 1: Create a Named Location
Step 2: Create the Conditional Access Policy
Critical: Always exclude at least one emergency/break-glass account from ALL conditional access policies.
Step 1: Create an Access Level
Step 2: Assign to Apps
Step 3: Configure 2-Step Verification
References:
Essential tool: SAML-tracer. Install the browser extension before you do anything else: Firefox | Chrome. Open it before attempting login. It intercepts HTTP traffic, detects SAML messages, and decodes them into readable XML. This is how you’ll diagnose every SSO problem.
Issuer and AssertionConsumerServiceURL<StatusCode>Success, the IdP rejected the request — check IdP logsSuccess, inspect the assertion fields (see table below)| Field | What to Check | Common Failure |
|---|---|---|
| Issuer | Matches the IdP entityID Sierra expects? | IdP entityID changed or SP misconfigured |
| Destination | Matches Sierra’s ACS URL exactly? | Trailing slash, HTTP vs HTTPS |
| Audience | Matches Sierra’s entityID? | SP entityID mismatch |
| NotBefore / NotOnOrAfter | Timestamps valid relative to Sierra’s clock? | Clock skew |
| Recipient | Matches ACS URL? | URL mismatch |
| Signature | Validates against IdP certificate? | Expired cert, cert rotation not applied |
| NameID / Attributes | Contains expected attribute with expected value? | Wrong attribute name, empty value, case mismatch |
Clock Skew
NotBefore/NotOnOrAfter in the assertion with Sierra server’s time (date -u)timedatectl status to verify.Certificate Mismatch
<ds:X509Certificate>, compare with Sierra’s configACS URL Mismatch
Attribute Name Mismatch
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress but Sierra expects email<AttributeStatement> in SAML-tracer. Compare attribute Name values with what Sierra expects.SSO ID Case Mismatch
JSmith but IdP sends jsmith# Inspect a certificate's details and expiry openssl x509 -text -noout -in idp-cert.pem # Verify an XML signature (requires xmlsec1) xmlsec1 --verify --pubkey-cert-pem idp-cert.pem response.xml # Decode a base64 SAML message from a URL parameter echo "PHNhbWxwOl..." | base64 -d | xmllint --format - # Decode a deflated + base64 SAML message (HTTP-Redirect binding) echo "fZJNT8Mw..." | base64 -d | python3 -c \ "import sys,zlib; print(zlib.decompress(sys.stdin.buffer.read(),-15).decode())"
References:
An informal gathering led by Justin Newcomer (Rochester Institute of Technology) about his experience implementing SAML SSO for Sierra staff and patron authentication. As one of the few sites actively using it, Justin walked through the setup, limitations, and pain points at RIT. The session evolved into a broader conversation about MFA policies, shared accounts, identity provider options, cyber insurance implications, and the prospect of Keycloak unifying identity across all Innovative products.
RIT uses Shibboleth as their university-wide identity provider with separate SAML configurations for patron authentication and staff authentication, each using different match points. They previously used external LDAP authentication for patrons before switching to SAML.
They use username (uid) as the matching attribute—chosen because it didn’t require special permissions from the IdP team. SSO IDs can be changed on the fly; Justin swaps his SSO ID to a test account to impersonate and debug.
When the Sierra desktop client launches with SSO enabled, a browser window pops up offering two choices: SAML login or legacy Sierra password. Edge works best; Firefox can be flaky. On Chrome, Windows credentials pass through to the browser and Duo MFA decisions happen automatically.
Even with SAML fully configured, the legacy Sierra password login cannot be disabled—both options always appear on the login page. Justin has raised this issue repeatedly. The login page is Sierra-controlled, so libraries cannot modify the scripting or remove the legacy option.
Justin plans to submit an IdeaLab request after the conference to require MFA, not just allow it. Previous requests were “loose with words”—they demanded MFA support but not MFA as a requirement. He encouraged the room to help word-smith the request “with lawyers in mind.”
Several Sierra-adjacent applications still require legacy password authentication:
| Application | SSO Status | Notes |
|---|---|---|
| Decision Center | Legacy password only | — |
| Circa | Legacy password only | No longer sold, but RIT uses it daily |
| Circulation overrides | Legacy password only | Supervisor override pop-up at circ desks uses legacy credentials |
| Innovative/Vega mobile worklists app | No | Legacy only; a roadmap slide suggested SSO support may be coming |
Justin mentioned he might vibe-code a Circa replacement using Shibboleth/PHP for authentication to work around the SSO gap.
Students get SSO access through their university accounts. Justin sets a random password they never receive—SSO is their only way in. If a student needs Decision Center or Circa, they require the legacy password as well.
Students self-enroll for Duo MFA automatically. Justin noted: “I had confusion trying to explain how to enroll, then they told me it’s just automatic. I stopped trying to explain it and we haven’t had problems since.”
Patron authentication matches on a different attribute (University ID in patron records). RIT disabled the patron choice between SAML and barcode/PIN, forcing SAML-only since all patrons have RIT accounts. The one or two theoretical community users with expired accounts were told to get an RIT account.
Forcing SAML for patrons eliminates password reset support entirely. As Justin put it: “It’s Central IT’s problem.”
Attendees noted that any shared account can move a library into a more expensive cyber-insurance tier, even if the account’s permissions are heavily restricted. The cheapest rate typically requires every user to be a single signer with no shared service accounts — which has pushed some libraries to phase out shared accounts for programs and provision per-person accounts instead.
Justin’s advice: “If you have Google, Google ‘Google SAML.’ If you have Microsoft, Azure that up.” The setup is self-service—you can configure it in test mode through the Sierra admin web app without affecting production. The metadata exchange is straightforward: match the SSO ID field to whatever attribute your IdP sends.
One attendee asked about allowing patrons to choose their own IdP—sign in with Google, Apple, Meta, and so on—the way consumer sites work. Justin noted that SAML is designed for defined groups; OAuth might be a better fit for “bring your own” patron authentication. The idea has major potential for public libraries, but it raises support questions: password resets and account recovery would go to Apple or Google, not the library.
One attendee described staff traveling to 9 different locations who need different context logins for each location’s stack groups. They stood up their own IdP to create 9 separate entries, spent 3 months working with their IT department and the city, and ultimately concluded “we can’t do that” with current Sierra.
Possible approaches included multiple accounts with the same password but different usernames, or dummy Google nonprofit accounts per location. Justin candidly acknowledged: “I only have bad ideas about how to solve this.”
An attendee asked about automatic provisioning—mapping LDAP groups to Sierra permission groups. This does not exist currently: no SCIM, no automatic role-based provisioning. Justin manages approximately 80–90 staff accounts manually, cloning permissions from existing accounts.
“Takes longer to close out the ticket with proper change controls than to actually click ‘copy from other supervisor.’” Justin also prefers keeping control in-house rather than letting central IT touch Sierra groups: “They touched groups I had specific notes saying do not touch.”
An attendee (possibly from the Innovative/engineering side) confirmed that Vega currently runs through Keycloak for identity management.
There are plans to make Keycloak a shared service across all products—pushing it down to Polaris and across to Sierra. If this happens, IdeaLab requests for SSO improvements would benefit all products simultaneously rather than requiring incremental changes in each module.
The session included a candid survey of how different libraries handle multi-factor authentication:
| Library | IdP | MFA Method | Notes |
|---|---|---|---|
| RIT (Justin) | Shibboleth | Duo (YubiKey + web auth) | Disabled SMS, disabled push, using verified push (type 3 numbers). No phone-call MFA. |
| Attendee (Google shop) | Google Workspace (free nonprofit) | YubiKey + phone | Must manually assign YubiKeys per account—no bulk provisioning on free tier. YubiKeys also used for physical door access (NFC). |
| Attendee (Microsoft shop) | Azure AD / Entra ID | Microsoft Authenticator app | 4 out of 75 staff requested hardware tokens (Token2). SMS turned off. |
| Another attendee | Microsoft | MS Authenticator | Conditional access: no MFA required on library network. Off-network requires MFA every time. |
RIT requires 16 characters, set once, never rotated unless the password is detected on a breach list (following the Microsoft standard). One attendee uses Spanning (a Google Workspace backup tool) with dark web monitoring for compromised credentials—it has flagged a match only once in four years.
Justin does not check Sierra passwords against breach lists—it is unclear how that would work given Sierra’s password infrastructure. The room’s general consensus: long passwords + MFA + no rotation is the modern standard.
Justin expressed interest in passwordless authentication but remains cautious. His concern: a YubiKey alone (something you have) without a password means anyone who knows the username and has the key gets everything.
One attendee described a setup where the YubiKey requires a PIN to unlock, preserving the two-factor model (something you know + something you have). Justin noted he is attending a Google conference next week to learn more about passwordless at enterprise scale, but added: “I’m not going to be the first person on campus to push for it.”
An open forum for Sierra system administrators — Jeff’s last time hosting. Wide-ranging discussion covering Sierra-to-Polaris migration considerations, invoicing workarounds, Koha feasibility, bot protection strategies (Cloudflare, F5, fail2ban), locations served and paging configuration, SDA vs. Sierra Web, WebPAC accessibility challenges, and circ active date behavior with e-vendor APIs.
Show of hands: 2 definite, 4 maybe considering Sierra-to-Polaris migration. Polaris pricing is similar to Sierra renewal costs, but there’s an additional unknown implementation cost on top. Pricing should be negotiable — one attendee just renewed Sierra for 3 more years at comparable rates.
A sales rep deflected on pricing at lunch — an attendee pushed back: “I’m the one who has to get it approved… Our board isn’t going to just say oh yeah spend another hundred thousand.”
One attendee: “I feel like it’s now or five years from now” — the renewal cycle is the natural decision point.
A consortium hired Marshall Breeding for a landscape report. After 20 years on Sierra, his conclusion: “Stay on Sierra for the moment and do a deep dive in about three years, maybe five.”
III themselves recommended staying on Sierra — at PLA, an attendee’s assistant director spoke with III reps and “that was their recommendation. Stay on Sierra. You’re good here.”
An attendee evaluated Polaris: “It couldn’t be just a hair better, it had to be like this much better, and it wasn’t… not worth everything that comes with the migration.”
End users driving the push — people who migrated Sierra-to-Polaris said the common denominator was end users wanting “something that looked a little bit more modern.” Staff hired from Polaris libraries miss things from a technical perspective.
The true cost extends far beyond the contract: Aspen discovery layer migration, 72+ hours of downtime, communications team, staff training, morale. “Your staff want Polaris because it is pretty but do they want to go through all of that?”
A consortium’s ILS RFP took 9 months. Consortium constraints limit choices: “Our only two choices are Sierra or Polaris.”
Contact Derrick Brown for a Polaris demo — someone offered to show how Polaris works.
A small standalone library stopped using Sierra invoicing when their municipality switched finance systems. A year and a half later, unprocessed invoices are blocking order record deletion (~6,000 records). Can’t do global updates on status codes — would have to change each one manually. Innovative support confirmed the problem and has been manually force-clearing on their end.
Budget pressure is driving Koha interest: “We don’t have concrete plans but we are getting a lot of budget pressure to look at another ILS.”
Another attendee came from Koha to Sierra — they loved the flexibility (direct SQL querying was great).
Jeff (UNC): “We have 20 million records, almost 23 million… large library consortiums struggle with Koha and they could not handle our records.”
Jeremy (Minuteman Library Network — a Sierra consortium in Massachusetts): other MA consortiums are on Koha/Evergreen; as staff move between libraries there’s “an influx of staff who are used to open source systems… Sierra is sort of railing to them.” That said, the Minuteman Consortia office staff “are extremely happy” with Sierra.
One attendee feels locked into Lyngsoe Systems (automated materials handling / book sorter). Only certain ILS vendors support integration: Sierra supports it, SirsiDynix supports it, Polaris is working on it. This significantly limits ILS migration options.
Jeff: “The ILS you have is the best ILS.”
Victor: his library has a “sister library” on Koha — “Acquisitions and cataloging are not quite as mature as Sierra.” His advice: identify what features are essential and make sure the new ILS has them. “That kind of frames the conversation into that specific set of requirements. As opposed to like, well the other one was nice, but functionally speaking that doesn’t do anything.”
Victor’s pragmatic filter for complaints: “We have people say oh we hate Sierra… some of those opinions may be valid but it’s one person and we’re catering to over 99%.”
Jeremy: “The system you start with is kind of what you imprint on” — echoed by multiple attendees.
Jeff: “I don’t think it’s any secret that they’re not selling a lot of Sierra subscriptions in the United States. But it sounds like it is doing better overseas.” Saudi Arabia deploying Sierra for 175 libraries.
Public libraries are going Polaris — III would “absolutely encourage them to buy” Polaris for public libraries.
Roughly 2/3 Polaris, 1/3 Sierra at IUG — Jeff predicted “that’s probably going to become more lopsided.”
“One company with two competing products seems curious” — the elephant in the room about Clarivate/III having Sierra, Polaris, Millennium (legacy), and Leap all active. There are still a few Millennium customers.
The migration was a “nothing burger” — Jeff was a beta institution: staff were terrified but “Oh, new color scheme. Great.” Intentional design decision to keep it similar, but “the interface felt dated already when it came out.” “They got rid of the mountains” (Sierra splash screen reference).
The “looks old” complaint is the #1 thing Polaris fans say.
“Pretty things are usually shallow. If you focus on the UI first, the power behind it is not as strong. That’s how databases work.”
Jeff’s pushback: “Why does the look matter more than the functionality? Is it to please my younger users, my Gen Zers?”
“This is not an end user system. This is not meant to be used by someone who has never been trained before.”
Lost 55 staff due to hiring freeze — migration impossible without adequate staff. Part of Triangle Research Library Network (Duke, NC State, NC Central). Getting Rapido because partner institutions moved to Alma, but don’t have budget/staff to migrate.
Overrides are a problem — consortium/shared system admin actively discourages staff from using overrides to reduce downstream data cleanup.
Patron override coming to Vega — once it arrives, front-line staff expected to “stop using the actual Sierra client and go exclusively in Vega for everything.”
Remote desktop user reporting issues with SDA — failure to log in or initialize once or twice a week. Updating the JRE to the most recent version dramatically improved SDA startup (“night and day”), though “not perfect.”
Growing sentiment that more reliance on Sierra Web is important — one speaker noted “Leap is going to be a more sustainable platform than the Sierra desktop app.”
Some libraries are ~50-50: front desk/circ on Sierra Web, collection management staff still on SDA.
ERM (Electronic Resource Management) is bad in Sierra Web — electronic resources person at one library “hates Sierra Web” and refuses to give up the desktop app. Sierra Web only works properly in Chrome, not Firefox.
Pagination is painful in Sierra Web — editing records that get paginated is bad enough to drive users back to SDA.
One user couldn’t see expected menu functions despite having all permissions — workflows (which control dropdown menus) are configured separately from permissions.
Multiple libraries are getting “dinged” about accessibility of the classic WebPAC. Even if you don’t point patrons to it, it’s still publicly accessible, which “alarms our accessibility people.”
Libraries want to hide classic catalog from public but keep it for staff — no one has found a solution yet. Firewall approaches tried; ticket open with Innovative.
A “very small core set of patrons” still use the classic catalog and are already complaining. Catalogers “will revolt” if classic is removed entirely — staff still depend on it.
Patron registration forms are served through WebPAC — another dependency that blocks removal.
Innovative may be “working with somebody to figure out how to disable it” — uncertain.
“We fixed everything you can fix using the templates.” The remaining failures are in server-side code: “Your template calls this function and then magic happens on the back end, and the magic is broken. You can’t fix it in post.”
Some exploring Vega Discover as a WebPAC replacement. Good to see other people concerned about WCAG compliance.
Bulk updating patron records is difficult because the circ active date gets updated whenever a patron record is modified (including via API) — makes it unreliable for purging inactive patrons.
Mike Dicus (Clarivate) confirmed a new API enhancement coming: for e-vendors (Hoopla, Overdrive) validating patrons, the record won’t get its “last updated” date changed, but the circ active date can be set to indicate the patron is using e-resources. However, it does not take a date parameter to backdate. Toggle is “all or nothing.”
Action item: everyone should contact Hoopla/Overdrive to push them to adopt the new validation method.
Someone has a script workaround for this issue.
Someone implemented Cloudflare on Monday morning to stop bot/DDoS attacks — it stopped the bots but also blocked all staff from Sierra and Sierra Web. Associated resources authenticating against Sierra also broke. They were “desperately trying to get lists of IPs from different vendors” to whitelist.
Advice: become “best friends with your networking team” — use Admin Corner in Sierra to get list of currently connected IPs to feed to firewall allowlist.
Another library’s firewall upgrade broke Sierra connectivity because “they didn’t really consider Sierra before they upgraded the firewall.”
Went behind F5 for bot control starting 2024–2025, cost $30,000/year and “they weren’t really providing much after that initial catch up.” Switched to block lists and fail2ban “in a fairly robust way.”
Set up a separate hostname — public-facing domain behind F5 for bot protection, different one for internal services. Currently “hardly any bot now” on Sierra, but digital library hosts still getting hit (38K–120K bot attacks daily). Offered to share setup via email.
III can put a blocker on your Sierra host — if a client claims to be a browser version more than 3 versions old, it gets blocked. Everything rewritten to denied. Rarely catches legitimate users (maybe one every few months). When bots get rebuilt and start claiming newer versions, they just update the block. “Whack-a-mole, but it does work.”
Advantage: didn’t lock any API access or integrations because legitimate integrations don’t claim to be browser versions.
Justin: bot blocking is a game of whack-a-mole — “once the bots pretend they are version 144, then we’ll get 400,000 requests one morning” and they just block all 144s. AI can help write those rewrite rules.
Jeff: has a dedicated sysadmin who “attacks this constantly.” Offered to share fail2ban rules and set up a call with “Joe” — contact Jeff directly. Credited Justin for the old browser trick. Applied same rule sets to protect ArchivesSpace and other digital asset management systems.
III currently uses fail2ban and is moving to Cloudflare in June/July 2026. ByWater Solutions (Koha hosting) already uses Cloudflare.
| Approach | Pros | Cons |
|---|---|---|
| Cloudflare (reverse proxy/WAF) | DDoS mitigation, bot filtering, SSL termination, caching, free tier | Can block staff and integrations if not configured carefully; only HTTP |
| F5 BIG-IP | Full protocol support, session persistence | $30K/year; “weren’t really providing much” after initial setup |
| fail2ban + block lists | Free, effective for known patterns | Requires dedicated sysadmin effort; constant maintenance |
| III’s crawler blocker (old browser trick) | Simple, doesn’t break APIs/integrations | Whack-a-mole; bots adapt their version strings |
X-Forwarded-For / CF-Connecting-IPSee full guide: Cloudflare Protection for Sierra ILS — Practical Guide
Bob: order of locations served matters — he actually read the manual (hat tip to Dan and Dave Blizinski as knowledge sources).
Drives the paging list — pickup location matches the first group it encounters going down the list, so supersets must come before subsets or items will fail to page.
Issue: items getting picked up while the paging list is still being processed. Discussion around title-level priority paging and item-level vs. title-level paging — a key distinction.
| Aspect | Item-Level Paging | Title Priority Paging |
|---|---|---|
| Slip format | One slip per item | One list with all eligible items |
| Priority table | Library Priority table (0–99) | Hold Pickup Locations table, Paging Priority field (0–999) |
| Items targeted | Single item at highest-priority branch | All eligible items across multiple locations |
| Cycling/escalation | Not built-in | Automatic — cycles through priority tiers |
| Permission | 358 | 394 |
Catalogers have deep workflows baked into Sierra — record templates and macros are critical to cataloger performance. “Our catalogers will revolt” if classic is removed.
Switching to Polaris remains a hot topic in the room.
IUG 2027 will be in Boston.
--- # Sierra Year in Review URL: sierra-year-in-review.html Description: Sierra 6.4 and 6.5 release highlights: patron checkout limits, inventory check-in at circulation, Admin Corner migration, Create Lists navigation, and IMMS enhancements.A walkthrough of features delivered in the Sierra 6.4 (June 2025) and 6.5 (November 2025) releases, with a focus on customer-driven enhancements sourced from MEEP, Idea Exchange, and direct user feedback. More than half of Sierra libraries worldwide are now running either 6.4 or 6.5.
See also: Sierra Roadmap (Monday) for the May and November 2026 release plans.
The headline feature of 6.5 — originated from MEEP / Idea Exchange requests to extend the category A–D values beyond four options.
| Feature | Moved To |
|---|---|
| System status (record counts) | Admin App (web-based) |
| Restart terminal | Admin App |
| Scope menu maintenance | Sierra Client |
| Check missing items | Sierra Client |
| Batch check-in (from review files) | Sierra Client / Sierra Web |
Check Missing Items: Displays items previously marked missing whose status has since changed. Staff can right-click to view records, sort by column, and clear items individually or in bulk.
Batch Check-in: Select a review file of items to check in. Bypasses normal check-in logic (transits, holds) — a quick process to clear items from checkout status.
Scope Menu Maintenance: Update scope names and numbers directly in the client, eliminating the need for support tickets or Admin Corner.
For libraries using automated materials handling:
| Enhancement | Details |
|---|---|
| Locations served limit doubled | From 1,000 to 2,000 location codes per entry |
| SQS connection test for notices | Tests connectivity before sending notice data to LX Starter; prevents data loss |
| Accessibility improvements | Name, role, and value attributes set for fields in circulation and search screens |
| Client branding update | Glacier Point: light gray theme. Half Dome: dark theme. Switchable via Settings → Display. |
All four channels are publicly available without a login.
Two approaches to the same patron workflow — a conversation starter
Somalia Jamall — Jacksonville Public Library
Patron-facing purchase suggestion system with staff review dashboard and automated hold placement. ~400 patrons have used it in production.
GitHub · AGPL-3.0
Ray Voelker — chimpy-me / CHPL
Datasette plugin with an automated bot pipeline for evidence extraction, catalog matching, and Open Library enrichment. Part of a broader Sierra data ecosystem.
| Aspect | Jacksonville (Polaris) | chimpy-me (Sierra) |
|---|---|---|
| Patron Input | Structured form — title, author, ISBN, format dropdown, age group | Free-text field — paste an Amazon link, type a title, enter an ISBN; bot parses it |
| Staff Review | Custom React/MUI dashboard with 5 status tabs, inline editing, action buttons, toast notifications | Datasette native table UI — filtering, sorting, SQL, CSV export come free; custom update route for status changes |
| Intelligence | Nightly script searches catalog by ISBN, places holds, detects checkouts | 7-stage bot pipeline: evidence extraction (ISBN validation, URL classification, ASIN extraction), tiered catalog search, Open Library enrichment. LLM stages planned. |
| Hold Placement | Fully automated — nightly script handles Polaris two-step hold confirmation | Planned (Stage 5) — not yet implemented |
| 4 touchpoints: submission received, already owned, rejected, hold placed. PHPMailer + smtplib. | Not yet implemented | |
| Auth | Polaris API for patron + staff; hardcoded staff username list | Sierra API for patrons; separate RBAC plugin for staff (viewer / staff / admin roles, PBKDF2 passwords) |
| Data Store | MariaDB — single title_requests table |
SQLite — 6 tables with migrations, full event audit trail (request_events) |
| Security | Form validation, suggestion rate limiting | Login rate limiting, CSRF protection, PII scrubbing on outbound queries, CSV injection prevention |
| Testing | — | Full test suite (15+ files); fake Sierra API server for local dev |
| Production | ~400 patrons served at Jacksonville PL | In development |
| Deployment | Docker Compose (PHP/Apache + MariaDB) | Datasette with pip-installable plugins |
| Clever Detail | eBook/eAudiobook requests redirect patrons to Libby instead of accepting | Patron can paste an Amazon URL and the bot extracts the ASIN, finds the ISBN, searches the catalog, and enriches with cover art — all before staff sees it |
The suggest-purchase plugin is part of a set of tools for working with Sierra data through Datasette:
ETL framework — SQL-first job definitions that stream data from Sierra's Postgres into SQLite. Collection data, patron data, items in transit.
Staff authentication plugin — validates credentials against Sierra's user API, manages roles (viewer / staff / admin) and permissions.
Extracts Sierra's 18 internal user management tables (users, roles, permissions, locations, branches) into SQLite for browsing.
We're solving the same problem for different ILS platforms from different angles — structured form vs. free text, custom React dashboard vs. Datasette, complete lifecycle vs. deep enrichment pipeline. I think there's a lot we could share.
Ray Voelker — github.com/rayvoelker · github.com/chimpy-me
Kane Room · GitHub Repo
Data visualization, regex, APIs, Datasette, data lakes, privacy, AMH logs, Python CLI tools, and more. Topics spanning Sierra, Polaris, and cross-platform data work.
Presentations by Ray Voelker:
Teams built projects solving real operational problems for libraries. Six projects presented during Monday's awards session.
Hands-on Vega platform training for new and prospective Vega libraries.
Chicago Ballroom E · Opening night networking
Wes Osborn (CLC, Columbus OH) · Kansas City Room · General Track
Using AI tools (ChatGPT, Claude, Copilot) to generate SQL queries against library databases. The AI-forward entry point to Tuesday's SQL thread. Wes is a former IUG Chair (2023) and 2018 Beacon Award winner.
Emily Vieyra, Lynn Gates, Tim Mayse-Lillig · McHenry Room · Sierra Track
Michael McClellan · Chicago Ballroom G · Sierra Track
Lloyd Chittenden, Sarah Furger · Los Angeles Room · Sierra Track
Hope Harley, Katy Aranoff · Denver Room · General Track
Rapido CB deployment across SearchOhio/OhioLINK (110+ libraries, 4 ILSs), Rapido stand-alone for academics (5.5M requests, 96% fill rate). San Diego circuit next.
Jeremy Goldstein (Minuteman Library Network) · Kansas City Room · General Track
Presentation materials: GitHub repo
Martha Rice Sanders · Houston Room · Sierra Track
Elizabeth Wright · Cook Room · Gatherings Track
Roundtable on floating collection management: smart routing at check-in, bulk hold workflows via Sierra API, item movement tracking gaps, Vega Reports preview, and Idea Exchange strategy.
Carolyn Bly, Kathleen Lince · Chicago Ballroom G · General Track
Derek Brown, Sarah Kasprzak · Kane Room · Vega Track
Joel Tonyan (UCCS) · Chicago Ballroom G · Sierra Track
Joel is Director of User Experience at Kraemer Family Library, UCCS — colleague of Beacon Award winner Rhonda Glazier.
Mike Dicus · McHenry Room · Sierra Track
Sierra 6.4 & 6.5 release highlights: patron checkout limits (MEEP-driven), inventory check-in at circ desk, Admin Corner → client migration, Create Lists navigation, and more.
Rhonda Glazier · Houston Room · General Track
Bob Gaydos (Stark County District Library) · Kansas City Room · Sierra Track
Bob is a career database developer & former DBA — professional-grade SQL background.
Katie LeBlanc, Alex Vancina · Los Angeles Room · General Track
Full lifecycle of an enhancement idea: Idea Exchange submissions, working group review, point sizing, ranked-choice elections (Hare algorithm), and guaranteed 12-month delivery.
Lynn Gates · Houston Room · General Track
Taylor Fisher · Denver Room · Vega Track
Related to the Vega Interact SMS/voice notification product announced in the Sierra Roadmap.
Ashley Barey (VP Product Management, Clarivate) · Denver Room · General Track
Responsible AI framework (Transparent, Ethical, Safe), product roadmap (Data Explorer, Metadata Assistant, Acquisitions Agent), Pulse of the Library 2025 data, Q&A on vibe coding library catalogs. 25 sources.
Jovana Raskovic (Product Manager, Clarivate) · Kansas City Room · Vega Track
Unified BI platform powered by Metabase: preset dashboards (visitor, search, marketing), query builder & native SQL, OverDrive integration preview, Metabot AI proof of concept. Rollout: Discover live now, Polaris Q3–Q4, Sierra early 2027.
Stephanie Ruhe, Alex Vancina · McHenry Room · Sierra Track
Jovana Raskovic presented Vega Reports — Clarivate’s new unified business intelligence platform that brings reporting and analytics to the entire Public ecosystem. Built on Metabase (an open-source BI tool comparable to Tableau or Power BI) with a Postgres backend and a secure data lakehouse architecture, Vega Reports is included at no additional cost with a Vega Discover subscription. The session covered preset dashboards, the query builder and native SQL interfaces, an OverDrive integration preview, a Metabot AI proof of concept, and detailed rollout timelines for Discover, Polaris, and Sierra.
One intelligent BI platform unifying reporting and analytics across the Public ecosystem. Powered by a secure data lakehouse and built on Metabase — an open-source BI tool comparable to Tableau or Power BI — with a Postgres database backend. Vega Reports is included with every Vega Discover subscription at no additional cost. The platform is consortia and international ready.
Single login — ILS and Vega data unified in one place. No switching between systems to get the data you need.
AI tools and modern visualizations built into the platform. Reports can be scheduled, shared, and bookmarked.
Data protected within the secure lakehouse architecture. GDPR and CCPA compliant.
Third-party data integration (Cloudio) and engagement reporting — data sources that go beyond what the ILS alone can provide.
Four Early Access partners — Phoenix Public Library, STELLA, Mid-Hudson Library System, and New York Public Library — collaborated with the Vega Reports team over several weeks, providing hands-on feedback that shaped the product before general availability.
Vega Reports for Discover requires an active Vega Discover subscription. Polaris and Sierra customers already have LX Starter included with their ILS subscription, which enables the connection needed to access Vega Reports. LX Starter does not need to be actively used — Clarivate simply recommends having it enabled to support access to Vega Reports. Once roles are assigned, Vega Reports appears in the left-hand navigation menu within Vega Discover.
Role assignment is handled through Vega Discover User Management. Roles can be assigned at the main site, collection site, or kiosk site level.
Full access license. Main site admins get both the query builder and native SQL access. Collection site admins get query builder only (no SQL access).
View-only license. Consumers can view and interact with reports created by admins but cannot build new queries.
Three preset dashboard categories ship with Vega Reports. These dashboards are read-only and are the same for both admin and consumer roles. Data is collected using Pendo, ingested into the data lakehouse via API, and refreshed every 24 hours. Data collection begins as soon as a library enables Vega Reports, with up to one week of historical data backfilled. From there, data continues to accumulate over time to support trend analysis.
User activity across Discover — unique visitors (distinct count), visitor frequencies, and engagement patterns.
Top searches, search performance metrics, and weekly trends.
Home page interactions, click patterns, and marketing campaign effectiveness.
Sharing & filtering: Dashboards can be shared via email or PDF, and bookmarked for quick access. A site filter allows filtering by site URL — especially useful for consortia with multiple locations. Each card on the dashboard includes an info tooltip explaining the metric.
Beyond the preset dashboards, Vega Reports offers two approaches for building custom reports. Custom reports can be exported as CSV or Excel, and custom report visualizations are fully customizable.
A simple select-option menu interface — no coding required. Select a data source, join tables, add filters, summarize, and aggregate. Both data models and data tables are available. The toolbar provides: Filter, Summarize, Join data, Sort, Row limit, and Custom column.
Direct Postgres SQL access for Reports Admins at the main site level. Write and execute SQL queries against the data lakehouse for maximum flexibility.
Visualizations are available for reports built either way — Query Builder or Native SQL. Options include bar, line, pie, table, pivot table, gauge, funnel, map, and more. The platform auto-selects the best visualization based on the query results, and everything is fully customizable — colors, naming conventions, and axes can all be adjusted.
Example SQL query — aggregating Discover tracking events by type for a given year:
SELECT
tt.track_type_name,
SUM(te.num_events) AS sum
FROM "discover".track_events te
INNER JOIN "discover".track_types tt
ON te.track_type_id = tt.id
WHERE
te.last_time >= CAST('2024-01-01 00:00:00Z' AS timestamp)
AND te.last_time < CAST('2025-01-01 00:00:00Z' AS timestamp)
GROUP BY tt.track_type_name
ORDER BY tt.track_type_name ASC
Clarivate is working on integrating OverDrive checkouts data into Vega Reports for both Polaris and Sierra users. A demo was shown at the sales booth during the conference.
Unique digital checkouts, number of checkouts, and average lending period. A print copy checkout flag (yes/no) indicates whether a given title was also checked out in print within the selected timeframe.
Owning branch and checkout branch filters allow libraries to drill into circulation data by location.
The team is exploring two approaches: patron ID matching in the backend, or product ID mapping for titles. Top 100 checked-out digital titles with print copy overlap analysis will help libraries understand format preferences.
A variety of trends across time frames, popular titles, and print vs. digital overlap — giving libraries insight into how their collections are performing across formats.
Metabase includes an AI tool called Metabot that enables natural language interaction with reports and data. Currently, Metabot does not support self-hosted environments (which is how Vega Reports operates), so this is a proof of concept only — not shipping yet. Jovana showed a video demo using sample data to illustrate the capabilities.
Ask questions in natural language and get answers from your data through a conversational interface.
Create reports using the query builder via plain English prompts. Step-by-step guided report creation walks users through the process.
Generate SQL queries from natural language prompts — no need to know Postgres syntax.
Analyze and ask questions about existing charts. Metabot can also identify and fix errors in SQL code. Reports can be saved directly to a personal collection.
Jovana on AI: “This is the future. We can’t run away from it. As long as you run away from something, it’s gonna get you sooner rather than later.”
The first phase of the rollout is complete. Additional releases of Vega Reports for Discover are continuing, with the goal of ensuring that all current Vega Discover subscribers receive access by the end of Q2 2026. Monthly releases will continue with the Vega Suite thereafter.
Future plans: Staff Audit data, Programs data, and Mobile data integration. The team is also considering adding Vega LX Starter data.
Early Access: Q3 2026. Delivery: Q4 with Polaris Release. The team is actively seeking early access partners.
Focus: Simply Reports restoration plus eContent and circulation data. OverDrive integration in the same timeline if possible. A survey was sent and received 127 responses — strong demand for circulation reports. Will include dashboards and a reporting folder with list reports.
Early Access: Q3–Q4 2026. Release: Early 2027. The survey has not yet been sent — Jovana is collecting feedback now and plans to send the survey in the coming weeks.
Focus: Web Management reports and Decision Center analysis. Not all Sierra users actively use Web Management reports — many are focused on Decision Center, which will be incorporated into the platform.
What Sierra-specific customers should know about Vega Reports:
Product Manager for Vega Reports, based in the Belgrade office. Almost one year at Clarivate, with over six years of experience in analytics.
Development Manager for Vega Reports. Leads a small development team building and maintaining the platform.
Dashboard exports are limited to PDF or email only. Custom reports can be exported as CSV or Excel.
The database backend is Postgres. Native SQL queries use standard Postgres syntax.
Direct integrations with external BI tools (e.g., connecting your own Tableau instance) are not currently available, but the team is exploring the possibility.
Yes — you can schedule reports to be delivered to individuals on particular days.
Not being considered at this time. Jovana: “Let’s take one step at a time.”
Pendo is a product analytics and user-engagement platform used by SaaS companies to understand how customers interact with their software. Clarivate uses Pendo to instrument Vega Discover — capturing the usage events that ultimately flow into Vega Reports. Pendo is the instrumentation layer in the pipeline; Metabase is the BI layer that surfaces it.
Founded in 2013, headquartered in Raleigh, North Carolina. Publicly referenced customers include Verizon, Morgan Stanley, Salesforce, Okta, LabCorp, OpenTable, and Zendesk. Pendo competes with Mixpanel, Amplitude, and Heap in the product-analytics space.
Pendo embeds a tracking snippet into a web or mobile application to capture user behavior — page views, clicks, search terms, feature usage, and session patterns. Beyond analytics, the platform also offers in-app guidance (tooltips, walkthroughs, announcements) and user feedback collection (NPS, in-app surveys). For the Vega Reports pipeline, the behavioral-analytics capture is the piece that matters.
Pendo captures raw Vega Discover usage events. Clarivate pulls those events out via Pendo’s API into the data lakehouse on a 24-hour cadence. Metabase then queries the lakehouse to power the dashboards and custom reports that library staff see inside Vega Reports. Understanding this layering helps explain a few behaviors: the 24-hour refresh is set by the ingest job from Pendo into the lakehouse, and the “up to one week of historical backfill” on enablement reflects how far back Clarivate can pull existing Pendo events when a library turns Vega Reports on.
Activity in Vega Discover → captured by the Pendo snippet → ingested via Pendo’s API into Clarivate’s data lakehouse (refreshed every 24 hours) → queried and visualized by Metabase → surfaced to admins and consumers as Vega Reports.
Chicago Ballroom A · General Track
Sierra commitment, Vega unification, Alma Specto, mobile app strategy, public library headwinds, communication improvements. Full notes →
Derek Brown, Bob Gaydos, Wes Osborn, Mike Fields, Tyler Works · Chicago Ballroom G · General Track
Gale Forster, Tim Sills · McHenry Room · Sierra Track
Jeremy Goldstein · Kane Room · General Track
Ann Langlois · Houston Room · Sierra Track
Bryan Yostos, Luke Wood · Chicago Ballroom G · Vega Track
Taylor Fisher · Chicago Ballroom A · Vega Track
Related to the Vega Promote July launch announced in Monday's opening.
Jason Boland (Clarivate) · Chicago Ballroom G · Sierra Track
Vendor-supported onboarding to Sierra APIs. Jason is a Senior Library Training Consultant covering Sierra, Polaris, and Vega.
Elaine Sloan, Boise Public Library · Houston Room · General Track
Notes available
Jason Bedsaul, Molly Lisowsky · McHenry Room · General Track
Caitlin Spears · Chicago Ballroom A · General Track
Justin Newcomer (RIT) · Cook Room · Gatherings/Sierra Track
SAML SSO for Sierra staff auth, MFA practices, Keycloak unification plans, cyber insurance implications. Includes a technical implementation guide. Full notes →
Notes available
Lynn Gates · Kansas City Room · General Track
Ashley Barey · Chicago Ballroom G · Vega Track
Elaine Sloan, C Mulder, Sarah Kasprzak · Kane Room · Vega Track
Jeff Campbell, Stephanie Brew · Chicago Ballroom A · Sierra Track
Migration debates (Sierra vs. Polaris/Koha), bot protection & Cloudflare, paging lists, SDA vs. Sierra Web, WCAG accessibility, circ active. Includes Cloudflare protection guide. Full notes →
Notes available
Daniel Messer, Wes Osborn · Chicago Ballroom G · Polaris Track
C Mulder, Allison Sartwell · Kane Room · General Track
Last year’s panel featured Yariv Kursh (SVP, General Manager), Tom Jacobson (VP, Product Management), and Lester Owencroft (VP, Product Marketing). Key takeaways:
Source: Insights from IUG 2025 Executive Leadership Panel (iii.com)
Los Angeles/Miami/Scottsdale Rooms · RSVP Required