How does Alma support APIs ?
The Alma Developers Network is based on an extensible architecture that supports the seamless addition of new integrations via APIs and web services. Alma Developers utilizes web services and Restful APIs for on-line integrations with application, including but not limited to integrations with financial systems, Student Information Systems, Bursar systems, LMS and more.
The Developer Network not only refreshed the technology used for developing code extensions, it has provided a brand new, open environment for sharing, experimenting, and managing the lifecycle of developments that extend Ex Libris products. In addition, it offers new ways for users to access, share and collaborate around APIs and developments. The Developer Network consists of dedicated sections for each Ex Libris product, and
- API Docs: Comprehensive API and integration documentation and technical guides
- Codes and Apps: an advanced portal for sharing, experimenting, and managing the lifecycle of developments, hosted on GitHub
- Tech Blog: Advice, technical guidance, and best practice information offered by developers and Ex Libris development team members
- API Console: a testing environment (sandbox) in which users will be able to experiment with Ex Libris APIs before implementing them in their solutions.
- Forums: Online forums in which developers can share ideas, questions, and answers about how to get the most value from Ex Libris APIs
- API Dashboard: A tool enabling developers to manage their implementations of open interfaces and view usage analytics.
Alma routinely handles over one million API transactions daily.
What permissions are required to use APIs?
Access to activating Alma APIs using the institution’s data is controlled by the institution’s administrator using the Developer’s Network platform. Only users for whom the institution’s administrator has chosen to allow access to the APIs will be granted the required API key for activated the APIs.
In addition, the administrator may choose which APIs each developer will have access to, and whether the access will be for a read action only or for a write action as well.
Please refer to https://developers.exlibrisgroup.com/alma/apis#starting for more information.
What APIs are available?
APIs that are available for integration with Alma and Primo can be explored on the freely accessible Developers Network - https://developers.exlibrisgroup.com/. Alma RESTful APIs provide access to data and workflows stored in Alma.
Customers can view all of the documentation with no need for logging into the Developer Network. However, to try out the APIs or to use them to access data, a Developer Network account is needed.
Following is a screenshot from the Alma section of the Developers Network :
Are there any limitations on the number of API calls that can be made in a specific time period?
The Daily API Request Threshold permits 1000 API calls per number of named user licenses per day (the threshold is not per-user basis - it is enforced against the aggregate of all API calls made by the institution in a 24 hour period). For example, for an institution with a 100 named users license, the Daily API Request Threshold is 100,000 requests (100 named users X 1000 calls = 100,000 daily requests).
For more details refer to API Governance Thresholds on the Developer Network.
Does Alma support APIs for bi-directional data exchange (read/write)?
Alma supports a wide range of RESTful APIs, allowing read/write access to all major data elements and workflows of the system, including APIs for management of:
- Repository records – including BIB records, HOL records, physical items and digital representations (planned)
- User record
- Acquisition related records – including invoices, funds, purchase order lines and vendors
- Courses and reading lists
- Analytic reports
A full list may be viewed in https://developers.exlibrisgroup.com/alma/apis
Additionally, export jobs may be run to export bibliographic records, as well as physical items and electronic portfolios in a range of formats such as binary format, XML etc. Likewise, import profiles may be set to import metadata records and purchase orders into the system.
What change control processes are there for APIs?
Alma APIs are versioned, and the version number is contained in the URL of the API resource (i.e. /almaws/v1/users). All changes to APIs within a version number are fully backwards compatible. If breaking changes are required in the future, new versions of the API resources will be created, with the previous version being supported for a period of not less than one year.
Is API training provided for staff?
We do not offer specific API training. The APIs are however well documented on our developers’portal https://developers.exlibrisgroup.com/.
In case of particular technical questions or issues we do of course provide support.
Does Alma provide support for querying of data structures, against all tables and fields?
As a Cloud based multi-tenant solution, access to data is made through the use of a well-defined interfaces such as APIs, reporting and extract capabilities. Alma provides several ways in which users can access their data. This includes the use of Alma Analytics to generate reports on wealth of data sources in Alma. Using Alma Analytics detailed documentation, user can understand the structure of the data elements in Alma analytics and generate repots based on that. Below is an example of a reporting subject are data structure diagram:
Another mean to access data is through the use of Alma APIs that allows the query and update of wide range of data elements in Alma. Each API is described in details and includes the data structure it can query – please see below example of Users API data structure as an example (please refer to our developer network for more info on our APIs at: https://developers.exlibrisgroup.com/alma ).
Data Extract is another way in which users can query the data by using Alma extract capabilities to extract bibliography and holding data out of Alma. This is done by using Alma's rich query capabilities to define the records to be extracted.