Copy Resource

URLs and Supported Requests

The Copy Resource supports five operations.

Operation Resource URL HTTP METHOD
Create https://circ.sd00.worldcat.org/LHR POST
Read https://circ.sd00.worldcat.org/LHR/{copyId} GET
Update https://circ.sd00.worldcat.org/LHR/{copyId} PUT
Delete https://circ.sd00.worldcat.org/LHR/{copyId} DELETE
Search https://circ.sd00.worldcat.org/LHR?q=oclc:{OCLC_number} GET

HTTP Accept Types

Search

HTTP Request Content Types

Schema

When making a PUT/POST request an XML payload must be included. More information about the proper structure of XML made as part of POST and PUT requests can be found here with the Copy Schema File.

Parameters

Below is a list of all the possible parameters that can be used as part of the copy resource:

Parameter Required Description
q No Refer to the query indices table below. Available parameters are: oclc or barcode. The values for these parameters must either be an OCLC number of barcode number respectively.
startIndex

 

No

 

What index item to start the collection at.
itemsPerPage No How many collection items to return per request.

Query Indices

Index Description
oclc Number of OCLC item or items you want to retrieve
barcode item-level barcode for circulating materials

Copy Resource Fields

Below is a table listing all the allowed values and content of each data type in the Collection Management Schema, this should be used as a quick reference into required attributes and values, however more in depth details can be found using the accompanying XSD file.

NAME RESTRICTIONS MAY CONTAIN DESCRIPTION
recordType

SINGLE_PART

MULTI_PART

SERIAL

UNKNOWN

  The characteristics and definitions of the components of the record.
receiptStatus

ON_ORDER

CURRENTLY_RECEIVED

NOT_CURRENTLY_RECEIVED

RECEIVED_AND_COMPLETE _OR_CEASED

OTHER_RECEIPT_OR_     ACQUISITIONS_STATUS

UNKNOWN

  Indicates the current receipt or acquisitions status of a copy (008/06).
noteVisibilityType

PUBLIC

STAFF

  Enumeration of the types of note describing an item.

noteType

Required attribute:(attr:noteVisibilityType) type:

    A user defined note that can be attached to a copy or an individual holding.
holdingLocationType String that must match  pattern "[A-Z]{4}"   Represents a holding location. OCLC cataloguing rules require that the holding location is a single 4-character code. Corresponds to 852$b.

shelvingDesignation Type

Required attribute:(attr:shelvingSchemeType) scheme

 

(string) prefix

(string) information

(string) itemPart

(string) suffix

The designation used as the shelving scheme for an item. The value of the shelving scheme determines which fields are used.
itemCategoryType

BASIC

SUPPLEMENTARY_MATERIAL

INDEX

  The different categories of material for items.
pieceDesignationType String that must match pattern "[^BU].*"   Represents the institution-defined piece designation for an item. This is the "barcode". It should not start with either a capital 'B' or 'U'.
currencyType String that must match pattern "[A-Z]{3}"   The ISO 4217 currency code for representing the currency of a monetary amount. Categorised by 3 capital letters. The current valid 3-letter codes can be found at http://www.bsi-global.com
costType  

(currencyType) currency

(nonNegativeInteger) amount

(string) qualifier

A cost associated with an item, such as the original purchase price, or the amount to bill a patron if the item is lost.

captionEntryType

Required attribute:(attr:string) label

    The label and value pair for a caption describing a numeric, alphabetic, and/or date designation for an item. The label is defined as an attribute on the element and the value for the label is defined by the element contents.
captionType  

(string) description

(captionEntryType) enumeration

(captionEntryType) chronology

(nonNegativeInteger) id

(nonNegativeInteger) sequence

A set of alphanumeric or date labels (i.e. enumeration and chronology) for an item. Also includes free-text version when standard enumeration and chronology cannot be used to adequately describe the item.

holdingType

Required attraibute:(attr:itemCategoryType) category

 

(pieceDesignationType) pieceDesignation

(noteType) note

(string) useRestriction

(costType) cost

(string) temporaryLocation

(captionType) caption

The information relating to a particular holding associated with a copy.
copyType  

(anyURI) institution

(anyURI) bib

(dateTime) lastUpdateDate

(recordType) recordType

(receiptStatusType) receiptStatus

(integer) copyNumber

(noteType) note

(holdingLocationType) holdingLocation

(string) shelvingLocation

(string) previousShelvingLocation

(shelvingDesignationType) shelvingDesignation

(holdingType) holding

(anyURI) id

A specific instance within a library collection of a bibliographic description. May consist of multiple items in the case of multi-volume sets and seri

Example URLs

Read a collection of copies with OCLC number 33252178:

GET https://circ.sd00.worldcat.org/LHR/?q=oclc:33252178

Read a single copy with ID 55171589:

GET https://circ.sd00.worldcat.org/LHR/55171589

Notes

LHR Mapping

Collection Management Platform API Fields MARC21 Holdings
/institution       852$a
/bib       004
/lastUpdateDate       Stored in OCLC Metadata on the record
/recordType       Leader 06
/receiptStatus       008 06
/copyNumber       852$t
/note[] text()    

If @type = PUBLIC then 852$z
If @type = STAFF then 852$x

  @type    
/holdingLocation       852$b
/shelvingLocation       852$c
/previousShelvingLocation[]       852$d
/shelvingDesignation @scheme     852i1
  /prefix[]     852$k
  /information     If @scheme = SHELVING_CONTROL_NUMBER then 852$j
If @scheme = TITLE then 852$l
Otherwise 852$h
  /itemPart[]     852$i
  /suffix[]     852$m
/holding @category     Computed depending on which fields store the data
  /pieceDesignation[]     If @category = BASIC then 876$p
If @category = SUPPLEMENTARY_MATERIAL then 877$p
If @category = INDEX then 878$p
  /note[] text()  

If @category = BASIC and @type = PUBLIC then 876$z
If @category = BASIC and @type = STAFF then 876$x
If @category = SUPPLEMTARY_MATERIAL and @type = PUBLIC then 877$z
If @category = SUPPLEMTARY_MATERIAL and @type = STAFF then 877$x
If @category = INDEX and @type = PUBLIC then 878$z
If @category = INDEX and @type = STAFF then 878$x

    @type  
  /useRestriction[]     If @category = BASIC then 876$h
If @category = SUPPLEMENTARY_MATERIAL then 877$h
If @category = INDEX then 878$h
  /cost[] /currency  

If @category = BASIC then 876$c
If @category = SUPPLEMENTARY_MATERIAL then 877$c
If @category = INDEX then 878$c

    /amount  
    /qualifier  
  /temporaryLocation[]     If @category = BASIC then 876$l
If @category = SUPPLEMENTARY_MATERIAL then 877$l
If @category = INDEX then 878$l
  /caption @id   If @category = BASIC then All of 853$8, 863$8, 866$8 And 876$8
If @category = SUPPLEMENTARY_MATERIAL then All of 854$8, 864$8, 867$8 And 877$8
If @category = INDEX then All of 855$8, 865$8, 868$8 And 878$8
    @sequence   If @category = BASIC then All of 863$8, 866$8 And 876$8
If @category = SUPPLEMENTARY_MATERIAL then All of 864$8, 867$8 And 877$8
If @category = INDEX then All of 865$8, 868$8 And 878$8
    /description   If @category = BASIC then 866$a or 876$3
If @category = SUPPLEMENTARY_MATERIAL then 867$a or 877$3
If @category = INDEX then 878$a or 878$3
    /enumeration[] /value If @category = BASIC then 863$a, 863$b, 863$c and 863$d
If @category = SUPPLEMENTARY_MATERIAL then 864$a, 864$b, 864$c and 864$d
If @category = INDEX then 865$a, 865$b, 865$c and 865$d
      /label If @category = BASIC then 853$a, 853$b, 853$c and 853$d
If @category = SUPPLEMENTARY_MATERIAL then 854$a, 854$b, 854$c and 854$d
If @category = INDEX then 855$a, 855$b, 855$c and 855$d
    /chronology[] /value If @category = BASIC then 863$i, 863$j, 863$k and 863$l
If @category = SUPPLEMENTARY_MATERIAL then 864$i, 864$j, 864$k and 864$l
If @category = INDEX then 865$i, 865$j, 865$k and 865$l
      /label If @category = BASIC then 853$i, 853$j, 853$k and 853$l
If @category = SUPPLEMENTARY_MATERIAL then 854$i, 854$j, 854$k and 854$l
If @category = INDEX then 855$i, 855$j, 855$k and 855$l
/id       001

Example

Enumeration/chronology fields

  1. If a record has multiple types of enumeration/chronology, each barcode with the same caption id needs a unique sequence number. Failing to do this will result in an error that may remove ALL enumeration/chronology information from the record

We are a worldwide library cooperative, owned, governed and sustained by members since 1967. Our public purpose is a statement of commitment to each other—that we will work together to improve access to the information held in libraries around the globe, and find ways to reduce costs for libraries through collaboration. Learn more »