openapi: 3.0.2
info:
version: 1.0.6
title: WorldCat Entity Data Bibliographic Resources Manage Bibliographic Records API
description: WorldCat Entity Data
servers:
- url: https://id.oclc.org/worldcat
description: PROD
tags:
- name: Manage Bibliographic Records
paths:
/worldcat/manage/bibs/validate/{validationLevel}:
post:
tags:
- Manage Bibliographic Records
summary: Validate a Bibliographic Record
description: Given a Bibliographic record, apply the validation rules that conform to MARC standards.
operationId: validate-a-bib
parameters:
- name: validationLevel
in: path
description: Level at which to validate records
required: true
schema:
type: string
default: validateFull
enum:
- validateFull
- validateAdd
- validateReplace
requestBody:
description: The Bibliographic record to apply validation on.
required: true
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
MARCXML:
$ref: '#/components/examples/bib-marcxml-new'
application/marc:
schema:
type: string
examples:
MARC21:
$ref: '#/components/examples/bib-marc-new'
responses:
'200':
description: Validation was successfully applied to the Bibliographic record.
content:
application/json:
examples:
success:
summary: Valid Bibliographic Record
value:
status:
summary: VALID
description: The provided Bib is valid
'400':
description: Bad request. The request is unacceptable.
content:
application/json:
examples:
missing-control-number:
summary: Control Number is Missing
value:
status:
summary: BIB_LACKS_CONTROL_NUMBER
description: Record is missing a control number
multiple-errors:
$ref: '#/components/examples/validate-multiple-errors'
'401':
$ref: '#/components/responses/unauthorized'
'403':
$ref: '#/components/responses/403-forbidden-url'
'406':
$ref: '#/components/responses/406-accept-header-unacceptable'
'500':
$ref: '#/components/responses/500-internal-server-error'
security:
- worldcat_metadata_auth:
- WorldCatMetadataAPI:manage_bibs
/worldcat/manage/bibs/current:
get:
tags:
- Manage Bibliographic Records
summary: Retrieve the current OCLC Numbers from WorldCat.
description: Given one or more OCLC Numbers, check WorldCat for those numbers. It will return the most current OCLC Number(s) associated w/ the OCLC Number(s) provided. If an OCLC Number does not exist or is invalid, a result of null is returned for the requested number.
operationId: get-current-oclc-number
parameters:
- $ref: '#/components/parameters/oclcNumberListReq'
responses:
'200':
description: The current OCLC Numbers were retrieved successfully.
content:
application/json:
examples:
success:
value:
controlNumbers:
- requested: '1'
current: '1'
- requested: '261176486'
current: '311684437'
- requested: '999999999999'
current: null
'400':
description: Bad request. The request was unacceptable.
content:
application/json:
examples:
bad-control-number-provided:
summary: Bad Control Number
value:
type: BAD_REQUEST
title: Unable to perform retrieve the current OCLC Numbers from WorldCat.
detail: No current found control number
'401':
$ref: '#/components/responses/unauthorized'
'403':
$ref: '#/components/responses/403-forbidden-url'
'406':
$ref: '#/components/responses/406-accept-header-unacceptable'
'500':
$ref: '#/components/responses/500-internal-server-error'
security:
- worldcat_metadata_auth:
- WorldCatMetadataAPI:manage_bibs
- WorldCatMetadataAPI:match_bibs
/worldcat/manage/bibs:
post:
tags:
- Manage Bibliographic Records
summary: Create a Bibliographic Record
description: Given a bibliographic record, create it in WorldCat... if it does not exist.
operationId: bib-create
requestBody:
description: The Bibliographic record that will be created.
required: true
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
MARCXML:
$ref: '#/components/examples/bib-marcxml-new'
application/marc:
schema:
type: string
examples:
MARC21:
$ref: '#/components/examples/bib-marc-new'
responses:
'200':
description: The Bibliographic record is created successfully and returns with an OCLC Number.
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
success:
$ref: '#/components/examples/bib-marcxml-existing'
application/marc:
examples:
success:
$ref: '#/components/examples/bib-marc-existing'
'400':
description: Bad request. The request was unacceptable.
content:
application/json:
examples:
xml-has-parsing-errors:
summary: Bib Has Parsing Errors
value:
type: BAD_REQUEST
title: Unable to crosswalk the record.
detail: The record has parsing errors.
xml-has-missing-or-unusable-data:
summary: Bib Has Missing or Unusable Data
value:
type: BAD_REQUEST
title: Unable to perform bib create.
detail: Fixed field does not have usable data
xml-has-validation-errors:
summary: Bib has Bad Data
value:
errorCount: 1
errors: -"Invalid symbol OCWMS in 1st $c in 040."
variableFieldErrors:
-tag: '040'
errorLevel: CRITICAL
message: Invalid symbol OCWMS in 1st $c in 040.
'401':
$ref: '#/components/responses/unauthorized'
'403':
$ref: '#/components/responses/403-forbidden-url'
'406':
$ref: '#/components/responses/406-accept-header-unacceptable'
'500':
$ref: '#/components/responses/500-internal-server-error'
security:
- worldcat_metadata_auth:
- WorldCatMetadataAPI:manage_bibs
/worldcat/manage/bibs/{oclcNumber}:
get:
tags:
- Manage Bibliographic Records
summary: Retrieve a Bibliographic record
description: Given an OCLC Number, retrieve a Bibliographic record, if it exists in WorldCat.
operationId: bib-read
parameters:
- $ref: '#/components/parameters/oclcNumberAsId'
responses:
'200':
description: The Bibliographic record was retrieved successfully.
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
MARCXML:
$ref: '#/components/examples/bib-marcxml-existing'
application/marc:
examples:
MARC21:
$ref: '#/components/examples/bib-marc-existing'
'400':
description: Bad request. The request was unacceptable.
content:
application/json:
examples:
non-numeric-oclc-number:
$ref: '#/components/examples/non-numeric-oclc-number'
bib-not-found:
$ref: '#/components/examples/bib-not-found'
'401':
$ref: '#/components/responses/unauthorized'
'403':
$ref: '#/components/responses/403-forbidden-url'
'404':
$ref: '#/components/responses/failed-not-found'
'406':
$ref: '#/components/responses/406-accept-header-unacceptable'
'500':
$ref: '#/components/responses/500-internal-server-error'
security:
- worldcat_metadata_auth:
- WorldCatMetadataAPI:manage_bibs
- WorldCatMetadataAPI:view_marc_bib
put:
tags:
- Manage Bibliographic Records
summary: Replace a Bibliographic record
description: Given an OCLC Number, replace a Bibliographic record. If the Bibliographic record does not exist, then a new Bibliographic record will be created.
parameters:
- name: oclcNumber
in: path
description: The OCLC number associated with the Bibliographic record to be replaced.
schema:
type: integer
format: int32
required: true
operationId: bib-replace
requestBody:
description: The Bibliographic record that will be replaced.
required: true
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
MARCXML:
$ref: '#/components/examples/bib-marcxml-existing'
application/marc:
schema:
type: string
examples:
MARC21:
$ref: '#/components/examples/bib-marc-existing'
responses:
'200':
description: The Bibliographic record was replaced successfully.
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
success:
$ref: '#/components/examples/bib-marcxml-existing'
application/marc:
examples:
success:
$ref: '#/components/examples/bib-marc-existing'
'400':
description: Bad request. The request was unacceptable.
content:
application/json:
examples:
xml-has-parsing-errors:
$ref: '#/components/examples/xml-has-parsing-errors'
xml-has-missing-or-unusable-data:
$ref: '#/components/examples/xml-has-missing-or-unusable-data'
xml-hdas-validation-errors:
$ref: '#/components/examples/xml-has-validation-errors'
'401':
$ref: '#/components/responses/unauthorized'
'403':
$ref: '#/components/responses/403-forbidden-url'
'404':
$ref: '#/components/responses/failed-not-found'
'406':
$ref: '#/components/responses/406-accept-header-unacceptable'
'500':
$ref: '#/components/responses/500-internal-server-error'
security:
- worldcat_metadata_auth:
- WorldCatMetadataAPI:manage_bibs
/worldcat/manage/bibs/match:
post:
tags:
- Manage Bibliographic Records
summary: Match a Bibliographic Record
description: Given a Bibliographic record in textual MARC or MARCXML format, apply OCLC matching rules to provide a single best-matched WorldCat result if possible. Bibliographic input record must contain a minimum of a MARC 008 and a MARC 245 field. In the JSON response, numberOfRecords indicates the potentially matched number of records and briefRecords contains the single best-match as determined by the OCLC matching service.
operationId: match-bib
requestBody:
description: The Bibliographic record to match
required: true
content:
application/marcxml+xml:
schema:
$ref: '#/components/schemas/MARCXML'
examples:
MARCXML:
$ref: '#/components/examples/bib-marcxml-existing'
application/marc:
schema:
type: string
examples:
MARC21:
$ref: '#/components/examples/bib-marc-existing'
responses:
'200':
description: Matching rules were applied to the Bibliographic record.
content:
application/json:
schema:
$ref: '#/components/schemas/BibMatchResult'
examples:
bib-match-matched:
$ref: '#/components/examples/bib-match-matched'
bib-match-unmatched:
$ref: '#/components/examples/bib-match-unmatched'
'400':
description: Bad request. The request is unacceptable.
content:
application/json:
examples:
missing-control-number:
summary: Control Number is Missing
value:
status:
summary: BIB_LACKS_CONTROL_NUMBER
description: Record is missing a control number
multiple-errors:
$ref: '#/components/examples/validate-multiple-errors'
'401':
$ref: '#/components/responses/unauthorized'
'403':
$ref: '#/components/responses/403-forbidden-url'
'406':
$ref: '#/components/responses/406-accept-header-unacceptable'
'500':
$ref: '#/components/responses/500-internal-server-error'
security:
- worldcat_metadata_auth:
- WorldCatMetadataAPI:manage_bibs
- WorldCatMetadataAPI:match_bibs
components:
schemas:
SharedPrintCommitment:
type: object
properties:
actionNote:
description: Action Note [LHR -> HldDetRec/v583sa]
type: string
materialsSpecified:
description: Materials Sepcified [LHR -> HldDetRec/v583s3]
type: string
institution:
description: Institution to which applies [LHR -> HldDetRec/v583s5]
type: string
dateOfAction:
description: date of action [LHR -> HldDetRec/v583sc]
type: string
commitmentExpirationDate:
description: commitment expiration date [LHR -> HldDetRec/v583sd]
type: string
authorization:
description: Authorization [LHR -> HldDetRec/v583sf]
type: string
methodOfAction:
description: Method of Action [LHR -> HldDetRec/v583si]
type: string
siteOfAction:
description: Site of Action [LHR -> HldDetRec/v583sj]
type: string
status:
description: Status [LHR -> HldDetRec/v583sl]
type: string
uri:
description: URI [LHR -> HldDetRec/v583su]
type: string
publicNote:
description: Public Note [LHR -> HldDetRec/v583sz]
type: string
HoldingPart:
type: object
properties:
linkingAndSequenceNumber:
description: Field link and sequence number [852/863-865/866-868/876-878 | s8]
type: string
summaryOfHoldings:
$ref: '#/components/schemas/SummaryOfHoldings'
enumerations:
description: Enumerations [853-855/863-865 |a-h]
type: array
items:
$ref: '#/components/schemas/CaptionValuePair'
chronologies:
description: Chronologies [853-855/863-865 |i-v]
type: array
items:
$ref: '#/components/schemas/CaptionValuePair'
textualHoldings:
$ref: '#/components/schemas/TextualHoldingsStatement'
itemMaterialSpecified:
$ref: '#/components/schemas/MaterialSpecified'
pieceDesignation:
$ref: '#/components/schemas/PieceDesignation'
cancelledPieceDesignations:
description: Cancelled Piece Designation [876-878 |r]
type: array
items:
type: string
temporaryLocation:
$ref: '#/components/schemas/TemporaryLocation'
publicNotes:
description: Public notes [852/863-865/866-868/876-878 |z]
type: array
items:
type: string
yearRanges:
description: Year as Range [si]
type: array
items:
$ref: '#/components/schemas/HoldingRange'
volumeRanges:
description: Volume Number As Range [sb]
type: array
items:
$ref: '#/components/schemas/HoldingRange'
itemType:
description: Category of holding based on MARC field patterns [LHR -> v853,v863,v866,v876 for basic; v854,v864,v867,v877 for supplementary; v855,v865,v868,v878 for index]
type: string
enum:
- basic
- supplementary
- index
privateNotes:
description: Private notes from 87X$x field [LHR -> v87Xsx]
type: array
items:
type: string
PostalCode:
description: Postal Code
type: string
DisplayCallNumber:
description: Display call Number [LHR -> v852 |k,h,i,m / |j/ |l]
type: string
SpecificFormat:
description: Specific Format Type [Admin/OCLCDef/StdRT2]
type: string
enum:
- 2D
- Artcl
- Bluray
- Braille
- Cassette
- CD
- Chptr
- Continuing
- Digital
- DVD
- Encyc
- Film
- LargePrint
- LP
- Mic
- mss
- PrintBook
- rec
- Thsis
- VHS
TotalEditions:
description: Total number of editions in the workgroup
type: integer
format: int32
HoldingDetail:
type: object
properties:
lhrControlNumber:
description: LHR Control Number [LHR -> HldDetRec/c001]
type: string
lhrDateEntered:
description: LHR Date Entered [LHR -> HldDetRec/Admin/CreateDate]
type: string
lhrLastUpdated:
description: LHR Date Last Used [LHR -> HldDetRec/Admin/ReplacedDate]
type: string
oclcNumber:
description: OCLC Number [LHR -> HldDetRec/c004]
type: string
format:
description: material format [LHR -> HldDetRec/c007]
type: string
location:
$ref: '#/components/schemas/HoldingLocation'
copyNumber:
description: copy number [LHR -> HldDetRec/v852st]
type: string
callNumber:
$ref: '#/components/schemas/CallNumber'
lendingPolicy:
description: local lending policy [LHR -> HldDetRec/Admin/Lend]
type: string
hasSharedPrintCommitment:
$ref: '#/components/schemas/HasSharedPrintCommitment'
sharedPrintCommitments:
description: shared print details [LHR -> HldDetRec/v583]
type: array
items:
$ref: '#/components/schemas/SharedPrintCommitment'
summary:
description: summary statement [LHR -> HldSummRec/v966sa]
type: string
holdingParts:
description: Textual Holding [LHR -> HldDetRec/v866,v867,v868] Item Information Holding [LHR -> HldDetRec/v876,v877,v878] Enumeration Chronology Holding [LHR -> HldDetRec/v863,v864,v865]
type: array
items:
$ref: '#/components/schemas/HoldingPart'
required:
- lhrControlNumber
- lhrDateEntered
- lhrLastUpdated
- oclcNumber
- format
- lendingPolicy
- hasSharedPrintCommitment
schemas-OclcNumber:
description: the oclc number of a given bibliographic record
type: integer
format: int64
example: 61253844
MergedOclcNumbers:
description: Merged OCLC numbers [v019sa]
type: array
items:
type: string
SublocationCollection:
description: Sublocation or collection [LHR -> v852sb]
type: string
CatalogingInfo:
type: object
properties:
catalogingAgency:
description: Cataloging Agency [v040/sa]
type: string
transcribingAgency:
description: Transcribing Agency [v040/sc]
type: string
catalogingLanguage:
$ref: '#/components/schemas/CatalogingLanguage'
levelOfCataloging:
description: Level of cataloging [LDR position 5]
type: string
PieceDesignation:
description: Piece Designation [852/863-865/866-868/876-878 |p]
type: string
briefHoldings:
type: array
items:
$ref: '#/components/schemas/HoldingBrief'
Longitude:
description: Longitude
type: number
format: double
example: -122.22702
Country:
description: Two-character Country Code, per ISO 3166.
type: string
InstitutionType:
description: The type of institution
enum:
- ACADEMIC
- PUBLIC
- REGIONAL_OR_NATIONAL
- OTHER
- CORPORATE_SPECIAL_LIBRARY
- HEALTH
- MUSEUM_OR_ARCHIVES
- LAW
- MUSIC
- LIBRARY_NETWORK_GROUP
type: string
MARCXML:
description: see https://www.loc.gov/standards/marcxml/schema/MARC21slim.xsd
type: object
xml:
name: record
externalDocs:
description: Learn about the Marc Bibliographic Standard
url: https://www.loc.gov/standards/marcxml/
InstitutionHolding:
type: object
properties:
totalHoldingCount:
description: Number of holdings for this item [Holdings/TotalLibCount || FRBRHoldings/B]
type: integer
format: int32
totalWorksHoldingCount:
description: Number of holdings in the workset [FRBRHoldings/B]
type: integer
format: int32
totalEditions:
$ref: '#/components/schemas/TotalEditions'
oneOf:
- $ref: '#/components/schemas/briefHoldings'
- $ref: '#/components/schemas/detailedHoldings'
State:
description: Name of the State/Province, per ISO 3166-2.
type: string
OclcNumber:
description: the oclc number of a given bibliographic record
type: integer
format: int64
Date:
description: machine readable date 008
type: string
Problem:
type: object
description: RFC 7807 description of an error.
properties:
type:
$ref: '#/components/schemas/ProblemType'
title:
description: A short, human-readable summary of the problem type.
type: string
instance:
description: A URI reference that identifies the specific occurrence of the problem.
type: string
format: uri
detail:
description: A human-readable explanation specific to this occurrence of the problem.,
type: string
invalidParams:
description: An array of validation errors.
type: array
items:
description: The validation error descriptor.
type: object
properties:
path:
type: string
name:
type: string
reason:
type: string
Address:
type: object
properties:
street1:
description: Name of street
type: string
street2:
description: Name of street 2
type: string
city:
description: Name of city
type: string
state:
$ref: '#/components/schemas/State'
postalCode:
$ref: '#/components/schemas/PostalCode'
country:
$ref: '#/components/schemas/Country'
lat:
$ref: '#/components/schemas/Latitude'
lon:
$ref: '#/components/schemas/Longitude'
GeneralFormat:
description: General Format Type [Admin/OCLCDef/StdRT]
type: string
enum:
- Archv
- ArtChapter
- AudioBook
- Book
- CompFile
- Encyc
- Game
- Image
- IntMM
- Jrnl
- Kit
- Map
- MsScr
- Music
- News
- Object
- Snd
- Toy
- Video
- Vis
- Web
SimpleTitle:
description: Linked [v880sa,b] if present or [v245sa,b]
type: string
ProblemType:
description: A URI reference [RFC3986] that identifies the problem type.
type: string
format: uri
enum:
- https://developer.api.oclc.org/errors/NOT_ACCEPTABLE
- https://developer.api.oclc.org/errors/NOT_ALLOWED
- https://developer.api.oclc.org/errors/INTERAL_SERVER_ERROR
- https://developer.api.oclc.org/errors/BAD_REQUEST
- https://developer.api.oclc.org/errors/NOT_FOUND
- https://developer.api.oclc.org/errors/NOT_ELIGIBLE
- https://developer.api.oclc.org/errors/MISSING_QUERY_PARAMETER
- https://developer.api.oclc.org/errors/INVALID_QUERY_PARAMETERS
- https://developer.api.oclc.org/errors/INVALID_QUERY_PARAMETER_VALUE
- https://developer.api.oclc.org/errors/INVALID_QUERY_PARAMETER_NAME
- https://developer.api.oclc.org/errors/SYNTAX_ERROR
- https://developer.api.oclc.org/errors/INVALID_DOCUMENT
- https://developer.api.oclc.org/errors/MISSING_ELEMENT
- https://developer.api.oclc.org/errors/INVALID_ELEMENT_VALUE
CallNumber:
description: Local call number [LHR -> v852sh,i,j,k,l,m]
type: object
properties:
displayCallNumber:
$ref: '#/components/schemas/DisplayCallNumber'
classificationPart:
description: LHR -> v852sh
type: string
itemParts:
description: LHR -> v852si
type: array
items:
type: string
shelvingControlNumber:
description: LHR -> v852sj
type: string
prefixes:
description: LHR -> v852sk
type: array
items:
type: string
shelvingForm:
description: LHR -> v852sl
type: string
suffixes:
description: LHR -> v852sm
type: array
items:
type: string
shelvingScheme:
description: Shelving scheme based on 852 field 1st indicator [LHR -> v852 ind1]
type: string
enum:
- Library of Congress classification
- Dewey Decimal classification
- National Library of Medicine classification
- Superintendent of Documents classification
- Shelving control number
- Title
- Shelved separately
- Other scheme
privateNotes:
description: Private notes from 852$x field [LHR -> v852sx]
type: array
items:
type: string
Isbns:
description: International Standard Book Number [v020sa]
type: array
items:
type: string
RegistryId:
description: The identifier in the WorldCat Registry for the institution
type: integer
SummaryOfHoldings:
description: Summary of Holdings [https://www.loc.gov/marc/holdings/echdcntf.html]
type: string
HasSharedPrintCommitment:
description: institution has shared print commitment [Holdings/LibHasSharedPrint || LHR -> HldDetRec/Admin/SPReg]
type: string
enum:
- Y
- N
HoldingLocation:
description: Local holding location [LHR -> v852sa,b,c]
type: object
properties:
holdingLocation:
description: Institution Symbol [LHR -> v852sa]
type: string
sublocationCollection:
$ref: '#/components/schemas/SublocationCollection'
shelvingLocation:
$ref: '#/components/schemas/ShelvingLocation'
BibMatchResult:
type: object
properties:
numberOfRecords:
type: integer
format: int32
briefRecords:
type: array
items:
$ref: '#/components/schemas/BibRecordBrief'
Issn:
description: International Standard Serial Number [v022sal v700,v710,v711,v773,v776,v777,v780,v785 - sx]
type: string
Issns:
description: International Standard Serial Numbers
type: array
items:
$ref: '#/components/schemas/Issn'
TextualHoldingsStatement:
description: '[866-8 |a]'
type: string
CatalogingLanguage:
description: Language record was cataloged in [v040sb]
type: string
detailedHoldings:
type: array
items:
$ref: '#/components/schemas/HoldingDetail'
BibRecordBrief:
type: object
properties:
oclcNumber:
$ref: '#/components/schemas/OclcNumber'
title:
$ref: '#/components/schemas/SimpleTitle'
creator:
$ref: '#/components/schemas/CreatorString'
date:
$ref: '#/components/schemas/Date'
language:
$ref: '#/components/schemas/ItemLanguage'
generalFormat:
$ref: '#/components/schemas/GeneralFormat'
specificFormat:
$ref: '#/components/schemas/SpecificFormat'
edition:
$ref: '#/components/schemas/EditionStatement'
publisher:
type: string
isbns:
$ref: '#/components/schemas/Isbns'
issns:
$ref: '#/components/schemas/Issns'
mergedOclcNumbers:
$ref: '#/components/schemas/MergedOclcNumbers'
catalogingInfo:
$ref: '#/components/schemas/CatalogingInfo'
institutionHolding:
$ref: '#/components/schemas/InstitutionHolding'
required:
- oclcNumber
- title
- creator
- date
- language
- edition
- publisher
Latitude:
description: Latitude
type: number
format: double
example: 37.502508
ItemLanguage:
description: Language of the item [v041sa,j]
type: string
HoldingRange:
type: object
properties:
from:
type: string
to:
type: string
MaterialSpecified:
description: '[876-8 |3]'
type: string
EditionStatement:
description: Edition Statement [v250sa]
type: string
CreatorString:
description: List of creators as single string
type: string
ShelvingLocation:
description: Shelving location [LHR -> v852sc]
type: string
CaptionValuePair:
description: The caption and value pair for a caption describing a numeric, alphabetic, and/or date designation for an item. The caption is defined as an attribute on the element and the value for the caption is defined by the element contents.
type: object
properties:
caption:
type: string
value:
type: string
HoldingBrief:
type: object
properties:
country:
description: Country of holding institution [Holdings/Library/Country]
type: string
state:
description: State of holding institution [Holdings/Library/State]
type: string
oclcSymbol:
description: Oclc Symbol of holding institution [Holdings/Library/InstSym]
type: string
registryId:
$ref: '#/components/schemas/RegistryId'
institutionName:
description: Name of holding institution [Holdings/Library/InstName]
type: string
alsoCalled:
description: Some name the library might also be called
type: string
address:
$ref: '#/components/schemas/Address'
institutionType:
$ref: '#/components/schemas/InstitutionType'
hasOPACLink:
description: Whether or not the library has an OPAC deep links
type: boolean
distance:
description: Distance from location if lat/log was specified
type: string
self:
description: URI to find more info about the institution
type: string
format: uri
illStatus:
description: ILL status [Holdings/Library/ILLStatus]
type: string
illGroup:
description: ILL group [Holdings/Library/ILLGroup]
type: string
hasSharedPrintCommitment:
description: institution has shared print commitment [Holdings/LibHasSharedPrint]
type: string
enum:
- Y
- N
TemporaryLocation:
description: Temporary location [876-878 |l]
type: string
examples:
bib-match-unmatched:
summary: Not matched Bib Result
value:
numberOfRecords: 0,
briefRecords: []
bib-match-matched:
summary: Matched Bib Result
value:
numberOfRecords: 1,
briefRecords:
- oclcNumber: '44959645'
title: Pride and prejudice.
creator: Jane Austen
date: 199u
language: eng
generalFormat: Book
specificFormat: Digital
publisher: Project Gutenberg
publicationPlace: Champaign, Ill.
isbns:
- 0585013365
- '9780585013367'
- '9781925480337'
- 192548033X
mergedOclcNumbers:
- '818363152'
- '854852439'
- '859164912'
- '956345342'
catalogingInfo:
catalogingAgency: N$T
transcribingAgency: N$T
catalogingLanguage: eng
levelOfCataloging: L
unauthorized:
summary: Error returned when valid API credentials not sent or invalid
value:
message: Unauthorized
bib-marc-new:
summary: Bibliographic MARC record
value: "00266nam a2200097 a 4500008004100000010001700041040002200058100002700080245001600107500004500123\\u001E120827s2012 nyua 000 0 eng d\\u001E \\u001Fa 63011276 \\u001E \\u001FaOCWMS\\u001Fbeng\\u001FcOCWMS\\u001E0 \\u001FaOCLC Developer Network\\u001E10\\u001FaTest Record\\u001E \\u001FaFOR OCLC DEVELOPER NETWORK DOCUMENTATION\\u001E\\u001D \n"
xml-has-parsing-errors:
summary: Bibliographic record has parsing errors
value:
type: BAD_REQUEST
title: Unable to crosswalk the record.
detail: The record has parsing errors.
bib-marc-existing:
summary: Bibliographic MARC record
value: "00291nam a2200109 a 4500001001300000008004100013010001700054040002200071100002700093245001600120500004500136\\u001Eocn970988303\\u001E120827s2012 nyua 000 0 eng d\\u001E \\u001Fa 63011276 \\u001E \\u001FaOCWMS\\u001Fbeng\\u001FcOCWMS\\u001E0 \\u001FaOCLC Developer Network\\u001E10\\u001FaTest Record\\u001E \\u001FaFOR OCLC DEVELOPER NETWORK DOCUMENTATION\\u001E\\u001D \n"
non-numeric-oclc-number:
summary: Non-Numeric OCLC Number
value:
type: BAD_REQUEST
title: Invalid identifier.
detail: 'A request with a non-numeric identifier was attempted: ocm12121212'
bib-marcxml-new:
summary: Bibliographic MARC XML record
value: "\n 00000nam a2200000 a 4500\n 120827s2012 nyua 000 0 eng d\n \n 63011276 \n \n \n OCWMS\n eng\n OCWMS\n \n \n OCLC Developer Network\n \n \n Test Record\n \n \n FOR OCLC DEVELOPER NETWORK DOCUMENTATION\n \n \n"
bib-not-found:
summary: Bibliographic Record Not Found
value:
type: BAD_REQUEST
title: Unable to perform the bib read operation.
detail:
summary: NOT_FOUND
description: Not able to find the requested Bib
xml-has-missing-or-unusable-data:
summary: Bibliographic record has missing or unusable data
value:
type: BAD_REQUEST
title: Unable to perform bib create.
detail: Fixed field does not have usable data
xml-has-validation-errors:
summary: Bibliographic record has bad data
value:
errorCount: 1,
errors: -"Invalid symbol OCWMS in 1st $c in 040."
variableFieldErrors:
-tag: '040'
errorLevel: CRITICAL
message: Invalid symbol OCWMS in 1st $c in 040.
bib-marcxml-existing:
summary: Bibliographic MARC XML record
value: "\n 00000nam a2200000 a 4500\n ocn970988303\n 120827s2012 nyua 000 0 eng d\n \n 63011276 \n \n \n OCWMS\n eng\n OCWMS\n \n \n OCLC Developer Network\n \n \n Test Record\n \n \n FOR OCLC DEVELOPER NETWORK DOCUMENTATION\n \n\n"
validate-multiple-errors:
summary: Multiple Errors
value:
status:
summary: INVALID
description: The provided Bib is invalid
validationErrors:
errorCount: 4
errors: -"The record has been updated by another user." -"Not authorized to delete $d in 040." -"Not authorized to change Record Status (Leader/05) to n." -"Invalid relationship - when 245 is present, then $a in 245 or $k in 245 must be present."
recordLevelErrors:
- message: The record has been updated by another user.
errorLevel: MINOR
tag: REC
occurrence: 1
- message: Not authorized to delete $d in 040.
errorLevel: CRITICAL
tag: REC
occurrence: 1
fixedFieldErrors:
- tag: '000'
errorLevel: MINOR
message: Not authorized to change Record Status (Leader/05) to n.
variableFieldErrors:
- tag: '245'
errorLevel: CRITICAL
message: Invalid relationship - when 245 is present, then $a in 245 or $k in 245 must be present.
failed-not-found:
summary: Error when resource not found
value:
type: NOT_FOUND
title: Resource Not Found
detail: The specified resource was not found at this address.
parameters:
oclcNumberListReq:
name: oclcNumbers
in: query
description: One or more OCLC numbers. Separated by comma if providing multiple.
required: true
schema:
type: array
items:
$ref: '#/components/schemas/OclcNumber'
example: 41266045,1056157740
oclcNumberAsId:
name: oclcNumber
in: path
description: The OCLC number of the Bibliographic record
required: true
schema:
$ref: '#/components/schemas/schemas-OclcNumber'
example: 41266045
responses:
500-internal-server-error:
description: Something went wrong (hopefully rare) - please try again.
content:
application/json:
examples:
accept-header-unacceptable:
summary: Unexpected Error.
value:
type: INTERNAL_SERVER_ERROR
title: string
detail: string
unauthorized:
description: Unauthorized
content:
application/json:
examples:
unauthorized:
$ref: '#/components/examples/unauthorized'
failed-not-found:
description: Failed operation - resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/Problem'
examples:
failed-not-found:
$ref: '#/components/examples/failed-not-found'
406-accept-header-unacceptable:
description: Accept Header Media Type is not Supported.
content:
application/json:
examples:
accept-header-unacceptable:
summary: Accept Header Unacceptable
value:
type: NOT_ACCEPTABLE
title: Invalid 'Accept' header.
detail: 'A request with an invalid ''Accept'' header was attempted: ....'
403-forbidden-url:
description: Forbidden URL.
content:
application/json:
examples:
forbidden-url:
summary: Forbidden URL
value:
message: '''tk_TW6fPd4fgsaA45HIYslXmeSlc1DleGlOdBCdVimq'' not a valid key=value pair (missing equal-sign) in Authorization header: ''Bearer tk_TW6fPd4fgsaA45HIYslXmeSlc1DleGlOdBCdVimq''.'
securitySchemes:
entity_data_auth:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://oauth.oclc.org/token
scopes:
publicEntities:read_brief_entities: read brief entity data
publicEntities:read_references: read entity references
authorizationCode:
authorizationUrl: https://oauth.oclc.org/auth
tokenUrl: https://oauth.oclc.org/token
scopes:
publicEntities:read_brief_entities: read brief entity data
publicEntities:read_references: read entity references