@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api ISBNdb API
@base https://api.isbndb.com
@version 1.0.1
@auth ApiKey x-api-key in header
@endpoints 10
@toc author(1), authors(1), book(1), books(1), publisher(1), publishers(1), search(1), stats(1), subject(1), subjects(1)

@group author
@endpoint GET /author/{name}
@required {name: any}
@optional {page: any, pageSize: any}
@returns(200)
@errors {404}

@endgroup

@group authors
@endpoint GET /authors/{query}
@required {query: any}
@optional {pageSize: any, page: any}
@returns(200)
@errors {404}

@endgroup

@group book
@endpoint GET /book/{isbn}
@required {isbn: any}
@returns(200)
@errors {404}

@endgroup

@group books
@endpoint GET /books/{query}
@required {query: any}
@optional {page: any, author: any, pageSize: any}
@returns(200)
@errors {404}

@endgroup

@group publisher
@endpoint GET /publisher/{name}
@required {name: any}
@optional {page: any, pageSize: any}
@returns(200)
@errors {404}

@endgroup

@group publishers
@endpoint GET /publishers/{query}
@required {query: any}
@optional {pageSize: any, page: any}
@returns(200)
@errors {404}

@endgroup

@group search
@endpoint GET /search
@optional {q: any}
@returns(200)
@errors {404}

@endgroup

@group stats
@endpoint GET /stats
@returns(200)

@endgroup

@group subject
@endpoint GET /subject/{name}
@required {name: any}
@returns(200)
@errors {404}

@endgroup

@group subjects
@endpoint GET /subjects/{query}
@required {query: any}
@optional {pageSize: any, page: any}
@returns(200)
@errors {404}

@endgroup

@end
