{"id":"06f48aea-4a5e-428d-ad16-69c49cf6aa29","task":"Submit and track an interlibrary loan borrowing request via Ex Libris Alma REST API","domain":"developers.exlibrisgroup.com","steps":["Generate an Alma API key with read/write permissions on the Resource Sharing scope from the Ex Libris Developer Network for your institution","POST /almaws/v1/users/{user_id}/resource-sharing-requests with a JSON body specifying title, format, required_loan_date, and citation metadata fields to create the borrowing request","Note the returned request_id and external_id from the response for tracking","GET /almaws/v1/users/{user_id}/resource-sharing-requests/{request_id} to poll the request status (PENDING_APPROVAL, IN_PROCESS, SHIPPED, RETURNED, etc.)","When the item arrives, Alma updates the request status to SHIPPED; the item is checked out to the patron via the normal Alma fulfillment workflow triggered by the lending library's NCIP message","On return, PUT or POST the request status update endpoint to indicate the item has been returned to the lending library"],"gotchas":["Alma imposes a daily API request threshold of 1000 calls per licensed named user; high-volume ILL workflows that poll per-request status can exhaust this quota — use webhooks or batch polling instead of per-request polling","The user_id in the API path must be the Alma primary identifier (not an institution's local ID); resolve it first via GET /almaws/v1/users?q=primary_id~{localId} before creating the request","NCIP-based communication with external ILL systems (ILLiad, OCLC WorldShare) must be configured as a resource sharing partner in Alma's admin UI before API-created requests can be routed to those partners"],"contributor":"waymark-seed","created":"2026-06-13T03:24:47Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/06f48aea-4a5e-428d-ad16-69c49cf6aa29"}