campusM APIs

Calling campusM APIs

campusM APIs are implemented in the REST style. This means that you can call these APIs from a variety of development environments, and even from your browser. In your external application, a call to an campusM API should be directed to the geographic location of your institution, as follows:

RegionURL
North Americahttps://api-na.hosted.exlibrisgroup.com
Europehttps://api-eu.hosted.exlibrisgroup.com
Asia Pacifichttps://api-ap.hosted.exlibrisgroup.com

When you call a campusM API, you must provide the API key and your institution’s unique campusM Org code to authenticate the request. Each campusM institution receives a unique API key and the associated Org ID from their Ex Libris support or project team for each of their apps, including Preview. If you are missing your organization’s API key or Org Code, please raise a support case.

The API key can be provided as a URL parameter, for example:

https://api-na.hosted.exlibrisgroup.com/campusm/​v1/​addons/​checkInReport?apikey=lx7abcdefghijklmnop

Alternatively, you can send the API key as an Authorization header as follows:

Authorization: apikey {APIKEY}

The following APIs should be accessed through the API Gateway

Resources

MethodDescription
POST /​campusm/​v1/​axis2v3/​sendAlertsSend Alerts
POST /​campusm/​v1/​axis2v3/​setRolesUpdatedRefresh User Roles
GET/POST /​campusm/​v1/​addons/​checkInReportCheck In Report
GET/POST /​campusm/​v1/​addons/​insightExportDataInsight Export Data

 

API Governance Thresholds

We want developers to create compelling applications and integrations, but we also want the campusM service to always provide the best experience possible for its users.

To maintain optimum performance and ensure that infrastructure resources are not disproportionately used in an inefficient manner, campusM has Governance Thresholds in place. Governance thresholds ensure that no single institution negatively impacts other institutions, prevent performance degradation and can help reduce the risks of malicious attacks.

For APIs, campusM has two types of governance thresholds:

  • Daily API Request Threshold
  • Concurrent API Request Threshold

Ex Libris designed the API governance thresholds after extensive analysis of real customer scenarios and we expect the thresholds to be high enough that reasonable use of the APIs should not exceed the thresholds.

Daily API Request Threshold

The Daily API Request Threshold currently permits up to 100,000 API calls per day per institution (across all campusM API types). If this threshold is reached, the caller will have to retry these API requests the next day. Note that end of the day is midnight GMT.

If there is a special and very urgent need to enable more API calls contact Ex Libris 24X7 HUB.

Concurrent API Request Threshold

The Concurrent API Request Threshold permits up to 25 API calls per institution per second. This threshold applies to all API requests to the Ex Libris API gateways. API requests exceeding the Concurrent API Request Threshold will be blocked with the following error (HTTP code 429):

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<web_service_result xmlns="http://com/exlibris/urm/general/xmlbeans">
  <errorsExist>true</errorsExist>
  <errorList>
    <error>
      <errorCode>PER_SECOND_THRESHOLD</errorCode>
      <errorMessage>HTTP requests are more than allowed per second. See https://goo.gl/2x1c1M </errorMessage>
    </error>
  </errorList>
</web_service_result>

Applications which receive the above error should take steps to reduce concurrent usage.