OCLC APIs support
Overview
Sometimes even the most stable web services and elegant code decide to act up. The Developer Network team is happy to lend a hand to help get your project back on track. You can contact the team using the Contact Us form or the Developer Network team email.
Certain details can help the team address your problem more efficiently. If these details aren't easily accessible, or you aren't quite sure what is being requested, send the Developer Network team what you can and they will assist you in gathering the necessary details.
Describe your project or goal
Be as specific and descriptive as possible about what you're trying to do when reaching out to the Developer Network team with a problem. Examples of effective project or goal descriptions include:
- I want to create a new Purchase Order with the Acquisitions web service.
- I want to search WorldCat Search API for books about Chinese cooking held by University of Wisconsin Madison.
- I want to use the WorldCat Metadata API to set holdings on OCLC Number 319501305 for institution ID - 128807.
Authentication or WSKey problems
Please include your WSKey string with any support request, but keep your secret a secret. If you do not have access to your WSKey string, the Development Network team can look up your WSKey if you provide the following:
- Your institution affiliation
- Associated service(s)
Request problems
Send the Developer Network team the following:
- The HTTP request including all the headers and body information. For example:
GET /bib/data/319501305?holdingLibraryCode=MAIN&classificationScheme=LibraryOfCongress& instSymbol=OCPSB&principalID=12345&principalIDNS=urn%3Aoclc%3Awms%3Ada HTTP/1.1 Host: worldcat.org User-Agent: Platform PHP Test Client Accept: application/atom+xml;content="application/vnd.oclc.marc21+xml" Authorization: http://www.worldcat.org/wskey/v2/hmac/v1 clientId="LOAjXFWEtkA5JHrbpu2YElhMypGHXEP9Rjp2pTt4E2GwZ1Bx0RhA7YyQutyuSXX5AAjJv1aYH0FWirC6", timestamp="1370357606", nonce="3bdf237a", signature="dnWqDMjh3o6eriU1T4aNxOF4tzEQ6H58v5lG36ErC3c=", principalID="12345", principalIDNS="urn:oclc:wms:da"
- The HTTP response you received, including the HTTP status code, message, and body of the response. For example:
HTTP/1.1 403 Forbidden Content-type: application/xml;charset=UTF-8 Content-length: 227 Date: Tue, 04 Jun 2013 15:01:24 GMT <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <error xmlns="http://worldcat.org/xmlschemas/response"> <code>403</code> <message>User forbidden</message> <detail>PrincipalID and/or PrincipalIDNS is invalid</detail> </error>
Include these additional details where you can:
- The WSKey you are using
- User you performed the action as, preferably in the form of the username
- Date and time the request was sent
- IP address the request was sent from
- User-Agent your client identifies itself as
Note: Consider sending a User-Agent if you aren't already. It will make your requests easier to find and debug. - RequestId - This is a header which the API will often return. Named x-amzn-RequestId
Share your code
Although optional, sharing your code with the Developer Network team can expedite a solution to the problem you're experiencing. The most effective way to share your code is to:
- Post it to GitHub as a GIST (https://gist.github.com/).
Or - Provide a link to a code repository on GitHub.
While the Developer Network team does not have expertise in every language, they do have experience working with several (PHP, Ruby, Java, JavaScript). Viewing your code may help debug the problem with you.