Gutendex website screenshot

Gutendex

Gutendex is a simple, self-hosted JSON-based web API for serving book catalog information from Project Gutenberg, providing structured metadata for over 70,000 free ebooks including titles, authors, subjects, bookshelves, languages, copyright status, media types, downloadable formats, and download counts. The hosted instance at gutendex.com runs the open-source Django project by Gareth B. Johnson under the MIT license.

Gutendex publishes 1 API on the APIs.io network: Books API. Tagged areas include Books, Catalog, Ebooks, Library, and Literature.

The Gutendex catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.

Gutendex’s developer surface includes documentation, pricing, authentication, getting-started guide, tooling, and 14 more developer resources.

50.3/100 developing ▬ flat Agent 37/100 agent ready Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFreeOpen⚡ Free to try
1 APIs 8 Features 6 Use Cases
BooksCatalogEbooksLibraryLiteratureMetadataOpen SourceProject GutenbergPublic APIsPublic Domain

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 50.3/100 · developing
Contract Quality 18.7 / 25
Developer Ergonomics 6.1 / 20
Commercial Clarity 6.3 / 20
Operational Transparency 4.1 / 13
Governance 8.3 / 12
Discoverability 6.9 / 10
Agent readiness — 37/100 · agent ready
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 10 / 10
Idempotency 0 / 9
Stable Error Semantics 0 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/gutendex: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 1

Individual APIs this provider publishes, each with its own machine-readable definition.

Gutendex Books API

Query and retrieve metadata for Project Gutenberg ebooks.

Open Collections 1

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

Gutendex API

OPEN COLLECTION

Pricing Plans 1

Published pricing tiers and plan structures.

Rate Limits 1

Documented rate limits and quota policies.

Gutendex Rate Limits

3 limits

RATE LIMITS

Features 8

Notable capabilities this provider offers.

Free Public API

No API key, no signup, no rate limit documented; gutendex.com is openly available.

70,000+ Ebook Catalog

Mirrors the full Project Gutenberg catalog of free public-domain ebooks.

Rich Filtering

Filter by author birth/death year, copyright status, language, MIME type, IDs, search keywords, and topic.

Multiple Sort Orders

Sort results by popularity (default), ascending ID, or descending ID.

Multi-format Downloads

Each book exposes a Format object mapping MIME types (HTML, EPUB, MOBI, plain text, JPEG) to direct download URLs.

Bookshelves and Subjects

Books are tagged with Library of Congress subject headings and curated Project Gutenberg bookshelves.

Multi-language Support

Books are indexed by two-character ISO language codes; filter by multiple languages at once.

Self-Hostable

MIT-licensed Django app that operators can run on their own infrastructure with nightly Project Gutenberg catalog sync.

Scroll for all 8

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Gutendex Context

12 classes · 12 properties

JSON-LD

Spectral Rules 2

Spectral governance rulesets for linting and validating these APIs.

Gutendex API Rules

5 rules · 4 warnings 1 info

SPECTRAL

Gutendex API Rules

13 rules · 8 errors 4 warnings 1 info

SPECTRAL

JSON Schema 5

Standalone JSON Schema definitions for this provider's data models.

BookList

4 properties

JSON SCHEMA

Book

13 properties

JSON SCHEMA

Error

1 properties

JSON SCHEMA

Format

0 properties

JSON SCHEMA

Person

3 properties

JSON SCHEMA

JSON Structure 5

JSON Structure definitions describing this provider's data shapes.

Gutendex Book List Structure

4 properties

JSON STRUCTURE

Gutendex Book Structure

13 properties

JSON STRUCTURE

Gutendex Error Structure

1 properties

JSON STRUCTURE

Gutendex Format Structure

0 properties

JSON STRUCTURE

Gutendex Person Structure

3 properties

JSON STRUCTURE

Examples 6

Example request and response payloads for these APIs.

Gutendex Book Example

13 fields

EXAMPLE

Gutendex Error Example

1 fields

EXAMPLE

Gutendex Format Example

6 fields

EXAMPLE

Gutendex Get Book Example

13 fields

EXAMPLE

Gutendex Person Example

3 fields

EXAMPLE

Security Posture 1

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Gutendex Domain Security

TLSv1.3

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Gutendex Agentic Access

2 operations

2 operations · 0 acting

AGENTIC

Use Cases 6

What developers build with this provider.

Literature Analytics

Power large-scale analysis of public-domain literature by ingesting the structured Project Gutenberg catalog.

Educational Apps

Build classroom or self-study apps that surface public-domain texts by subject, author, or reading level.

Reading Recommendation Engines

Use the download_count and bookshelf data to recommend popular classics or themed reading lists.

Digital Library Backends

Power library catalog interfaces and ebook reader apps with a clean JSON facade over Project Gutenberg's XML archives.

Natural Language Processing Datasets

Use the catalog to discover bulk text downloads for training language models on public-domain corpora.

Citation and Reference Tools

Power author/title lookup widgets in citation managers and academic writing tools.

Integrations 4

Pre-built integrations with other platforms and tools.

Project Gutenberg

Upstream source. Gutendex nightly-ingests the official Project Gutenberg XML catalog and republishes it as JSON.

Django REST Framework

Built on Django + Django REST Framework. Operators can extend the API with additional viewsets.

Model Context Protocol

Community-maintained MCP servers expose Project Gutenberg / Gutendex to LLM agents (bobbyhouse, vellankis-space, nasimcoderex).

PostgreSQL / SQLite

Default Django storage backends used by self-hosted instances for catalog persistence.

Resources

Get Started 1

Portal, sign-up, and the first successful call

Documentation 3

Reference material describing how the API behaves

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 3

Pagination, idempotency, versioning, errors, and events

Build 4

SDKs, sample code, and the tooling you integrate with

Access & Security 2

Authentication, authorization, and security posture

Operate 1

Status, limits, changes, and where to get help

Commercial 2

Pricing, plans, and the legal terms of use

Company 1

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: gutendex
name: Gutendex
description: Gutendex is a simple, self-hosted JSON-based web API for serving book catalog information from Project Gutenberg,
  providing structured metadata for over 70,000 free ebooks including titles, authors, subjects, bookshelves, languages, copyright
  status, media types, downloadable formats, and download counts. The hosted instance at gutendex.com runs the open-source
  Django project by Gareth B. Johnson under the MIT license.
accessModel:
  pricing: free
  onboarding: open
  trial: false
  try_now: true
  public: true
  label: Free · Open access
  confidence: medium
  source:
  - plans
  generated: '2026-07-22'
  method: derived
image: https://gutendex.com/static/images/gutendex.png
url: https://raw.githubusercontent.com/api-evangelist/gutendex/main/apis.yml
created: '2026-05-28'
modified: '2026-05-29'
specificationVersion: '0.20'
type: Index
access: 3rd-Party
x-type: opensource
x-category: Books
x-source: public-apis/public-apis
x-tier: 3
x-tier-reason: bulk-registered-from-public-apis
tags:
- Books
- Catalog
- Ebooks
- Library
- Literature
- Metadata
- Open Source
- Project Gutenberg
- Public APIs
- Public Domain
apis:
- aid: gutendex:gutendex-books-api
  name: Gutendex Books API
  description: Query and retrieve metadata for Project Gutenberg ebooks.
  humanURL: https://gutendex.com
  baseURL: https://gutendex.com
  tags:
  - Books
  properties:
  - type: OpenAPI
    url: openapi/gutendex-books-api-openapi.yml
  - type: Documentation
    url: https://gutendex.com
  - type: JSONSchema
    url: json-schema/gutendex-book-schema.json
  - type: JSONSchema
    url: json-schema/gutendex-book-list-schema.json
  - type: JSONSchema
    url: json-schema/gutendex-person-schema.json
  - type: JSONSchema
    url: json-schema/gutendex-format-schema.json
  - type: JSONSchema
    url: json-schema/gutendex-error-schema.json
  - type: JSONLD
    url: json-ld/gutendex-context.jsonld
common:
- type: AgenticAccess
  url: agentic-access/gutendex-agentic-access.yml
- type: DomainSecurity
  url: security/gutendex-domain-security.yml
- type: Website
  url: https://gutendex.com
- type: Documentation
  url: https://gutendex.com
- type: OpenAPI
  url: openapi/gutendex-api-openapi.yml
- type: JSONSchema
  url: json-schema/gutendex-book-schema.json
- type: JSONLD
  url: json-ld/gutendex-context.jsonld
- type: GitHubRepository
  url: https://github.com/garethbjohnson/gutendex
- type: PublicAPIsListing
  url: https://github.com/public-apis/public-apis
- type: Plans
  url: plans/gutendex-plans-pricing.yml
- type: Pricing
  url: plans/gutendex-plans-pricing.yml
- type: RateLimits
  url: rate-limits/gutendex-rate-limits.yml
- type: SpectralRules
  url: rules/gutendex-rules.yml
- type: Vocabulary
  url: vocabulary/gutendex-vocabulary.yml
- type: Authentication
  url: https://gutendex.com
  description: No authentication required; the hosted instance is publicly accessible.
- type: GettingStarted
  url: https://github.com/garethbjohnson/gutendex/wiki/Installation-Guide
- type: Tools
  title: Project Gutenberg MCP Server (bobbyhouse)
  url: https://github.com/bobbyhouse/project-gutenberg-mcp
- type: Tools
  title: Project Gutenberg MCP Server (vellankis-space)
  url: https://github.com/vellankis-space/project-gutenberg-mcp-server
- type: Tools
  title: Gutenberg MCP Server (nasimcoderex)
  url: https://github.com/nasimcoderex/gutenberg-mcp-server
- type: Features
  data:
  - name: Free Public API
    description: No API key, no signup, no rate limit documented; gutendex.com is openly available.
  - name: 70,000+ Ebook Catalog
    description: Mirrors the full Project Gutenberg catalog of free public-domain ebooks.
  - name: Rich Filtering
    description: Filter by author birth/death year, copyright status, language, MIME type, IDs, search keywords, and topic.
  - name: Multiple Sort Orders
    description: Sort results by popularity (default), ascending ID, or descending ID.
  - name: Multi-format Downloads
    description: Each book exposes a Format object mapping MIME types (HTML, EPUB, MOBI, plain text, JPEG) to direct download
      URLs.
  - name: Bookshelves and Subjects
    description: Books are tagged with Library of Congress subject headings and curated Project Gutenberg bookshelves.
  - name: Multi-language Support
    description: Books are indexed by two-character ISO language codes; filter by multiple languages at once.
  - name: Self-Hostable
    description: MIT-licensed Django app that operators can run on their own infrastructure with nightly Project Gutenberg
      catalog sync.
- type: UseCases
  data:
  - name: Literature Analytics
    description: Power large-scale analysis of public-domain literature by ingesting the structured Project Gutenberg catalog.
  - name: Educational Apps
    description: Build classroom or self-study apps that surface public-domain texts by subject, author, or reading level.
  - name: Reading Recommendation Engines
    description: Use the download_count and bookshelf data to recommend popular classics or themed reading lists.
  - name: Digital Library Backends
    description: Power library catalog interfaces and ebook reader apps with a clean JSON facade over Project Gutenberg's
      XML archives.
  - name: Natural Language Processing Datasets
    description: Use the catalog to discover bulk text downloads for training language models on public-domain corpora.
  - name: Citation and Reference Tools
    description: Power author/title lookup widgets in citation managers and academic writing tools.
- type: Integrations
  data:
  - name: Project Gutenberg
    description: Upstream source. Gutendex nightly-ingests the official Project Gutenberg XML catalog and republishes it as
      JSON.
  - name: Django REST Framework
    description: Built on Django + Django REST Framework. Operators can extend the API with additional viewsets.
  - name: Model Context Protocol
    description: Community-maintained MCP servers expose Project Gutenberg / Gutendex to LLM agents (bobbyhouse, vellankis-space,
      nasimcoderex).
  - name: PostgreSQL / SQLite
    description: Default Django storage backends used by self-hosted instances for catalog persistence.
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com
  url: https://apievangelist.com