Batch Update Hold Requests

POST /api/.../holds/batch

Update pickup branch, pickup area, and/or hold till date for multiple hold requests in a single call.

Request Information

DtoHoldsBatchUpdate
Property Type Nullable Description
HoldIDs List<int> No List of hold request IDs to update.
Update DtoHoldUpdate No Update values to apply to each hold request in HoldIDs.
DtoHoldUpdate
Property Type Nullable Description
PickupBranchID Integer Yes Pickup branch ID for updated hold requests. If null, branch is not changed.
PickupAreaID Integer Yes Pickup area ID for updated hold requests. If null, area is not changed.
HoldTillDate DateTime Yes Hold till date for updated hold requests. If null, date is not changed.
ExpirationDate DateTime Yes Expiration date for updated hold requests. If null, date is not changed.
Example
application/json, text/json
{
    HoldIDs: [12345, 12346, 12347],
    Update:
    {
        PickupBranchID: 10,
        PickupAreaID: 4,
        HoldTillDate: "3/24/2026"
    }
}

Response Information

HoldsBatchUpdateResult
Property Type Nullable Description
SuccessfulUpdates Integer No Number of hold requests updated successfully.
FailedUpdates Integer No Number of hold requests that failed to update.
ErrorMessages List<string> No Failure messages returned by workflow processing.
Example
application/json, text/json
{
    SuccessfulUpdates: 2,
    FailedUpdates: 1,
    ErrorMessages:
    [
        "Patron is blocked."
    ]
}

HTTP Response Codes

Code Description
200 OK. Request processed.
400 FAILURE. Validation or processing error.

Required Permissions

    CR_HoldRequestBulkChange_Allow