# Worldcat — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search millions of books and library materials worldwide, check availability at libraries near you, and discover reading lists and reviews all in one place. Find exactly what you're looking for across global library collections and get instant insights into where to access it.

**Category:** Education | **Website:** [worldcat.org/](https://worldcat.org/) | **Docs:** [parse.bot/marketplace/c636d925-f1fb-47b8-8c9d-a10b6636d054/worldcat-org-api](https://parse.bot/marketplace/c636d925-f1fb-47b8-8c9d-a10b6636d054/worldcat-org-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_item_details

Get detailed metadata for a specific item by its OCLC number. Returns comprehensive record information including contributors, subjects, edition details, ISBNs, and other formats.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `oclc_number` | string | Yes | OCLC number of the item (from search_items results briefRecords[*].oclcNumber) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/get_item_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"oclc_number":"<string>"}'
```

### get_item_library_availability

Get library holdings and availability for an item near a geographic location. Returns libraries sorted by distance that hold the specified item, along with the total holding count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | number | No | Latitude for location-based search |
| `limit` | integer | No | Number of results to return |
| `lon` | number | No | Longitude for location-based search |
| `oclc_number` | string | Yes | OCLC number of the item (from search_items results briefRecords[*].oclcNumber) |
| `offset` | integer | No | Offset for pagination (1-based) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/get_item_library_availability \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<number>","limit":"<integer>","lon":"<number>","oclc_number":"<string>","offset":"<integer>"}'
```

### get_item_reviews

Get reviews and rating summary for an item by ISBN. Returns a list of individual reviews and a summary with average rating, ratings count, and reviews count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `isbn` | string | Yes | ISBN of the item (from search_items results briefRecords[*].isbn13 or briefRecords[*].isbns[0]) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/get_item_reviews \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"isbn":"<string>"}'
```

### get_list_details

Get details and items of a specific list.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `list_id` | string | Yes | ID of the list |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/get_list_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"list_id":"<string>"}'
```

### get_search_suggestions

Get autocomplete search suggestions for a partial query. Returns up to 8 suggested search terms based on the WorldCat catalog index.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Partial search term to get suggestions for |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/get_search_suggestions \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

### search_items

Full-text search across the WorldCat catalog. Returns paginated results sorted by relevance. Supports filtering by author, item type, and publication date range. Requires Cloudflare Turnstile verification which is handled automatically.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `author` | string | No | Filter by author name |
| `datePublished` | string | No | Filter by publication year range in format YYYY-YYYY (e.g. 2020-2024) |
| `itemType` | string | No | Filter by item type. Accepted values include: Book, PrintBook, Digital, ArtChap, Archv, AudioBook, CompFile, Image, IntMM, Jrnl, Kit, Map, Music, MsscrptLang, News, Object, Score, Serial, Toy, Video, Vis, Web |
| `limit` | integer | No | Number of results to return per page |
| `offset` | integer | No | Offset for pagination (1-based) |
| `query` | string | Yes | Search keyword or phrase |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/search_items \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"author":"<string>","datePublished":"<string>","itemType":"<string>","limit":"<integer>","offset":"<integer>","query":"<string>"}'
```

### search_libraries

Search for libraries near a geographic location. Returns libraries sorted by distance with contact and catalog information. Does not filter by a specific item; returns all WorldCat member libraries in the area.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `lat` | number | Yes | Latitude of the search location |
| `limit` | integer | No | Maximum number of libraries to return |
| `lon` | number | Yes | Longitude of the search location |
| `offset` | integer | No | Pagination offset (1-based) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/search_libraries \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"lat":"<number>","limit":"<integer>","lon":"<number>","offset":"<integer>"}'
```

### search_lists

Search for public lists on WorldCat.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query for lists |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-worldcat-org-api-c636d925/search_lists \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
