Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/internetarchive/openlibrary
/ endpoints
Endpoints
131 in github.com/internetarchive/openlibrary
⨍
Functions
6,179
◇
Types & classes
1,059
↳
Endpoints
131
Route
_get_count_docs
cache.memoize(engine="memcache", key="admin._get_count_docs", expires=5 * 60)
openlibrary/core/admin.py:None
Route
_get_loan_counts_from_graphite
cache.memoize(engine="memcache", key="admin._get_loan_counts_from_graphite", expires=5 * 60)
openlibrary/core/admin.py:None
Route
_get_visitor_counts_from_graphite
cache.memoize(engine="memcache", key="admin._get_visitor_counts_from_graphite", expires=5 * 60)
openlibrary/core/admin.py:None
Route
account_loan_history_json
router.get("/account/loan-history.json", response_model=AccountLoanHistoryResponse)
openlibrary/fastapi/account.py:None
Route
account_loans_json
router.get("/account/loans.json", response_model=AccountLoansResponse)
openlibrary/fastapi/account.py:None
Route
affiliate_links_partial
router.get("/partials/AffiliateLinks.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
anonymize_account
router.post( "/account/anonymize.json", response_model=AnonymizeResponse, tags=["internal"], i
openlibrary/fastapi/account.py:None
Route
author_works
router.get("/authors/OL{author_id}A/works.json", response_model=PaginatedGroupEntryResponse, response_model_ex
openlibrary/fastapi/internal/api.py:None
Route
book_page_lists_partial
router.get("/partials/BPListsSection.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
booknotes_post
router.post("/works/OL{work_id}W/notes", response_model=BooknoteResponse)
openlibrary/fastapi/internal/api.py:None
Route
browse
router.get("/browse.json")
openlibrary/fastapi/internal/api.py:None
Route
carousel_load_more_partial
router.get("/partials/CarouselLoadMore.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
check_authentication
router.get("/account/test.json", response_model=AuthTestResponse, tags=["internal"], include_in_schema=SHOW_IN
openlibrary/fastapi/account.py:None
Route
create_or_update_patron_check_in
router.post("/works/OL{work_id}W/check-ins")
openlibrary/fastapi/checkins.py:None
Route
delete_patron_check_in
router.delete("/check-ins/{check_in_id}")
openlibrary/fastapi/checkins.py:None
Route
fulltext_search_suggestion_partial
router.get("/partials/FulltextSearchSuggestion.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
get_all_language_counts
cache.memoize("memcache", key="get_all_language_counts", expires=60 * 60)
openlibrary/plugins/worksearch/languages.py:None
Route
get_bestbook_count
router.get("/awards/count.json", response_model=BestbookCountResponse)
openlibrary/fastapi/internal/api.py:None
Route
get_book_availability
router.get( "/availability/v2", response_model=dict[str, AvailabilityStatusV2], description="Retur
openlibrary/fastapi/internal/api.py:None
Route
get_books
router.get("/api/books", include_in_schema=False)
openlibrary/fastapi/books.py:None
Route
get_patron_follows
router.get("/people/{username}/follows.json", response_model=list[FollowEntry])
openlibrary/fastapi/internal/api.py:None
Route
get_public_my_books_json
router.get("/people/{username}/books/{key}.json")
openlibrary/fastapi/public_my_books.py:None
Route
get_ratings
router.get("/works/OL{work_id}W/ratings.json")
openlibrary/fastapi/internal/api.py:None
Route
get_reading_goals_endpoint
router.get("/reading-goal.json", response_model=ReadingGoalsResponse)
openlibrary/fastapi/yearly_reading_goals.py:None
Route
get_volume
router.get("/api/volumes/{brief_or_full}/{idtype}/{idval}", include_in_schema=False)
openlibrary/fastapi/books.py:None
Route
get_volumes_multiget
router.get("/api/volumes/{brief_or_full}/json/{req}", include_in_schema=False)
openlibrary/fastapi/books.py:None
Route
get_work_bookshelves
router.get("/works/OL{work_id}W/bookshelves.json")
openlibrary/fastapi/internal/api.py:None
Route
health
app.get("/health")
openlibrary/asgi_app.py:None
Route
ia_js_cdn
router.get("/cdn/archive.org/{filename}")
openlibrary/fastapi/cdn.py:None
Route
import_preview_json_get
router.get("/import/preview.json")
openlibrary/fastapi/importapi.py:None
Route
import_preview_json_post
router.post("/import/preview.json")
openlibrary/fastapi/importapi.py:None
Route
lazy_carousel_partial
router.get("/partials/LazyCarousel.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
librarian_route
app.get("/librarian-only")
openlibrary/tests/fastapi/test_auth.py:None
Route
list_editions_json
router.get("/lists/{olid}/editions.json", response_model=ListEditionsModel)
openlibrary/fastapi/lists.py:None
Route
list_editions_json_people
router.get("/people/{username}/lists/{olid}/editions.json", response_model=ListEditionsModel)
openlibrary/fastapi/lists.py:None
Route
list_languages
router.get("/languages.json", response_model=list[Language])
openlibrary/fastapi/languages.py:None
Route
list_seeds_json_public
router.get("/lists/{olid}/seeds.json")
openlibrary/fastapi/lists.py:None
Route
list_seeds_json_user
router.get("/people/{username}/lists/{olid}/seeds.json")
openlibrary/fastapi/lists.py:None
Route
list_subjects_json_public
router.get("/lists/{olid}/subjects.json", response_model=ListSubjectsModel)
openlibrary/fastapi/lists.py:None
Route
list_subjects_json_series
router.get("/series/{olid}/subjects.json", response_model=ListSubjectsModel)
openlibrary/fastapi/lists.py:None
Route
list_subjects_json_user
router.get("/people/{username}/lists/{olid}/subjects.json", response_model=ListSubjectsModel)
openlibrary/fastapi/lists.py:None
Route
list_view_json_public
router.get("/lists/{list_id}.json")
openlibrary/fastapi/lists.py:None
Route
list_view_json_user_lists
router.get("/people/{username}/lists/{list_id}.json")
openlibrary/fastapi/lists.py:None
Route
lists_delete
router.post("/people/{username}/lists/{list_id}/delete.json")
openlibrary/fastapi/lists.py:None
Route
lists_delete_no_prefix
router.post("/lists/{list_id}/delete.json")
openlibrary/fastapi/lists.py:None
Route
lists_json_authors
router.get("/authors/OL{author_id}A/lists.json", response_model=ListsJsonResponse, response_model_exclude_none
openlibrary/fastapi/lists.py:None
Route
lists_json_books
router.get("/books/OL{edition_id}M/lists.json", response_model=ListsJsonResponse, response_model_exclude_none=
openlibrary/fastapi/lists.py:None
Route
lists_json_people
router.get("/people/{username}/lists.json", response_model=ListsJsonResponse, response_model_exclude_none=True
openlibrary/fastapi/lists.py:None
Route
lists_json_post
router.post("/people/{username}/lists.json", response_model=CreateListResponse)
openlibrary/fastapi/lists.py:None
Route
lists_json_subjects
router.get("/subjects/{subject_key:path}/lists.json", response_model=ListsJsonResponse, response_model_exclude
openlibrary/fastapi/lists.py:None
Route
lists_json_works
router.get("/works/OL{work_id}W/lists.json", response_model=ListsJsonResponse, response_model_exclude_none=Tru
openlibrary/fastapi/lists.py:None
Route
login
router.post("/account/login")
openlibrary/fastapi/account.py:None
Route
logout
router.post("/account/logout")
openlibrary/fastapi/account.py:None
Route
merge_authors_json
router.post("/authors/merge.json")
openlibrary/fastapi/merge_authors.py:None
Route
monthly_logins
router.get("/api/monthly_logins.json", response_model=MonthlyLoginsResponse)
openlibrary/fastapi/internal/api.py:None
Route
my_books_dropper_lists_partial
router.get("/partials/MyBooksDropperLists.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
optional_auth_endpoint
router.get("/account/optional.json", tags=["internal"], include_in_schema=SHOW_INTERNAL_IN_SCHEMA)
openlibrary/fastapi/account.py:None
Route
post_bestbook_award
router.post( "/works/OL{work_id}W/awards.json", response_model=BestbookAwardResponse, response_mod
openlibrary/fastapi/internal/api.py:None
Route
post_book_availability
router.post( "/availability/v2", response_model=dict[str, AvailabilityStatusV2], description="Retu
openlibrary/fastapi/internal/api.py:None
Route
post_patron_follows
router.post("/people/{username}/follows.json")
openlibrary/fastapi/internal/api.py:None
Route
post_ratings
router.post("/works/OL{work_id}W/ratings.json")
openlibrary/fastapi/internal/api.py:None
Route
post_work_bookshelves
router.post("/works/OL{work_id}W/bookshelves.json")
openlibrary/fastapi/internal/api.py:None
Route
price_api
router.get( "/prices.json", response_model=PriceResponse, response_model_exclude_none=True, de
openlibrary/fastapi/internal/api.py:None
Route
protected_endpoint
router.get("/account/protected.json", tags=["internal"], include_in_schema=SHOW_INTERNAL_IN_SCHEMA)
openlibrary/fastapi/account.py:None
Route
protected_route
app.get("/protected")
openlibrary/tests/fastapi/test_auth.py:None
Route
public_observations
router.get( "/observations.json", description="Returns anonymized community reviews for a list of work
openlibrary/fastapi/internal/api.py:None
Route
publisher_json
router.get("/publishers/{key:path}.json")
openlibrary/fastapi/publishers.py:None
Route
reading_goal_progress_partial
router.get("/partials/ReadingGoalProgress.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
search_authors_json
router.get("/search/authors.json")
openlibrary/fastapi/search.py:None
Route
search_facets_partial
router.get("/partials/SearchFacets.json", include_in_schema=SHOW_PARTIALS_IN_SCHEMA)
openlibrary/fastapi/partials.py:None
Route
search_inside_json
router.get("/search/inside.json")
openlibrary/fastapi/search.py:None
Route
search_json
router.get("/search.json", tags=["search"], response_model=SearchResponse)
openlibrary/fastapi/search.py:None
Route
search_lists_json
router.get("/search/lists.json")
openlibrary/fastapi/search.py:None
Route
search_subjects_json
router.get("/search/subjects.json")
openlibrary/fastapi/search.py:None
Route
selected_query
computed_field
openlibrary/fastapi/search.py:None
Route
series_editions_json
router.get("/series/{olid}/editions.json", response_model=ListEditionsModel)
openlibrary/fastapi/lists.py:None
Route
series_seeds_json_public
router.get("/series/{olid}/seeds.json")
openlibrary/fastapi/lists.py:None
Route
series_seeds_json_user
router.get("/people/{username}/series/{olid}/seeds.json")
openlibrary/fastapi/lists.py:None
Route
subject_json
router.get("/subjects/{key:path}.json", response_model=None)
openlibrary/fastapi/subjects.py:None
Route
test_bearer_prefix_rejected
mock.patch("openlibrary.plugins.upstream.account.web")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_colon_in_secret_preserved
mock.patch("openlibrary.plugins.upstream.account.web")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_empty_access_raises
mock.patch("openlibrary.plugins.upstream.account.web")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_empty_secret_raises
mock.patch("openlibrary.plugins.upstream.account.web")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_falsy_inputs_return_empty_list
pytest.mark.parametrize( ("input_val", "expected"), [ (None, []), ("",
openlibrary/tests/fastapi/test_models.py:None
Route
test_falsy_value_expires_cookie
mock.patch("openlibrary.plugins.upstream.account.web")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_get
mock.patch("openlibrary.accounts.model.site")
openlibrary/tests/accounts/test_models.py:None
Route
test_invalid_token_redirects_to_create_when_not_logged_in
mock.patch("openlibrary.plugins.upstream.account.accounts")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_invalid_token_redirects_to_my_books_when_logged_in
mock.patch("openlibrary.plugins.upstream.account.accounts")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_isbndb_get_year
pytest.mark.parametrize( ("year", "expected"), [ pytest.param(2000, "2000", id="integer_year")
scripts/tests/test_isbndb.py:None
Route
test_issue_auth_service_5xx_returns_specific_error
mock.patch("openlibrary.plugins.upstream.account.InternetArchiveAccount")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_issue_empty_secret_rejected
mock.patch("openlibrary.plugins.upstream.account.InternetArchiveAccount")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_issue_invalid_keys_rejected
mock.patch("openlibrary.plugins.upstream.account.InternetArchiveAccount")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_issue_missing_auth_header
mock.patch("openlibrary.plugins.upstream.account.InternetArchiveAccount")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_issue_valid_keys_proceeds
mock.patch("openlibrary.plugins.upstream.account.OTP")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_local_dev_returns_503_with_helpful_message
pytest.mark.parametrize( ("endpoint", "helper_path"), [ ("/account/loans.json", "o
openlibrary/tests/fastapi/test_account_loans.py:None
Route
test_login_deletes_preserve_intent_cookie_on_valid_redirect
mock.patch("openlibrary.plugins.upstream.account.audit_accounts")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_make_cache_key
pytest.mark.parametrize( ("isbn_or_asin", "expected_key"), [ ({"isbn_10": [], "isbn_13": ["978
scripts/tests/test_affiliate_server.py:None
Route
test_map_data
pytest.mark.parametrize( ("input_data", "expected_output"), [ ( # Test case 1: Bas
scripts/tests/test_import_open_textbook_library.py:None
Route
test_missing_header_raises
mock.patch("openlibrary.plugins.upstream.account.web")
openlibrary/plugins/upstream/tests/test_account.py:None
Route
test_missing_token_redirects_to_create
mock.patch("openlibrary.plugins.upstream.account.add_flash_message")
openlibrary/plugins/upstream/tests/test_account.py:None
next →
1–100 of 131, ranked by callers