Project Description

A simple helper library that wraps all the functionality provided by the cgi-based API found at

In order to use this library, you need to sign up for a developer account through  As of July 2012, developer accounts are free for up to 500 requests per day. 

Within the context of his helper library, each 'page' of data represents a single request. 


Simple Usage Example

// get an API object to run our request against                       
var api = new Isbndb("MY-API-KEY-HERE");            

// build a request that will look for all books with a Title = "Der Besuch der Alten Dame"           
var request = new BooksRequest(BookArgs.Arguments.title, "Der Besuch der Alten Dame");

// execute the request            
var response = api.ExecuteBookRequest(request);

// the response results are paginated -> can be enumerated through the pages collection.            Console.WriteLine(response.Pages.Count().ToString());                                   

// if there was a problem loading a page, the Pages collection PageLoadingError will contain a reference to
// the exception that was thrown

if (response.Pages.PageLoadingError != null)           
    Console.WriteLine("Error: " + response.Pages.PageLoadingError.ToString());            
// MaximumResultsCount is the actual results contained in all pages.             
else if (response.MaximumResultsCount > 0)           

    // Write the ISBN and Publisher_ID of the first book that was retrieved
    BookData book = response.Pages[0].Items[0] as BookData;
    Console.WriteLine("ISBN:\t" + book.ISBN);               
    Console.WriteLine("Publisher ID:\t" + book.PublisherID);           

Important Note
This project is not associated with or endorsed by  This software is provided completely as-is with no express or implied warranty.  You must use read the readme.txt or the license file attached to this project for full details.  

Last edited Jul 23, 2012 at 5:35 PM by djcurtis, version 5