Angler's Book Supply offers an API for searching the catalog of books available. This API is located at: https://www.anglersbooksupply.com/api/books/
This API is available for viewing purposes from a browser and will use the logged in user's cookie for authentication. When calling the API programatically, use the HTTP Basic Authentication as mentioned below.
The API authentication scheme uses HTTP Basic Authentication, signed against the user's username and password.
An example of using Basic Authentication with curl:
curl -u user:pass https://www.anglersbooksupply.com/api/books/
The books can be filtered using the following filtering options:
By default, the books are filtered to show only "In print" titles. Other valid availability values are:
1
: In print (default)2
: Out of print3
: Out of stock indefinitely4
: Not yet publishedall
: Any availabilityExample:
https://www.anglersbooksupply.com/api/books/?availability=1
Books can be filtered by a category slug. The "slug" is the category name
as seen on the website, converted to all lowercase, and spaces replaced
with hyphens. This is keyed as the "category_id
" in the API.
Example:
https://www.anglersbooksupply.com/api/books/?category=fly-tying
Books can be filtered by publisher ID. The ID can be found in the API
keyed as "publisher_id
".
Example:
https://www.anglersbooksupply.com/api/books/?publisher=878175
Either ISBN or EAN can be filtered to get a specific book. Both require that all dashes be stripped from the ISBN or EAN.
Example:
https://www.anglersbooksupply.com/api/books/?isbn=0936608064
https://www.anglersbooksupply.com/api/books/?ean=9780936608068
Filtering by last modified is useful if you want to programatically update your data on an interval and want a set of books since you last updated. This will only give you books modified since the provided date.
The date format is unix epoch time, the number of seconds since 00:00:00 UTC on January 1, 1970.
Example:
https://www.anglersbooksupply.com/api/books/?last_mod_since=1731577875
Just like filtering by last modified above, except targeted against the column we update when QOH is updated.
The date format is unix epoch time, the number of seconds since 00:00:00 UTC on January 1, 1970.
Example:
https://www.anglersbooksupply.com/api/books/?qoh_last_mod_since=1731577875
The books can be sorted by using the ordering
query
parameter. The values can either be provided without a prefix for
ascending ordering, or with a "-
" for descending ordering.
By default the API sorts by bestseller descending (the top bestseller
first). If this is what you want you don't need to provide the
ordering
parameter. If for some reason you want the worst
seller first you can provide the "-
" to reverse this
ordering.
If you want to change the ordering from the default, bestsellers, to last
modified, use the last_mod
sort option.
Example:
https://www.anglersbooksupply.com/api/books/?ordering=-last_mod
This sorting will return books sorted by when the book's QOH value was last updated. This is useful to stay up to date on quantities.
Example:
https://www.anglersbooksupply.com/api/books/?ordering=-qoh_last_mod
By default the API returns results in batches of 100. The
"page_size
" parameter can be used to adjust the number of
books per response.
Example:
https://www.anglersbooksupply.com/api/books/?page_size=25
The API results include URLs for the next or previous batch of results
that can be used to iterate over the batches. See the
"next
" and "previous
" keys in the API
response to paginate through the results.
Example:
https://www.anglersbooksupply.com/api/books/?page=2