Forum - Bulk update holdings

Tagged: ,

This topic contains 4 replies, has 3 voices, and was last updated by Jay Gattuso 5 hours, 28 minutes ago.

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
  • #63496
    Jay Gattuso

    I have to make some cleans to the “852” field of several thousand holding records. I have their ID, and the current 852 field via an Analytics ‘report’.

    Whats the most efficient way of updating these records? Is there a bulk import, and if so, whats the form of the data needed to come back into ALMA?

    Tami Fuches

    Hi Jay,
    You can use the update holdings record API – see
    Please see this blog:
    It is about updating items, but a similar approach can be done for updating holdings.


    Jay Gattuso

    Hi Tamar,

    I’ll look into this approach – but this looks like a one-by-one method. Updating just one of the many sets we have of 50k holdings will take days to complete.

    Can I send more than one holding at a time?

    Is there a more bulk suitable method like the import profiles approach for bibs records?



    Ori Miller

    Hi Jay,
    The Update-Holding API can only process one record at a time (and the same goes for all of Alma’s APIs).
    If you update 50k Holdings sequentially it would take 15-20 hours.
    You could however run a few processes of your script, each with a different input file. The API Gateway allows up to 25 requests at the same second, so it should be safe to run with up to 15-20 processes in parallel. If you do, check the script’s log file for error messages which might be returned if somehow the gateway did receive too many requests at once and blocked some of them.
    You can also write a script which forks to multiple threads, as demonstrated in this blog for example:
    Hope this helps,
    Alma API Team

    Jay Gattuso

    Hi Ori,

    Thanks for you reply – thats really useful! I’ll take a look today.

    The holdings calls seem particularly limited – is there a non API bulk method that doesn’t require all the extra threading/async overheads to deal with large sets?



Viewing 5 posts - 1 through 5 (of 5 total)

You must be logged in to reply to this topic.