BYTETOOLS

Wolne Lektury API

Free Wolne Lektury API with no key: thousands of Polish public domain books with full texts, audiobooks, covers and literary epoch metadata. Tested example included.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the Wolne Lektury API?

The Wolne Lektury API is a free, key-free API for Poland's largest public domain digital library. It provides thousands of Polish-language literary works — including most of the national school curriculum — with full texts in multiple formats, audiobooks, cover art and metadata on author, genre and literary epoch.

Wolne Lektury ("Free Readings") is run by the Modern Poland Foundation and occupies a specific and important niche: it holds essentially the entire Polish school reading list as legally free, properly digitised texts. Where Project Gutenberg's Polish holdings are thin, this is comprehensive.

The metadata reflects how Polish literature is actually taught, and that is what makes the API distinctive. Every book carries an `epoch` — Romantyzm, Pozytywizm, Młoda Polska — and a `kind` (Epika, Liryka, Dramat), which are the categories a Polish curriculum is organised around. Texts are available as HTML, plain text, PDF, EPUB, MOBI and FB2, and a good number have recorded audiobooks. The interface is Polish-language throughout, including field values.

Quick facts

Base URL
https://wolnelektury.pl/api
Authentication
No API key or account. Texts are public domain or freely licensed; the foundation asks for attribution.
Rate limit
No published limit. The full book list is a large response, so fetch it once and cache.
Pricing
Free. Public domain and CC-licensed content.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Wolne Lektury API

Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.

1. List every book in the Wolne Lektury library

GET https://wolnelektury.pl/api/books/?format=json

curl
curl 'https://wolnelektury.pl/api/books/?format=json'
JavaScript (fetch)
const res = await fetch("https://wolnelektury.pl/api/books/?format=json");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://wolnelektury.pl/api/books/?format=json", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
[
  {
    "kind": "Epika",
    "full_sort_key": "verne jules gabriel$20 000 mil podmorskiej z~1eglugi$2848",
    "title": "20 000 mil podmorskiej żeglugi",
    "url": "https://wolnelektury.pl/katalog/lektura/20-000-mil-podmorskiej-zeglugi/",
    "cover_color": "#961060",
    "author": "Jules Gabriel Verne",
    "cover": "book/cover/20-000-mil-podmorskiej-zeglugi.jpg",
    "epoch": "Pozytywizm",
    "href": "https://wolnelektury.pl/api/books/20-000-mil-podmorskiej-zeglugi/",
    "has_audio": true,
    "genre": "powieść przygodowa",
    "simple_thumb": "https://wolnelektury.pl/media/book/cover_api_thumb/20-000-mil-podmorskiej-zeglugi_8hbNdm0.jpg",
    "slug": "20-000-mil-podmorskiej-zeglugi",
    "cover_thumb": "book/cover_thumb/20-000-mil-podmorskiej-zeglugi_XTwVgTB.jpg",
    "liked": null
  },
  {
    "kind": "Epika",
    "full_sort_key": "krasicki ignacy$abuzei i tair$1239",
    "title": "Abuzei i Tair",
    "url": "https://wolnelektury.pl/katalog/lektura/abuzei-i-tair/",
    "cover_color": "#f2802e",
    "author": "Ignacy Krasicki",
    "cover": "book/cover/abuzei-i-tair.jpg",
    "epoch": "Oświecenie",
    "href": "https://wolnelektury.pl/api/books/abuzei-i-tair/",
    "has_audio": true,
    "genre": "Bajka, Przypowieść",
    "simple_thumb": "https://wolnelektury.pl/media/book/cover_api_thumb/abuzei-i-tair_qbXUuyk.jpg",
    "slug": "abuzei-i-tair",
    "cover_thumb": "book/cover_thumb/abuzei-i-tair_fgysK20.jpg",
    "liked": null
  },
  {
    "kind": "Liryka",
    "full_sort_key": "dere~0me tristan$ ach rzucic~0 sieci zdarte $2675",
    "title": "[Ach! rzucić sieci zdart

Parameters

ParameterTypeRequiredDescription
formatqueryRequiredResponse format. Pass `json` explicitly — the API can also render HTML. json
(author)path segmentOptionalThe `/authors/{slug}/books/` path filters to one author. adam-mickiewicz
(epoch)path segmentOptionalThe `/epochs/{slug}/books/` path filters to a literary period. romantyzm
(kind)path segmentOptionalThe `/kinds/{slug}/books/` path filters by literary kind: `epika`, `liryka` or `dramat`. liryka
(genre)path segmentOptionalThe `/genres/{slug}/books/` path filters by genre, such as `powiesc`. powiesc

Response fields

titlestring
Book title in Polish, with full diacritics — make sure your pipeline is UTF-8 clean end to end.
authorstring
Author's full name.
kindstring
Literary kind in Polish: `Epika` (narrative), `Liryka` (poetry) or `Dramat` (drama).
epochstring
Literary period, such as `Romantyzm`, `Pozytywizm` or `Młoda Polska` — the axis Polish literature is taught along.
hrefstring
API URL for the book's detail record, which carries the download links for every text format.
urlstring
Human-facing page on wolnelektury.pl.
cover / cover_colorstring
Cover image path and the accent colour used for it, so generated listings can match the site's styling.
full_sort_keystring
Internal sort key used for correct Polish alphabetical ordering, which does not match a naive byte sort.

What you can build with the Wolne Lektury API

  • Build a Polish literature reading app or school study tool
  • Fetch public domain Polish texts for corpus linguistics or NLP
  • Create an audiobook player from the library's recorded readings
  • Browse Polish literature by epoch for教学 or research purposes

Common errors and how to fix them

HTML instead of JSON

The `format` parameter was omitted.

Fix: Always pass `format=json`; the same paths render an HTML page otherwise.

Very large response

The unfiltered book list covers the whole library.

Fix: Filter by author, epoch, kind or genre using the dedicated paths, or fetch once and cache.

Mangled Polish characters

An encoding problem on your side, not the API's.

Fix: Responses are UTF-8. Ensure your HTTP client, database and templates all agree on it — Polish diacritics break loudly when they do not.

Wolne Lektury API — frequently asked questions

Is the Wolne Lektury API free?

Yes, free with no API key. The library is run by the Modern Poland Foundation and its texts are public domain or freely licensed; attribution is requested.

What formats are the books available in?

HTML, plain text, PDF, EPUB, MOBI and FB2, with audiobook recordings for a substantial portion of the collection. The download links live on each book's detail record, reachable via the `href` field.

What do the epoch and kind fields mean?

They are the categories Polish literature is taught by. `epoch` is the literary period — Romantyzm, Pozytywizm, Młoda Polska — and `kind` is the literary form: Epika (narrative), Liryka (poetry) or Dramat. Both have dedicated filter paths.

Is the API available in English?

No. Field values, slugs and metadata are Polish throughout, which is appropriate given the collection. The field names themselves are English, so the structure is readable even if the content is not.

Tools that pair with this API

Wolne Lektury is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.