Transfer Holdings and Items

The Transfer Holdings and Items API allows users to move an item from one bib-holding record to another bib-holding record or move a holding from bib record to another bib record. The request internally changes the linking of the item or holding from source to destination. It also marks the bib or bib-holding record as deleted if there are no other holdings or items associated with them. This way they get picked up as part of the deleted feed during Export Data Dump.

The Transfer Holdings and Items API will not handle bound-with records. Ideally, if there are changes to bound-with records, the best way to fix the data is to deaccession the record, fix the record in the ILS and reaccession them with a new barcode. The transfer API also doesn't work when records are transferred from or to a deaccessioned record.

Request - Transfer Item
{
  "institution": "Institution_name", // The institution to which the item to be transferred belongs
  "itemTransfers": [
    {
      "barcode": "32101086866140", // The item barcode that needs to be transferred
      "source": {
        "owningInstitutionBibId": "1421", // The source bib id is the bib id from which the item needs to be transferred
        "owningInstitutionHoldingsId": "1621", // The source holdings id is the holdings id from which the item needs to be transferred
        "owningInstitutionItemId": "6320902" // The id of the item that is to be transferred
      },
      "destination": {
        "owningInstitutionBibId": "53624", // The destination bib id is the bib id to which the item is being transferred
        "owningInstitutionHoldingsId": "59753", // The destination holdings id is the holdings id to which the item is being transferred
        "owningInstitutionItemId": "6320902" // The id of the item that is transferred. It is the same in both source and destination
      },
    }
  ]
}


Response - Transfer Items
{
  "message": "Success",
  "holdingTransferResponses": [],
  "itemTransferResponses": [
    {
      "message": "Successfully relinked", // Success Message
      "itemTransferRequest": {
        "source": {
          "owningInstitutionBibId": "1421",
          "owningInstitutionHoldingsId": "1621",
          "owningInstitutionItemId": "6320902"
        },
        "destination": {
          "owningInstitutionBibId": "53624",
          "owningInstitutionHoldingsId": "59753",
          "owningInstitutionItemId": "6320902"
        }
      }
    }
  ]
}


Alternate Response - Transfer Item
{
  "message": "Failed",
  "holdingTransferResponses": [],
  "itemTransferResponses": [
    {
      "message": "Source item is not under source holding", // Failure Message when the source item is not under source holding
      "itemTransferRequest": {
        "source": {
          "owningInstitutionBibId": "1421",
          "owningInstitutionHoldingsId": "1621",
          "owningInstitutionItemId": "6320902"
        },
        "destination": {
          "owningInstitutionBibId": "53624",
          "owningInstitutionHoldingsId": "59753",
          "owningInstitutionItemId": "6320902"
        }
      }
    }
  ]
}


Alternate Response - Transfer Item
{
  "message": "Failed",
  "holdingTransferResponses": [],
  "itemTransferResponses": [
    {
      "message": "Source and Destination item ids are not matching", // When the item id across source and destination are different
      "itemTransferRequest": {
        "source": {
          "owningInstitutionBibId": "1421",
          "owningInstitutionHoldingsId": "1621",
          "owningInstitutionItemId": "6320902"
        },
        "destination": {
          "owningInstitutionBibId": "53624",
          "owningInstitutionHoldingsId": "59753",
          "owningInstitutionItemId": "1234"
        }
      }
    }
  ]
}


Request - Transfer Holdings
{
  "institution": "Institution_name",
  "holdingTransfers": [
    {
      "destination": {
        "owningInstitutionBibId": "1421", // The source bib id is the bib id from which the holding id is being moved.
        "owningInstitutionHoldingsId": "59753" // The holding id is the id that is to be moved.
      },
      "source": {
        "owningInstitutionBibId": "53624", // The destination bib id is the bib id to which the holding id is moved.
        "owningInstitutionHoldingsId": "59753" // The holding id is the id that is to be moved. This is the same both in source and destination.
      }
    }
  ]
}


Response - Transfer Holdings
{
  "message": "Success",
  "holdingTransferResponses": [
    {
      "message": "Successfully relinked", // Success Message
      "holdingsTransferRequest": {
        "source": {
          "owningInstitutionBibId": "53624", 
          "owningInstitutionHoldingsId": "59753" 
        },
        "destination": {
          "owningInstitutionBibId": "1421", 
          "owningInstitutionHoldingsId": "59753" 
        }
      }
    }
  ],
  "itemTransferResponses": []
}


Alternate Response - Transfer Holdings
{
  "message": "Failed",
  "holdingTransferResponses": [
    {
      "message": "Source holdings is not under source bib", // Failure Message. When holdings are not under the source bib.
      "holdingsTransferRequest": {
        "source": {
          "owningInstitutionBibId": "1421",
          "owningInstitutionHoldingsId": "59753"
        },
        "destination": {
          "owningInstitutionBibId": "53624",
          "owningInstitutionHoldingsId": "59753"
        }
      }
    }
  ],
  "itemTransferResponses": []
}