Uploaded image for project: 'mod-circulation'
  1. mod-circulation
  2. CIRC-1546

POST /circulation/requests requires more fields than before



    • EPAM-Veg Sprint 142
    • 5
    • Vega
    • Lotus (R1 2022) Hot Fix #2
    • Yes
    • Cornell
    • Third party component integration


      Overview: Starting with the Lotus release, the /circulation/requests POST endpoint seems to require more fields than it used to, which breaks some pre-existing API integrations (e.g. VuFind). Previously, you could omit "requestLevel" and provide just an "itemId" value, and the request would be placed. Now, "requestLevel", "holdingsRecordId" and "instanceId" are mandatory. Can't the holdings and instance IDs be inferred from the item ID? Can't requestLevel default to "Item" if omitted?

      Steps to Reproduce:

      If I try to place a hold in VuFind 8.0 against FOLIO Lotus, I get the error:

      requestLevel must be one of the following: "Item"

      If I modify the code to add requestLevel = Item, I get the error:

      Cannot create a request with no instance ID

      If I add the instance ID, I next get the error:

      Cannot create a request with item ID but no holdings record ID

      If I add the holdings ID, everything works... but are all these extra values really necessary?

      Additional Information:
      See this VuFind pull request, which works around the problem – I'm happy to merge this if it is actually necessary, but if this is indeed a FOLIO bug, it would be helpful to know that: https://github.com/vufind-org/vufind/pull/2464

      TestRail: Results


          Issue Links



                OleksandrVidinieiev Oleksandr Vidinieiev
                demiankatz Demian Katz
                0 Vote for this issue
                15 Start watching this issue



                  TestRail: Runs

                    TestRail: Cases