WorldCat Search API Terms of Service issues
Oct 4th, 2008 by Karen
Bruce Washburn from OCLC left a comment on my post about building an iPhone app for WorldCat.
We think an iPhone app for WorldCat is interesting too. We’ve been doing some thinking and experimenting with that idea on the API team, and would really like to hear more about the shape you think a WorldCat iPhone app would take. And you noted a question about how widely you could distribute your app, based on the API Terms. Could you tell us more about how you think your application might present a conflict?
My issues/questions about the Terms of Service stem from the area that discusses Service Levels.
If you are not able to determine the library affiliation of users of your API-based application, the WorldCat API will support indexes and data at the level currently offered to WorldCat.org visitors. For these users, we require that you provide a path to obtain library holdings information as appropriate in your user interface when WorldCat data is presented, with links to participating library OPACs. The WorldCat API provides the OPAC URLs to support these links. The display of library holdings works best when the end user’s location (IP address, ZIP code, or country) can be provided in the link.
The documentation on Service Levels basically says that if you can’t verify a user is one of yours that you may only use certain search indexes and you MUST link back to through WorldCat to local library holdings. Seems reasonable right? Except that the default service level, the one that you need to use if you can’t verify someone is one of your users, doesn’t allow you to limit searching to a particular library. This is not helpful. Particularly since I was thinking about using the WorldCat Registry to allow people to choose a particular library or libraries to default their search to. Let’s be real most users want to see search results from libraries that they can actually get items from. Geographic limits just don’t cut it because it doesn’t take into account the fact that geographic proximity does equal borrowing privileges. Just because I live in the Houston-area doesn’t mean I have borrowing privileges at Rice. Just because I don’t live in upstate NY doesn’t mean that I might have borrowing privileges at Syracuse University. For me this is a huge issue that I want to see OCLC solve not just in the WorldCat API but in WorldCat.org as well.
Some have suggested that OCLC doesn’t want to make these particular indexes available because they are afraid it will undercut the potential revenue of WorldCat Local. But I think that this is a false fear, WorldCat Local offers features and functionality that are not available in WorldCat.org or the WorldCat API. Additionally, for a library to develop their own version of WorldCat Local would be a substantial investment involving either extraction or programming to access real-time, status and holdings information. Most libraries have neither the time nor resources to do this. Also, there is no efficiency gained by individual libraries reinventing WorldCat Local. A better use of my development resources would be to have my staff work on other innovative uses of the WorldCat API.
Another issues I see is with the fact that any applications we build have to use our API key. In the case of the WorldCat Wordpress Widget there is no way to hide the API key from users. Why is this a problem, well what if we want to distribute the widget to our faculty so they can use it in their personal blogs that aren’t on the university blog server. Giving the widget with the key in it to our campus IT people so they could install it on the campus blog server would be reasonable. It seems some application can be build so that the key is hidden. This seems to be what OCLC done with the Facebook app they are distributing. I would guess/hope I would be able to do the same thing with an app for the iPhone/iTouch.
Both of these issues are hampering some of our development efforts at UH. This doesn’t mean that the WorldCat Search API is a bust, it just means that we are still trying to define the boundaries of how useful it can be and in what contexts.







